Skip to content

Cluster Configuration

Configuring Two-node Active-Passive Cluster

Prerequisites

  1. Two HyWorks Controllers must be installed in deployment type as Two-node Active-Passive Cluster

    1. On two different windows servers with same configurations, for example: 2 Windows Server 2016 servers with a minimum 4 GB RAM and 4 vCPUs

    2. The same version of the HyWorks Controller & SQL Server must be installed on both the servers.

      Note

      • High availability is not supported for HyWorks Controllers installed with embedded database
    3. The SQL Server must be configured to use a static port and to allow remote connections.

    4. Microsoft Synchronization framework 2.1 must be installed on both the HyWorks Controllers

      • Latest HyWorks Controller setup is having integrated setup of MS Sync Framework (For English locale) and need not to be installed separately.
  2. Time properties should be the same across the two HyWorks Controllers and database servers (if configured on separate servers). Time properties like Date, Time, TimeZone, format and the NTP server, if any.

  3. Both HyWorks Controllers must be able to connect to each other and be able to resolve the hostname of another server

Configuration

  1. Assumption: Two HyWorks Controllers (hySrv1 and hySrv2) are installed using the SQL Server

  2. Access the HyWorks Controller Management Console of the HyWorks Controller to be configured as the Primary, say hySrv1

  3. Log in with super-admin credentials

  4. Go to Settings > System > Controllers

  5. In the HyWorks Controller screen, information about the current HyWorks Controller server will be displayed:

    1. HyWorks Controller: Displays information about the Controller using columns "Name", "IP Address", "Version", "Mode", "Reachable", "Node Type" and "Actions"

    2. Database Information: Details of the HyWorks database server configurations, displaying the Controller server host name, database name, database type and database location.

  6. Click Add

  7. In the Add HyWorks Controller enter the Host address or IP address with the port of the second HyWorks Controller.

    • It is the port on which the HyWorks Controller Service is running. By default, the HyWorks Controller Service is configured on port 38866.
  8. Click Test Connection to verify the availability of the second HyWorks Controller.

    1. If the server is reachable then the Save button will be enabled

    2. If the server is unreachable then the Save button will remain disabled, which means the second HyWorks Controller must be available for being configured in the HyWorks Controller cluster.

  9. Click Save

  10. Activate the cluster licenses on the HyWorks Controllers to maintain same capabilities on both the servers to serve the same number of devices or sessions. Refer to the Cluster License section for detailed instructions for activating cluster license.

The HyWorks Controller cluster should be successfully configured. For details on how this HyWorks Controller cluster functions to maintain high availability, refer HyWorks Controller Cluster Mechanism.

Configure Multi-node Active-Active Cluster with HyWorks Managed Database High-availability

Configuration Process:

  1. The process is also defined in HyWorks Controller Cluster Installation.

Licensing: For appropriate functioning of HyWorks Controller cluster, all nodes must have appropriate license configurations.

  1. For activating license

    1. Management Nodes: Follow the steps provided in License Activation on Management Nodes

    2. Session (Broker) Nodes: License Activation on Session Nodes

Configure Multi-node Active-Active Cluster with SQL Managed Database High-availability

Configuration Process:

  1. The process is also defined in HyWorks Controller Cluster Installation.

Licensing: For appropriate functioning of HyWorks Controller cluster, all nodes must have appropriate license configurations.

  1. For activating license

    1. Management Nodes: Follow the steps provided in License Activation on Management Nodes

    2. Session (Broker) Nodes: License Activation on Session Nodes

Mandatory Configurations for Multi-node Deployments

As it is clear that in case of HyWorks multi-node deployments, an additional load-balancer is needed to distribute client and configured session server's requests to multiple session nodes. However during communication with HyWorks clients or session host servers, controller shares its address and in multi-node deployments, it must be the external load balancer IP. Use the following configurations to update the load balancer IP in HyWorks:

  1. Go to HyWorks Management Console > Settings > General > Advance Config
  2. Locate the flag Client VIP for Cluster, click on Edit and set as load-balancer IP
  3. Locate the flag Session Host VIP for Cluster, click on Edit and set as load-balancer IP
  4. Save the settings and click on Update button to push the changes.

Health Check APIs for Load Balancers

The external load-balancers must not forward the client or session host communications to session nodes which are in failed condition and for that, HyWorks Controller Health Probe APIs can be used. Following two health probe APIs are exposed for status check:

  • https://localhost:38866/ClientController.svc/rest/health

    • Response:

    {"ControllerSettingInfo":null,"ResponseCode":0,"ResponseMessage":"Success"}

  • https://localhost:38866/AppServerController.svc/rest/health

    • Response:

    {"ControllerSettingInfo":null,"ResponseCode":0,"ResponseMessage":"Success"}

More Advance Configurations

Advance configurations available on the HyWorks Controller Management Console - Settings > General > Advance Settings

  • Clustering: All High Availability related configurations are available in the Clustering Group.