Wyn Enterprise Administration Guide

Wyn Enterprise: Deploying in a Distributed Deployment

Wyn Enterprise supports cluster (distributed) deployment which helps achieve better operating performance. In this concept, the primary node refers to the main node where the complete Wyn Enterprise is installed. The secondary node refers to a node with one or more worker modules or services installed.

Have a look at the below diagram that illustrates the architecture of Wyn Enterprise:

Architecture of Wyn Enterprise

For more information about each service available in Wyn Enterprise, see the below table.

Services in Wyn Enterprise

In this article, you will learn to deploy Wyn Enterprise in a distributed environment. Before going through the following sections, you need to configure the global settings for the primary node, add a secondary node, and then install the secondary node through the Node Management interface.

This article also explains customer scenarios and troubleshooting steps for common deployment issues. For more details, have a look at the below sections.

Deploy Scheduler Service

By default, the Scheduler Service and the Server are installed on the same machine. Follow the below steps to deploy the Scheduler service separately.

Caution: Deploy only one Scheduler Service even in the distributed environment, as deploying multiple Scheduler Service can cause serious issues on tasks.

  1. Select the secondary node on which you want to install the Scheduler Service.
  2. Copy the /opt/Wyn/SchedulerService folder from the primary node to the /opt/Wyn/ folder in the secondary node.
  3. Modify the /opt/Wyn/Monitor/conf/Wyn.conf in the secondary node, as shown.

    Deploy Scheduler Service

  4. Restart the Wyn service in the secondary node using the following command.

    sudo systemctl restart wyn
    
  5. Modify the /opt/Wyn/Monitor/conf/Wyn.conf file in the primary node as follows.

    Updated conf file

  6. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    

Deploy AnalysisDB Primary Node Service

By default, the AnalysisDB Service, AnalysisDB Primary Node Service, and Server are installed on the same machine.

  1. Select the secondary node on which you want to install the AnalysisDB Primary Node Service.
  2. Copy the /opt/Wyn/AnalysisDBPrimaryNode folder from the primary node to the /opt/Wyn/ folder in the secondary node.
  3. Modify the /opt/Wyn/Monitor/conf/Wyn.conf file in the secondary node as follows.

    Modify the conf file for deploying AnalysisDB Primary Node Service separately

  4. Restart the Wyn service in the secondary node using the following command.

    sudo systemctl restart wyn
    
  5. Modify the /opt/Wyn/Monitor/conf/Wyn.conf file in the primary node as follows.

    Modify the conf file for deploying AnalysisDB Primary Node Service separately

  6. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    

Deploy AnalysisDB Service

By default, the AnalysisDB Service, AnalysisDB Primary Node Service, and Server are installed on the same machine.

  1. Select the secondary node on which you want to install the AnalysisDB Service.
  2. Copy the /opt/Wyn/AnalysisDBService folder from the primary node to the /opt/Wyn/ folder in the secondary node.
  3. Install MonetDB in the secondary node.

    For Linux:

    Note: Choose the corresponding version based on the operating system, and follow the steps mentioned in the documentation.

    MonetDB installation

    For Windows:

    Copy the /opt/Wyn/MonetDB folder from the primary node to /opt/Wyn/ folder in the secondary node.

  4. Modify the /opt/Wyn/Monitor/conf/Wyn.conf file in the secondary node.

    Deploy AnalysisDB Service separately

  5. Restart the Wyn service in the secondary node using the following command.

    sudo systemctl restart wyn
    
  6. Modify the /opt/Wyn/Monitor/conf/Wyn.conf file in the primary node.

    Deploy AnalysisDB Service separately

  7. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    

Deploy Server

Enable multiple servers and deploy Servers remotely to enhance load balancing capabilities.

Note: In multiple servers mode, the servers use the same data store.

Prerequisites

  • Get the distributed license from the Sales team.
  • Install Redis manually on any accessible machine to record the internal state and distributed cache.

    Note:
    1. The binding IP address for Redis should be specific, instead of localhost or 127.0.0.1. You can modify the configuration in Redis.conf file.
    2. Use Redis version 5.0 or newer.

Steps

  1. Modify the configuration settings to enable multiple servers as described in this section.
  2. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    
  3. Register the distributed license through the License page on the Admin Portal.
  4. Navigate to the Node Management page, and add a secondary node.
  5. Deploy the Server remotely using these steps.
  6. Install and configure Nginx as described in this section.
    After enabling multiple servers and deploying the Server remotely, you need to install and configure Nginx to support multiple-servers load balancing access.
  7. Visit Wyn Enterprise via Nginx at http://10.32.5.154:8089.
  8. Modify the identity server URL to the Nginx URL i.e. http://10.32.5.154:8089 in the global settings of the Node Management page.

    Settings defined in the Node Management page of the Admin portal

    Tip: On restarting Wyn Enterprise, if you are unable to visit Wyn Enterprise at http://10.32.5.154:8089, please visit http://10.32.5.154:8089/logout to re-login.

Modify Configuration Settings to Enable Multiple Servers

For external Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service are deployed separately on other machines using the steps described in the Deploy Scheduler Service, Deploy AnalysisDB Primary Node Service, and Deploy AnalysisDB Service sections.

Modify Configuration Settings to Enable Multiple Servers

For embedded Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service are deployed on the same machine as the primary node.

Modify Configuration Settings to Enable Multiple Servers

Deploy Server

  1. On the Admin Portal, navigate to the System Management > Node Management.
  2. Select the node on which you want to install Server.
  3. Click Install as shown.

    Deploy Server

  4. Once the installation is successful, click Start.

    Deploy Server

Install and Configure Nginx

  1. Install Nginx using the steps explained in this article.
  2. Then, configure Nginx.
    Below is an example configuration.

    Note: The Nginx configuration for Wyn Enterprise should support WebSocket.

    Install and Configure Nginx

Deploy Cot Worker

The section describes the steps to deploy the Cot Worker remotely.

Steps

  1. Modify the configuration settings related to the Cot Worker in the primary node as described in this section.
  2. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    
  3. On the Admin Portal, navigate to the System Management > Node Management.
  4. Select the node on which you want to install Cot Worker.
  5. Click Install as shown, and wait for a few minutes to complete the installation.

    Deploy Cot Worker

For external Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node, and AnalysisDB Service are deployed separately on other machines using the steps described in the Deploy Scheduler Service, Deploy AnalysisDB Primary Node Service, and Deploy AnalysisDB Service sections.

Modify Configuration Settings related to Cot Worker in Primary Node

For embedded Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service are deployed on the same machine as the primary node.

Modify Configuration Settings to Enable Multiple Servers

Deploy Dashboard Worker

The section describes the steps to deploy the Dashboard Worker remotely.

Steps

  1. Modify the configuration settings related to the Dashboard Worker in the primary node as described in this section.
  2. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    
  3. On the Admin Portal, navigate to the System Management > Node Management.
  4. Select the node on which you want to install Dashboard Worker.
  5. Click Install as shown, and wait for a few minutes to complete the installation.

    Deploy Dashboard Worker

For external Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service are deployed separately on other machines using the steps described in the Deploy Scheduler Service, Deploy AnalysisDB Primary Node Service, and Deploy AnalysisDB Service sections.

Modify Configuration Settings related to Dashboard Worker in Primary Node

For embedded Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service are deployed on the same machine as the primary node.

Modify Configuration Settings related to Dashboard Worker in Primary Node

Deploy Reporting Worker

The section describes the steps to deploy the Reporting Worker remotely.

  1. Modify the configuration settings related to the Reporting Worker in the primary node as described in this section.
  2. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    
  3. On the Admin Portal, navigate to the System Management > Node Management.
  4. Select the node on which you want to install Reporting Worker.
  5. Click Install as shown, and wait for a few minutes to complete the installation.

    Deploy Reporting Worker

For external Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service are deployed separately on other machines using the steps described in the Deploy Scheduler Service, Deploy AnalysisDB Primary Node Service, and Deploy AnalysisDB Service sections.

Modify Configuration Settings related to Reporting Worker in Primary Node

For embedded Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service:

In this case, the Scheduler Service, AnalysisDB Primary Node Service, and AnalysisDB Service are deployed on the same machine as the primary node.

Modify Configuration Settings related to Reporting Worker in Primary Node

Customer Scenarios

Scenario 1: Deploy Backup Server

In release 5.1, the customer can deploy multiple servers as backup servers.

Note: In multiple servers mode, the servers use the same data store.

Prerequisites

After meeting the above prerequisites, please refer to the Deploy Server section for more details on enabling and deploying multiple servers. You can choose the server on any secondary node as your backup server, and then shut down the backup server and remove the route from the Nginx configuration.

Note: On enabling the backup server when the server on the primary node is down, a few of the administrator functions won't work normally (like System Configuration, Node Management, etc). However, once the primary node is restored, these administrator functions will start working properly.

Deploy Datasource Service and MemoryDB Service

By default, the Datasource Service, MemoryDB Service, and Server are installed on the same machine.

In some customer scenarios, for better availability and stability, you need to deploy the Datasource Service and MemoryDB Service to a separate machine. However, in general, it is not recommended to deploy the Datasource Service and MemoryDB Service separately on different machines.

  1. Select the secondary node on which you want to install the Datasource Service and MemoryDB Service.
  2. Copy the /opt/Wyn/jre, /opt/Wyn/DatasourceService, and /opt/Wyn/MemoryDBService folders from the primary node to the secondary node.
  3. Modify the /opt/Wyn/Monitor/conf/Wyn.conf file in the secondary node, as shown.

    Note: When you enable the Nginx URL, the Server Url is the Nginx URL. Otherwise, the Server URL is the primary node IP address.

    Modify the conf file in the secondary node

  4. Restart the Wyn service in the secondary node using the following command.

    sudo systemctl restart wyn
    
  5. Modify the /opt/Wyn/Monitor/conf/Wyn.conf file in the primary node as follows. Configuration settings in the conf file
  6. Restart the Wyn service in the primary node using the following command.

    sudo systemctl restart wyn
    

Scenario 2: Deploy Active-Active Cluster

In release 5.1, the customer can deploy active-active clusters by enabling and deploying multiple servers.

Note: In multiple servers mode, the servers use the same data store.

Prerequisites

After meeting the above prerequisites, please refer to the Deploy Server section for details on enabling and deploying multiple servers.

Troubleshooting

Case 1: Redis cannot be connected

In multiple servers mode, the Server may not start because Redis cannot be connected. You will see an error message in the /opt/Wyn/logs/server/logxxx.txt file as shown below.

Redis Connection Error

This error message appears because Redis binding IP address is either set to localhost or 127.0.0.1. In order to resolve this connection error, follow the below steps.

  1. Comment binding or modify binding to the specific IP address instead of localhost or 12.7.0.0.1 in Redis.conf file. In Linux, the Redis configuration file is located in the /etc/redis folder, while in Windows, you can find the configuration file in the Redis installation directory.
  2. Then, restart Redis.

Case 2: Cannot install workers

Whenever you try to install any worker on the secondary node, you see the below error message.

Worker installation failure error

This error message appears due to invalid configuration settings specified for the workers. Please go through the above sections for information on the installation steps for the workers.

Note:
1. In Wyn.conf file, each part separated by a colon in 'Services:CotWorker:SchedulerConfig:LocalHost' represents an XML node.
2. The error tip indicates that the 'Services:CotWorker:SchedulerConfig:LocalHost' configuration in Wyn.conf file is incorrect.

Case 3: Missing workers' configuration after upgrade from 5.0 to 5.1 edition

After you upgrade Wyn Enterprise from 5.0 to 5.1 edition, you might see the following error message if you try to install a worker on the secondary node.

Missing worker configuration error message

This error message appears because of the missing configurations for the workers. Please follow the steps mentioned in the Case 2: Without Local Workers section of the Upgrade Wyn Enterprise to 5.0 to 5.1 Edition article.

Note:
1. In Wyn.conf file, each part separated by a colon in 'Services:CotWorker' represents an XML node.
2. The error tip indicates that the 'Services:CotWorker' configuration in Wyn.conf file is missing.

Case 4: Cannot install Server

By default, an error message is displayed on installing Server.

Cannot Install Server Error

This error message appears because multiple servers mode is not enabled.

For information on how to enable multiple servers mode and install the server remotely, please see the Deploy Server section.