Configuring the Worker Nodes
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 worker nodes.
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="mgt.iots310.wso2.com" \ -Diot.apimpublisher.https.port="443" \ -Diot.apimstore.host="mgt.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 enrolling Android devices.- Let's take a look at how to cluster WSO2 IoT Server to enroll iOS devices. See, Clustering the iOS server.