Configuring NetScaler CPX Using a Configuration File
Instead of using command line interface (
cli\_script.sh), NITRO API, or NetScaler Management and Analytics (MAS) configuration jobs to configure the NetScaler CPX, you can dynamically configure the NetScaler CPX using a static configuration file while deploying the NetScaler CPX instance.
You can provide a static configuration file as an input file while deploying the NetScaler CPX container. During NetScaler CPX container startup, the container is configured based on the configuration specified in the static configuration file. This configuration includes NetScaler-specific configuration and bash shell commands that you can dynamically run on the NetScaler CPX container.
Structure of the static configuration file
As mentioned above, when NetScaler CPX is deployed, it is configured based on the configurations specified in the static configuration file.
The static configuration file is a
.conf file that includes two tags,
#NetScaler Commands and
#Shell Commands. Under the
#NetScaler Commands tag, you must add all the NetScaler commands to configure NetScaler-specific configuration on NetScaler CPX. Under the
#Shell Commands tag, you must add the shell commands that you want to run on NetScaler CPX.
During the NetScaler CPX container deployment, the NetScaler commands and shell commands are executed on the container in the order specified in the configuration file.
- The tags can be repeated multiple times in the configuration file.
- The tags are not case-sensitive.
- The configuration file must be present in
cpx.conffile in the container’s file system.
- The configuration file can also include comments. You need to add a “#” character before your comments.
- If there are failure scenarios while deploying the NetScaler CPX container with the configuration file, the failures are logged in the
ns.logfile in the container.
- When you reboot the NetScaler CPX container the configuration file is re-applied on the container.
#NetScaler Commands add lb vserver v1 http 18.104.22.168 80 add service s1 22.214.171.124 http 80 bind lb vserver v1 s1 #Shell Commands touch /etc/a.txt echo "this is a" > /etc/a.txt #NetScaler Commands add lb vserver v2 http #Shell Commands echo "this is a 1" >> /etc/a.txt #NetScaler Commands add lb vserver v3 http #This is a test configuration file
To install a NetScaler CPX container and to dynamically configure the NetScaler CPX container based on a configuration file, mount the static configuration file using the
- v option in the
docker run command:
docker run -dt --privileged=true -e EULA=yes --ulimit core=-1 -v /tmp/cpx.conf:/etc/cpx.conf --name mycpx store/citrix/netscalercpx:12.0-56.20