Skip to end of metadata
Go to start of metadata

Once you have completed file system and OS configuration, you are now ready to install ClustrixDB.

Step 1: Install ClustrixDB on each node

Log into each ClustrixDB node as either the root Linux user, or a non-root Linux user that has sudo privileges.

Download the ClustrixDB installation, then untar and run the installer script: 

shell> tar xvfj current_version.el7.tar.bz2
shell> cd current_version
shell> sudo ./clxnode_install.py


By default, the installer will configure the clxd Linux user as the ClustrixDB daemon user, and clxm as the ClustrixDB management user. Please see ClustrixDB Operating System Users for more information. Once installation is complete, these users cannot be modified. 

The installer will present you with a list of options based on your server specifications. You may use the default values for most.

 Click to view full list of Installer Options

 If you have already installed ClustrixDB, see Modifying Startup Configuration Options.

Options for non-root (recommended) 


OptionPromptDescriptionDefault Value

0

Memory to use for ClustrixDB, in MiB

The default value is auto-detected based on the amount of memory available.
auto-detected

1

CPU cores to use for ClustrixDB

All is suggested and advised, however, this can be any number that is less than or equal to the number of cpu cores licensed for a node.

All

2

Database Storage Path

The path used for ClustrixDB data.

/data/clustrix

3

Storage space to pre-allocate to ClustrixDB

This is the amount of space that will initially be allocated for device1 storage.
auto-detected

4

Database Logs Path

This directory contains the ClustrixDB logs ( query.log , clustrix.log , debug.log , etc.).

/data/clustrix/log

5

MySQL Protocol Unix Socket

The location of the socket file that is necessary for communication to the database.

/var/lib/mysql/mysql.sock

6

Database Listen Address

The IP address on which ClustrixDB will accept client connections. This may be a specific IP or 0.0.0.0 to denote that any connection is allowable.

0.0.0.0

7

Database MySQL TCP Port

The default TCP port used for accessing ClustrixDB.

3306

8

Private (Back-End) IP

The Private (Back-End) IP is the IP that will be used for internode communication.

  • If your host has only one interface/IP, use that IP.

  • For multihomed hosts in which one or more networks are meant for client connections while another is designated for an internal "back-end" network, the IP provided should be the latter. This is particularly important in cloud environments for which a front-end IP may have special routing, filtering, or metering rules associated.

IP of current node

9

Back End Network TCP/UDP Port

24378 is the port that ClustrixDB uses for back-end network communication using both TCP and UDP.

24378

10Health Monitor TCP/UDP PortPort used by the Clustrix Health Monitor3581
11OS UserThe OS user used to run ClustrixDB. Clustrix recommends specifying a user other than root. See ClustrixDB Operating System Users  for more information.

clxd*

12Management UserThe OS user used to manage ClustrixDB. Clustrix recommends specifying a user other than root. See ClustrixDB Operating System Users  for more information.

clxm

13Reduce TCP retry count

Default to reducing the retry count from 15 to 6

Yes

14ClxDBI Install PathThe path where the ClxDBI will be installed./opt/clustrix/dbi
15ClxDBI Listen AddressThe address at which ClxDBI listens.0.0.0.0
16ClxDBI Listen TCP PortThe port at which which ClxDBI listens.7888
17ClxDBI Log PathThe path for logs generated by ClxDBI./data/clustrix/log/clxdbi
18ClxDBI PID File PathThe location of the process identification number file for ClxDBI./var/run/clustrix
19ClxGUI Install PathThe path where the ClxGUI will be installed./opt/clustrix/clxgui
20ClxGUI Data Cache PathThe path for data cached by ClxGUI./var/cache/clustrix
21ClxGUI Listen AddressThe address at which ClxGUI listens.0.0.0.0
22ClxGUI Listen TCP PortThe TCP port used for HTTP communication by ClxGUI. If a user other than root is specified for the OS User, the default will be 8080.

8080

23ClxGUI Log PathThe path for logs generated by ClxGUI./data/clustrix/log/clxgui
24ClxGUI PID File PathThe location of the process identification number file for the ClxGUI./var/run/clustrix

*Specifying root as the database OS user changes the list of installation options

 Options for Root installation

OptionPromptDescriptionDefault Value

0

Memory to use for ClustrixDB, in MiB

The default value is auto-detected based on the amount of memory available.
auto-detected

1

CPU cores to use for ClustrixDB

All is suggested and advised, however, this can be any number that is less than or equal to the number of cpu cores licensed for a node.

All

2

Database Storage Path

The path used for ClustrixDB data.

/data/clustrix

3

Storage space to pre-allocate to ClustrixDB

This is the amount of space that will initially be allocated for device1 storage.
auto-detected

4

Database Logs Path

This directory contains the ClustrixDB logs ( query.log , clustrix.log , debug.log , etc.).

/data/clustrix/log

5

MySQL Protocol Unix Socket

The location of the socket file that is necessary for communication to the database.

/var/lib/mysql/mysql.sock

6

Database Listen Address

The IP address on which ClustrixDB will accept client connections. This may be a specific IP or 0.0.0.0 to denote that any connection is allowable.

0.0.0.0

7

Database MySQL TCP Port

The default TCP port used for accessing ClustrixDB.

3306

8

Private (Back-End) IP

The Private (Back-End) IP is the IP that will be used for internode communication.

  • If your host has only one interface/IP, use that IP.

  • For multihomed hosts in which one or more networks are meant for client connections while another is designated for an internal "back-end" network, the IP provided should be the latter. This is particularly important in cloud environments for which a front-end IP may have special routing, filtering, or metering rules associated.

IP of current node

9

Back End Network TCP/UDP Port

24378 is the port that ClustrixDB uses for back-end network communication using both TCP and UDP.

24378

10Health Monitor TCP/UDP PortPort used by the Clustrix Health Monitor3581
11OS UserThe OS user used to run ClustrixDB. Clustrix recommends specifying a user other than root. See ClustrixDB Operating System Users  for more information. root*


12Management UserThe OS user used to manage ClustrixDB. Clustrix recommends specifying a user other than root. See ClustrixDB Operating System Users  for more information. root


13Allow ClustrixDB to modify sshd_config and /etc/hosts

This option enables Host Based Authentication between the nodes and allows them to communicate with each other via ssh.

If a user other than root is specified as the OS User, this option will be set to No and hidden.

No*

14

Enable HugeTLB memory allocation

Leave this parameter as Yes to enable additional (temporary) memory usage to facilitate faster system startup. If a user other than root is specified as the OS User, this option will be set to Yes and hidden.

Yes

15Reduce TCP retry count

Default to reducing the retry count from 15 to 6

Yes

16ClxDBI Install PathThe path where the ClxDBI will be installed./opt/clustrix/dbi
17ClxDBI Listen AddressThe address at which ClxDBI listens.0.0.0.0
18ClxDBI Listen TCP PortThe port at which which ClxDBI listens.7888
19ClxDBI Log PathThe path for logs generated by ClxDBI./data/clustrix/log/clxdbi
20ClxDBI PID File PathThe location of the process identification number file for ClxDBI./var/run/clustrix
21ClxGUI Install PathThe path where the ClxGUI will be installed./opt/clustrix/clxgui
22ClxGUI Data Cache PathThe path for data cached by ClxGUI./var/cache/clustrix
23ClxGUI Listen AddressThe address at which ClxGUI listens.0.0.0.0
24ClxGUI Listen TCP PortThe TCP port used for HTTP communication by ClxGUI. If a user other than root is specified for the OS User, the default will be 8080.

80

25ClxGUI Log PathThe path for logs generated by ClxGUI./data/clustrix/log/clxgui
26ClxGUI PID File PathThe location of the process identification number file for the ClxGUI./var/run/clustrix

Type Yes to accept the terms of use and proceed with installation. Once the installer completes, the ClustrixDB software is running on the server but is not yet part of a cluster.

Repeat these steps on each node using the same configuration options.

Step 2: Set Up Network Security

ClustrixDB requires a number of ports to be accessible by external applications and for internode communication. This step should be performed for all nodes. 

Option A: Allow All Communication Between Nodes 

Clustrix recommends placing nodes within a secure environment and allowing access between all nodes on all ports.

Option B: Open Specific Ports

 You can also open the specific ports required by ClustrixDB (Click to expand)

This page summarizes the list of ports used by ClustrixDB. If using network security such as firewalls or security groups, the following network traffic must be allowed.

Internal Access Between ClustrixDB Nodes

These network ports are required for communication between ClustrixDB nodes. They must each be accessible by other nodes within the cluster.

ProtocolPortUseReason
TCP22SSHAdministration and upgrade
TCP, UDP2048Control PortClustrixDB specialized administrative tool
TCP, UDP2424 Nanny Portnanny - ClustrixDB process manager
TCP3306SQL

Database communication

TCP7888clxdbiDatabase interface for ClustrixGUI
TCP, UDP24378 - 24410MultiportClustrixDB internode communication

External Access

These network ports are used to access ClustrixDB externally from your applications and for cluster administration.

ProtocolPort                UseReason
TCP22SSHRemote management and cluster access   
TCP8080*HTTPClustrixGUI
TCP3306SQLDatabase access
TCP3581Health CheckHeartbeat monitor for cluster

*For root installation, ClustrixGUI uses port 80.

Step 3: Form the ClustrixDB Cluster

From a single node only, connect to ClustrixDB using the default mysql (MariaDB) client. 

shell> sudo mysql

You can confirm you are running ClustrixDB by examining the clustrix_version variable:

sql> SELECT @@clustrix_version;

Next, set a password for the root user, set the license and form a cluster:

Then run the following SQL commands to set the cluster's license:

sql> SET GLOBAL license = 'license key';

You are now ready to cluster your nodes.

shell> ALTER CLUSTER ADD ' node2_ip_address', 'node3_ip_address';

After the ALTER CLUSTER command, there will be a brief period of unavailability while the cluster forms. 

To verify that all nodes are in the cluster, run the following query: 

select * from system.nodeinfo;

All the nodes you added to the cluster should appear in this list.

Now that you have completed installation, proceed to Configure SSH Authentication.

  • No labels