This blogpost is based on a article that i wrote for the Citrix User Group Community: https://www.mycugc.org/blog/xenmobile-clustering
Before XenMobile 10 Mobile Device Management software was installed on a Windows Server. Mobile Application Management software was based on a Linux appliance also called the App Controller. Since XenMobile 10 there is no separate software for Mobile Device Management anymore. This software is updated and migrated to the same linux appliance as with XenMobile 9. Both components were redeveloped but the concept is the same.
Sizing XenMobile 10
When setting up your XenMobile 10 environment you want to know how to properly size your environment. A single XenMobile 10 appliance (XenMobile Server) can easly handle 1000 connections
This means that you only need a second appliance only if you have more than 7500 concurrent devices…… However, ?
XenMobile 10 = N + 1
Keep in mind when deploying a single XenMobile 10 Server you directly create a Single Point Of Failure (SPOF). If this server becomes unavailable for whatever reason devices can’t be managed and mobile applications can’t be used. Keep in mind hypervisor HA is no excuse for having a single server, if the server configuration will get corrupted you’ve got a hypervisor based HA corrupted server. 😉
Because XenMobile 10 stores ALL information and configuration into a Microsoft SQL database (PostgreSQL is only used for test environments) each XenMobile Server behave more like a worker rather than a full server. This means that you can scale up as many XenMobile Servers as you want.
Now, most likely you don’t need a second XenMobile Server for performance reasons. However, for take away the SPOF on this level it is recommended to always create a XenMobile 10 cluster. Especially because it is pretty simple to create a XenMobile 10 cluster.
How to create a XenMobile 10 cluster
You can start with configuring 2 single nodes. Run through the first time run wizards on both appliances and enable the cluster. There is, however, a much more easy way to create a cluster:
- Setup the first XenMobile 10 server (See: Getting Started with XenMobile 10)
- Run through the first time use wizards, make sure you choose a remote Microsoft SQL database
- Enable clustering in the cluster menu, via CLI
- Enable HTTP (TCP 80) in the XenMobile Server firewall, via CLI
- Shutdown the XenMobile Server
- Make a clone of your first XenMobile Server
- Startup the second (cloned) machine, DON’T start the first XenMobile Server
- Change the IP Address on the second XenMobile Server, via CLI
- Reboot the second XenMobile Server
- Wait till the second XenMobile Server is completely booted and start the first XenMobile server
- Change your NetScaler configuration to add the second XenMobile server, via the wizard or manually
- This is how you create a high available, clustered XenMobile 10 environment
What about NetScaler?
OK, now that we have resolved the XenMobile 10 SPOF we also need to check our NetScaler configuration. Most likely if you already have a NetScaler MPX in place this configuration is already high available via a additional appliance.
In case of running a single NetScaler VPX configuration, think about what we said: hypervisor HA is no excuse for having a single server, if the server configuration will get corrupted you’ve got a hypervisor based HA corrupted server.
So you’d better buy a second NetScaler VPX too 🙂
Create a XenMobile 10 cluster in detail
- Setup the first XenMobile 10 server (See: Getting Started with XenMobile 10)
- Run through the first time use wizards, make sure you choose a remote Microsoft SQL database
- Enable clustering in the cluster menu, via CLI
- Enable HTTP (TCP 80) in the XenMobile Server firewall, via CLI
Optional: add both XenMobile Server IP Adresses to limit TCP 80 connectivity - Shutdown the XenMobile Server
- Make a clone of your first XenMobile Server
- Startup the second (cloned) machine, DON’T start the first XenMobile Server
- Change the IP Address on the second XenMobile Server, via CLI
- Reboot the second XenMobile Server
- Wait till the second XenMobile Server is completely booted and start the first XenMobile server
- Change your NetScaler configuration to add the second XenMobile server, via the wizard or manually
- Verify if the XenMobile Cluster is configured successfully
Conclusion
Although you don’t need a second XenMobile Server for the amount of concurrent device, it’s recommend to create a cluster for high availability. In this blogpost i showed you how you can easly create a high available XenMobile 10 environment. Keep in mind to also make NetScaler (Gateway) high available.