Configuring Load Balancing for Front-End Servers

If you have a running Silk Central instance and experience issues with insufficient memory that cannot be further increased, you can set up additional front-end servers to distribute user sessions and consumed memory across multiple machines.

Note: When using load-balancing architectures, multiple front-end servers will still be used through a single NGINX proxy and will still access the same application server and database. There is no reduction of load from that perspective.

To set up and configure additional front-end servers for load-balancing:

  1. If you have installed Silk Central on a server, enable access to the application server on this server from any host:
    1. Stop the application server on this server.
    2. In the installation directory of the Silk Central instance, navigate to the configuration file conf\SccAppServerBootConf.xml.
    3. Remove the entry <RegistryHost>127.0.0.1 </RegistryHost> and save the configuration file.
    4. Re-start the application server.
  2. Use the Silk Central setup to install Silk Central on all machines that you want to add as front-end servers for load-balancing.
  3. When setup is completed, navigate to the Instance Administration (http://localhost:19100) on the machine.
  4. As you just need a front-end server, stop the application server and the chart server of the instance you want to use for load balancing.
  5. Click Settings to open the Settings dialog of this instance. On the Servers tab, select the front-end server and copy the front-end server port.
  6. Switch to the machine that is used as the application server and navigate to the Instance Administration (http://localhost:19100).
  7. Click Settings to open the Settings dialog of your performance lacking instance and activate the maintenance mode.
  8. On the file system, open the NGINX custom properties file (C:\ProgramData\SilkCentral\InstanceAdministration\nginx\conf\nginxCustom.properties) and add the URL of the front-end server on Server B (<SERVER_NAME>:<PORT>), using the copied front-end server port. Notation: frontendservers.<INSTANCE_NAME>=<FE_URL1>{,<FE_URL2>,...,<FE_URLX>}

    For example: frontendservers.silk=localhost:19110,silkserver2:19320

    Attention: Because of NGINX restrictions it is not possible to use port 19120 of a front-end server. Always get the port from the settings dialog as described in step 4.
  9. Go back to the Instance Administration page and click Settings to open the Settings dialog of your performance lacking instance. On the Servers tab, select the application server and copy the application server port.
  10. To establish the connection between the front-end server and the application server, open a web browser and navigate directly to the machine that hosts the front-end server by using http://<Server B>:<front-end server port>. Make sure you use the port from the settings dialog, not 19120!
  11. On the application server connection page, enter the Host or IP-address and the copied application server port of the machine that hosts the application server.
  12. Go back to the Instance Administration page and deactivate the maintenance mode. This will update the NGINX configuration.

When your users now access the instance using the same URL as before, they are automatically balanced between the front-end server on the initial machine, which also hosts the application server, and the new front-end server machine.