Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Throughout this guide, you have configured iots310.wso2.com and gateway.iots310.wso2.com as the worker node.

Tip
titleBefore 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.

  1. Configure the HostName and  MgtHostName properties in the <IOTS_HOME>/conf/carbon.xml file as shown below.

    Code Block
    <HostName>iots310.wso2.com</HostName>
    <MgtHostName>mgt.iots310.wso2.com</MgtHostName>
    Note

    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.

  2. Configure the <IOTS_HOME>/bin/iot-server.sh file as shown below:

    Code Block
    -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" \
  3. Disable task monitoring in the android.xml and windows.xml files that are in the <IOTS_HOME>/repository/deployment/server/devicetypes directory as shown below:

    Code Block
    <TaskConfiguration>
        <Enable>false</Enable>
        ……...
    </TaskConfiguration>
  4. Enable API publishing in both the worker nodes by configuring the <IOTS_HOME>/ conf/etc/webapp-publisher-config.xml file as shown below:

    Info
    titleWhy 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.

    Code Block
    <PublishAPI>true</PublishAPI>
    <EnabledUpdateApi>true</EnabledUpdateApi>
  5.  Start the core profile of the WSO2 IoT Server.

    Code Block
    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.

    Note

    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.