Configuration Overview

The following document provides a general overview on how to configure and manage the Horizontal Cluster, including creating application contexts, setting up сluster сoordinator, registering tenants within the сluster сoordinator, and configuring both primary nodes and login servers. The document also presents guidelines for working with different types of resources such as clustered resources and session resources as well as instructions on executing distributed operations in a clustered environment. For a detailed example of a simple cluster, see the tutorial Configuring Servers for Active-Active Failover.

Initialize Nodes

Create the initial nodes. A node in this case is a physical or virtual server running an instance of Iotellect. To get started, there must be at least four nodes, one each for the cluster coordinator, a primary node, a login server, and an application server. Additional nodes can be added if necessary, either initially or later.

Each node must have an ID which is unique within the cluster. Server ID can be edited under the property Server Configuration > Advanced > Server ID.

Application and Application Server Configuration

Choose one node to be the application server and perform the following actions on this server:

  • Create a user for each specific application (preferrably, keep username equal to application name). All necessary contexts for this application must be created under this dedicated user.

  • Create all contexts that will be part of the application. For each context, use the Edit Additional Properties action to set the Resource Type variable based on whether it's a Template or a Session Resource.

  • Create an application context, e.g. by importing an application.

Cluster Coordinator Configuration

Cluster coordinator node(s) are configured using the global configuration of the Cluster Coordinator plugin.

  • Check Enabled to activate the coordinator.

  • Configure the coordinator Cache and Storage properties.

  • Restart the server to activate the cluster coordinator.

  • Call the Add Tenant action of the Cluster Coordinator plugin. Specify a unique tenant ID to identify the tenant in the cluster.

  • Call the Add Primary Node action of the Cluster Coordinator plugin. The primary node login and password must be those of the user that corresponds to the tenant given here (tenant ID and primary node login should be the same). If the operation is successful, the action returns ID of each added primary node.

  • After all primary nodes are added, restart the server where the Cluster Coordinator is enabled.

  • Call the Register Application action of the Cluster Coordinator plugin. The username and password specified must be those of the user that corresponds to the application name given here (application name and username should be the same). The action returns details about added contexts. Template tesources are created on each primary node previously added to the cluster.

Primary Nodes Configuration

Primary nodes take database configuration parameters from the Configuration Server that is, indeed, the Cluster Coordinator.

The database configuration and connection settings are defined in the Primary Node Server Configuration property of the Cluster Coordinator plugin’s global configuration.

Updating Application

When an application is updated and new recources are added to it, the Register Application action of the Cluster Coordinator must be called again.

Login Server Configuration

Steps to configure login server for external authentication:

  • Configure the plugin in Server Configuration -> Security -> Authentication.

  • Provide the IP address of one of the cluster coordinator nodes (or, ideally, the IP address of the balancer that distributes requests to cluster coordinators) in the global configuration of the Login Server plugin.

  • Provide administrator's username and password in the global configuration of the Login Server plugin.

Was this page helpful?