Throughout this guide, you have configured iots310.wso2.com
and gateway.iots310.wso2.com
as the worker node.
Before you begin
- Mount the registry as explained here.
- Configure the following databases for the Key Manager in the
<IOTS_HOME>/conf/datasources/master-datasources.xml
file.
For more information, see Setting Up the Databases for Clustering.- Registry database
- User manager database
- APIM database
- App manager database and include the social and storage database schemas to the same database.
- CDM database and include the certificate management, android, iOS and windows database schemas to the same database.
Let's start configuring the Key Manager node.
Configure the
HostName
andMgtHostName
properties in the<IOTS_HOME>/conf/carbon.xml
file as shown below.<HostName>iots310.wso2.com</HostName> <MgtHostName>mgt.iots310.wso2.com</MgtHostName>
Make sure to have the
Offset
property configured to zero. If it is set to a value other than zero, you need to update the NGINX configuration based on the port offset.Configure the
<IOTS_HOME>/bin/iot-server.sh
file as shown below:-Diot.manager.host="mgt.iots310.wso2.com" \ -Diot.manager.https.port="443" \ -Diot.core.host="iots310.wso2.com" \ -Diot.core.https.port="443" \ -Diot.keymanager.host="keymgt.iots310.wso2.com" \ -Diot.keymanager.https.port="443" \ -Diot.gateway.host="gateway.iots310.wso2.com" \ -Diot.gateway.https.port="443" \ -Diot.gateway.http.port="80" \ -Diot.gateway.carbon.https.port="443" \ -Diot.gateway.carbon.http.port="80" \ -Diot.apimpublisher.host="gateway.iots310.wso2.com" \ -Diot.apimpublisher.https.port="443" \ -Diot.apimstore.host="gateway.iots310.wso2.com" \ -Diot.apimstore.https.port="443" \
Disable task monitoring in the
android.xml
andwindows.xml
files that are in the<IOTS_HOME>/repository/deployment/server/devicetypes
directory as shown below:<TaskConfiguration> <Enable>false</Enable> ……... </TaskConfiguration>
Enable API publishing in both the worker nodes by configuring the
<IOTS_HOME>/
conf/etc/webapp-publisher-config.xml
file as shown below:Why is this needed?
This is to publish the synapse configs to the
<IOTS_HOME>/repository/deployment/server/synapse-configs/default/api
directory. The configs are published when the server starts up. Therefore, disable this setting after the server finishes starting up.<PublishAPI>true</PublishAPI> <EnabledUpdateApi>true</EnabledUpdateApi>
Start the core profile of the WSO2 IoT Server.
cd <IOTS_HOME>/bin ./iot-server.sh
What's next?
Now you are done clustering WSO2 IoT Server. You can now start enrolling Android, Windows and IoT devices with WSO2 IoT Server and manage them.
Use the Gateway node (
gateway.iots310.wso2.com
) to start the Android device enrolling process.- Let's take a look at how to cluster WSO2 IoT Server to enroll iOS devices. See, Clustering the iOS server.