As part of the ClustrixDB Installation process you made some configuration selections. Once you have completed installation please use the following directions to modify any of these options.
The clxnode.conf is stored on each node in /etc/clustrix/ and options specified during installation are written to this file. The following table summarizes these options and provides information on how they can be modified post-installation.
The steps outlined in this document apply to most installations of ClustrixDB, but do not apply to deployments based on the Clustrix AWS AMI.
ClustrixDB requires that all nodes have identical configurations. Modifications to any of the options described below must be made on every node in the cluster. Values commented out with a # will have no effect on the database.
Default Options for clxnode.conf
Use standard bash conventions for clxnode.conf. The file should contain variable definitions, comments, and blank lines only. Option and value settings should not contain any extraneous spaces. For example CPU_CORES=4
|Option||Description||Default Value||To Modify|
|NODE_MEMORY||Memory to use for ClustrixDB, in MiB||auto detected|
|MAX_REDO||Maximum ClustrixDB Redo Space, in MiB||1024||Only modify this variable with guidance from Clustrix Support.|
|CPU_CORES||Number of CPU cores ClustrixDB will use||All|
For additional info, please see section below on setting CPU_CORES.
|DATA_PATH||ClustrixDB Database Storage Path||/data/clustrix|
|DATA_ALLOCATE||Storage space to pre-allocate to ClustrixDB||auto detected|
|LOG_PATH||ClustrixDB Logs Path||/data/clustrix/log|
|UI_LOGDIR||ClustrixDB WebUI Logs Path||/data/clustrix/log/clustrix_ui|
|UI_CACHEDIR||ClustrixDB WebUI Cache Path||/var/cache/clustrix/django||Only modify this variable with guidance from Clustrix Support.|
|UNIX_SOCKET_PATH||ClustrixDB MySQL Protocol Unix Socket||/var/lib/mysql/mysql.sock||Only modify this variable with guidance from Clustrix Support.|
|LISTEN_ADDR||ClustrixDB Database Listen Address (Front-End IP) Interface||0.0.0.0|
|MYSQL_PORT||ClustrixDB Database MySQL Port||3306|
|BACKEND_ADDR||ClustrixDB Private Back-End IP Interface||auto detected||See section below on changing BACKEND_ADDR.|
|BACKEND_PORT||ClustrixDB Back End Network Port||24378||It is not recommended to modify the default value for the ClustrixDB Back End Network port.|
|HTTP_PORT||ClustrixDB WebUI HTTP Port||80|
|NANNY_PORT||ClustrixDB Nanny Port||2424||It is not recommended to modify the default value for the ClustrixDB nanny port.|
|CONTROL_PORT||ClustrixDB Control Port||2048||It is not recommended to modify the default value for the ClustrixDB control port.|
|CLX_USER||ClustrixDB OS User||root||Do not modify this value after installation.|
|MANAGE_USER||ClustrixDB Manager User||root||Do not modify this value after installation.|
|WRITE_HOSTS||Allow ClustrixDB to modify sshd_config and /etc/hosts.|
This is required for internode communication for administrative tasks, including upgrades
ClustrixDB enables HugeTLB memory allocation for faster startup. NOTE: This causes instability on some systems (particularly certain virtual machines).
Contact Clustrix Support before changing from default.
Additional options for clxnode.conf
The following options are NOT included by default in clxnode.conf, but can be added to the end of that file to modify behavior from the default:
|Option||Description||Default Value||To Modify|
|DISABLE_MULTIPORT||When this option is present, the multiport feature is disabled.||This option is not included in clxnode.conf, resulting in multiport being enabled by default.||To disable multiport, add this entry and define this variable as any value on all nodes. (Its mere presence disables multiport.)|
To enable multiport, remove or comment out this entry from clxnode.conf on all nodes.
Details of Modifying Startup Configuration Options
ClustrixDB requires that all nodes must have the same values in clxnode.conf
Stop/Start all ClustrixDB Services
To restart all ClustrixDB services on all nodes (via nanny), use the following commands. This will restart nanny, and all jobs controlled by nanny, and cause the database to come online. See Overview of Nanny.
shell> /opt/clustrix/bin/clx cmd 'systemctl stop clustrix' shell> /opt/clustrix/bin/clx cmd 'systemctl start clustrix'
Users of CentoS 6 will need to use initctl instead of systemctl
The default setting of CPU_CORES=All will make use of all available cores in the system. If you would like to limit the number of cores utilized by ClustrixDB you must modify the value for CPU_CORES to specify the number of cores that should be used. ClustrixDB licensing will base its enforcement on the number of cores being utilized in the system as specified by CPU_CORES.
If you are upgrading from v6.X, there may not be an entry for CPU_CORES in clxnode.conf which will implicitly specify CPU_CORES=All. If you would like to specify an alternate value simply add an entry for CPU_CORES.
- Modify the BACKEND_ADDR entry in the /etc/clustrix/clxnode.conf file with the new IP.
- Modify /data/clustrix/broadcast_nodes file with the new IP addresses on all nodes.
- Note: Specifying port 24378 is not necessary unless you're using a non-default configuration.
Run the clx command to ensure it has cached the IP address of each node.
shell> /opt/clustrix/bin/clx cmd 'date'
- Stop all ClustrixDB services (per above).
- Change the backend interface IP address on each node.
- Modify iptables as needed.
- Start all ClustrixDB services (per above).