Clustering the IoT Serever
Entgra IoT Deployment Pattern
The following diagram illustrates a typical deployment pattern for the Entgra IoT Server.
As indicated in the above diagram, when clustering the IoT Server, there is worker manager separation. In a standard WSO2 product cluster, worker and manager separation is derived from deployment synchronization. However, this differs from standard WSO2 Carbon worker manager separation.
Entgra IoT Server includes an admin console that can be used by any user with administrative privileges. These users can perform operations on enrolled devices and the devices can retrieve those actions by requesting for the pending operations. This is done by either walking the device through a push notification or configuring the device to poll at a pre-configured frequency.
Normally administrative tasks should be run from a manager node.
There are two major deployment patterns for the manager node. One could be running the manager node in the private network due to security constraints and other is allowing end users to access the management node so that they can control and view their devices.
A manager node is used to run background tasks that are necessary to update device information such as location and the list of installed applications. For more information on creating different profiles in the IoT Server, see Product Profiles.
Let’s take a look at the steps to cluster the IoT Server:
- Configuring the Load Balancer
- Setting Up the Databases for Clustering
- Mounting the Registry
- Configuring the Key Manager Node
- Configuring the Manager Node
- Configuring the Worker Nodes
- Clustering the iOS Server
Before you begin, you need the following to cluster the IoT Server:
Virtual machines used in a high availability cluster
The following is a list of virtual machines (VMs) that are used in a high availability cluster and their details.
Open ports 80 and 443 are from the NGINX server.
Android The ports to open are 5228, 5229 and 5230. GCM typically uses only 5228, but it sometimes uses 5229 and 5230. GCM does not provide specific IPs, so it is recommended to allow the firewall to accept outgoing connections to all IP addresses contained in the IP blocks listed in Google’s ASN of 15169. iOS
The APNS servers use load balancing. The devices will not always connect to the same public IP address for notifications. The entire 17.0.0.0/8 address block is assigned to Apple, so it is best to allow this range in the firewall settings. |