As part of the Xpand Installation process you made some configuration selections which are written to clxnode.conf. Post-installation, you can modify the configuration by editing the file on each node while ensuring that the options specified are the same (other than node specific items like BACKEND_ADDR).
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 Xpand, but do not apply to deployments based on the Xpand AWS AMI.
Xpand requires that all nodes have identical configurations (other than node specific items like BACKEND_ADDR). 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. Changes to the configuration requires a restart of Xpand services (see below) to take effect.
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 Xpand, in MiB||auto detected|
|MAX_REDO||Maximum Xpand Redo Space, in MiB||1024||Only modify this variable with guidance from Xpand Support.|
|CPU_CORES||Number of CPU cores Xpand will use||All|
For additional info, please see section below on setting CPU_CORES.
|DATA_PATH||Xpand Database Storage Path||/data/clustrix|
|DATA_ALLOCATE||Storage space to pre-allocate to Xpand||80% of free space on $DATA_PATH volume ||This value here is used for initialization only. To allocate more space on a node that already has Xpand installed, see ALTER CLUSTER RESIZE DEVICES|
|LOG_PATH||Xpand Logs Path||/data/clustrix/log|
|UI_LOGDIR||Xpand WebUI Logs Path||/data/clustrix/log/clustrix_ui|
|UI_CACHEDIR||Xpand WebUI Cache Path||/var/cache/clustrix/django||Only modify this variable with guidance from Xpand Support.|
|UNIX_SOCKET_PATH||Xpand MySQL Protocol Unix Socket||/var/lib/mysql/mysql.sock||Only modify this variable with guidance from Xpand Support.|
|LISTEN_ADDR||Xpand Database Listen Address (Front-End IP) Interface||0.0.0.0|
|MYSQL_PORT||Xpand Database MySQL Port||3306|
|BACKEND_ADDR||Xpand Private Back-End IP Interface||auto detected||See section below on changing BACKEND_ADDR.|
|BACKEND_PORT||Xpand Back End Network Port||24378||It is not recommended to modify the default value for the Xpand Back End Network port.|
|HEALTHMON_PORT||The port used for the Xpand health monitor.||3581|
|HTTP_PORT||Xpand WebUI HTTP Port||80|
|NANNY_PORT||Xpand Nanny Port||2424||It is not recommended to modify the default value for the Xpand nanny port.|
|CONTROL_PORT||Xpand Control Port||2048||It is not recommended to modify the default value for the Xpand control port.|
|CLX_USER||Xpand OS User||root||Do not modify this value after installation.|
|MANAGE_USER||Xpand Manager User||root||Do not modify this value after installation.|
|WRITE_HOSTS||Allow Xpand to modify sshd_config and /etc/hosts.|
This used by root installations only, for internode communication for administrative tasks, including upgrades.
Xpand enables HugeTLB memory allocation for faster startup. NOTE: This causes instability on some systems (particularly certain virtual machines).
Required for non-root installations that have more than 20GiB of $NODE_MEMORY
Contact Xpand Support before changing from default.
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. Xpand must be restarted for changes to take effect.
|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 an entry for DISABLE_MULTIPORT = Y.
|MULTIPAGE_ALLOC||Bytes reserved for multi-page allocators.||The option is not included clxnode.conf, resulting in a value of 1GiB||Add this entry and define the number of bytes that Xpand Support recommends for your workload.|
|USE_DNS_HOSTNAMES||Enables node cluster membership tracking by hostname, instead of IP||The option is is not included in clxnode.conf, resulting in using IPs to track cluster membership.||Add this entry and set it to True|
Xpand requires that all nodes must have the same values in clxnode.conf
To apply the changes that have been made to clxnode.conf, the Xpand services on all the nodes will need to be restarted:
shell> /opt/clustrix/bin/clx dbrestart
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 Xpand you must modify the value for CPU_CORES to specify the number of cores that should be used. Xpand licensing will base its enforcement on the number of cores being utilized in the system as specified by CPU_CORES.
Run the clx command to ensure it has cached the IP address of each node.
shell> /opt/clustrix/bin/clx cmd 'clx cache'