Adding a Cluster Node

Adding a Cluster Node

Overview

When you install Universal Controller, you create a single instance (cluster node) of the Controller. To operate Universal Automation Center in a High Availability (HA) environment, you must add one or more cluster nodes. Each cluster node should be installed on a separate machine.

This page tells you how to add one or more cluster nodes.

Requirements for Adding a Cluster Node

Each cluster node in an HA environment must connect to the same Universal Controller database. If one of the cluster nodes stops processing, another cluster node continues processing with the same data.

Each cluster node in an HA environment must be the same version and build of the Controller. To ensure this, you can either:

  • Install the downloaded version of the Controller on a second machine.

  • Download a new version of the Controller software, update the current version, and then install the new version on a second machine.

It is strongly recommended that an HA environment has at least two OMS Servers, although you do not need an OMS Server for every cluster node if your HA environment contains three or more cluster nodes.

Procedure for Adding a Cluster Node

This page describes the following procedure:

This procedure assumes you already have performed any required pre-installation procedure steps for the cluster node being added.

Copy and Unpack the Universal Controller Distribution File

Copy the downloaded distribution file, which was used to install the current, single instance of Universal Controller, from its current location to the machine on which you want to install a new instance of the Controller.

To unpack the Universal Controller distribution file, use the following method appropriate for your platform:

Linux/Unix

tar xvf uc-controller-N.N.N.N.tar

Windows

Use an appropriate archiving / unzipping product.

Install the Controller

To install the Controller, issue the following command that is appropriate for your platform:

Linux

> sh install-controller.sh

Windows

> install-controller.bat

You must include command line switches that specify information the Controller needs to access the Tomcat installation directory, the war file, and the database. You can include additional command line switches, but they are not required.

If a required command line switch is missing from the command line, an error message will identify it during the installation process.

The Controller installation process writes the values for some command line switches to the Universal Controller start-up properties file, uc.properties (see the table, below). For any of those command line switches that are not required and, in fact, are not included on the command line, the Controller installation process writes their default value to uc.properties.

Command Line Switches

The following table describes the command line switches for the Controller installation process and identifies which are required.

For command line switches that have their value written to the Universal Controller start-up properties file, uc.properties, the table also identifies the property in that file to which the value is written.

Note

All command line switches are case-sensitive.

Command Line Switch

Description

Default

Required

Controller Property

Command Line Switch

Description

Default

Required

Controller Property

--controller-file

Full path of the Universal Controller war file from the downloaded Universal Controller package.

none

Yes

 

--dbname

Universal Controller database name.

uc

No

uc.db.name=

--dbpass

Database user's password.

none

Yes

uc.db.password=

--dburl

JDBC connection URL.
 
Format:   jdbc:<jdbc vendor>:<other jdbc vendor data>
 
Examples (for MS SQLServer, uc is the database name; for Oracle, XE is the SID):
 

MySQL

jdbc:mysql://localhost:3306/

MS SQL Server

jdbc:sqlserver://localhost:1433;DatabaseName=uc

MS SQL Server JTDS

jdbc:jtds:sqlserver://localhost:1433/uc

Oracle

jdbc:oracle:thin:@//localhost:1521/ServiceName
or
jdbc:oracle:thin:@localhost:1521:XE

jdbc:mysql://localhost

No

uc.db.url=

--dbuser

Database user name.

none

Yes

uc.db.user=

--port

Used by the Universal Controller to generate a unique Cluster Node Node Id in the format of hostname:port-dbname.

Note

This is meant to represent the value of the Tomcat HTTP/1.1 Connector port configured in the server.xml.

It is used solely for Node Id generation and does not impact the Tomcat HTTP/1.1 Connector configuration.

8080

No

uc.servlet.port

--rdbms

Database type.
 
Valid values are:

  • mysql

  • sqlserver

  • oracle

* --rdbms is required if --dburl is used in the command.

mysql

No *

uc.db.rdbms=

--tomcat-dir

Path to the Tomcat installation directory (contains the directories:/bin, /conf, /logs, webapps).

none

Yes