Upgrading a NetScaler CPX Instance

You can upgrade a NetScaler CPX instance by shutting it down, installing the latest version on the same mount point, and then deleting the old instance. A mount point is a directory into which you mount the /cpx directory on the host.

For example, to mount the /cpx directory of the existing NetScaler CPX instance in the host’s /var/cpx directory, the mount point is /var/cpx and the NetScaler CPX mount directory is /cpx as shown below:

    root@ubuntu:~# docker run -dt -e EULA=yes --name mycpx -v /var/cpx:/cpx --ulimit core=-1 cpx:12.1-48.xx

Prerequisites

Ensure that you have:

  • Details of the host directory in which you mounted the existing NetScaler CPX instance’s /cpx directory. You can use the docker inspect <containerName> command, where <containerName> is the name of the NetScaler CPX container, to display information about the host directory.

    The output of the command provides the details of the container configurations, including the volumes. In the “Mounts” entry, the “Source” subentry shows the location of the host directory on the host.

    Example output of mount source and destination

  • Download the latest NetScaler CPX Docker image file from https://www.microloadbalancer.com/get-it-now and then load the NetScaler CPX Docker image. To load the image, navigate to the directory in which you saved the Docker image file. Use the docker load -i <image_name> command to load the image. After the NetScaler CPX image is loaded, you can enter the docker images command to display information about the image:

    root@ubuntu:~# docker load -i  cpx-12.0-41.10.gz

    root@ubuntu:~# docker images

    REPOSITORY   TAG         IMAGE ID         CREATED     VIRTUAL SIZE

    cpx          12.0-41.10  2e97aadf918b  43 hours ago      414.5 MB

To upgrade a NetScaler CPX instance

  1. Stop the existing NetScaler CPX instance by entering the docker stop <containerName> command, where <containerName> is the name of the NetScaler CPX instance.

    root@ubuntu:~# docker stop mycpx
    mycpx
    
  2. Using the docker run command, deploy the latest NetScaler CPX instance from the NetScaler CPX image that you loaded onto the host. Ensure that you deploy the instance at the same mount point (for example, /var/cpx:/cpx) that you used for the existing NetScaler CPX instance.

    root@ubuntu:~# docker run -dt -P -e CPX_CORES=1 --name latestcpx --ulimit core=-1 -e EULA=yes -v /var/cpx:/cpx --cap-add=NET_ADMIN cpx:12.0-41.10
    

    You can enter the docker ps command so that you can verify that the deployed NetScaler CPX instance is the latest version.

    ```
        root@ubuntu:~# docker ps
    
        CONTAINER ID        IMAGE             COMMAND             CREATED             STATUS                         PORTS                  NAMES
    
        ead12ec4e965   cpx:12.0-41.10  "/bin/sh -c 'bash -C "   5 seconds ago       Up 5 seconds        22/tcp, 80/tcp, 443/tcp, 161/udp   latestcpx
    ```
    
  3. After verifying that you deployed the correct NetScaler CPX instance, enter the docker rm <containerName> command to delete the older instance.

    root@ubuntu:~# docker rm mycpx
    mycpx
    

Upgrading a NetScaler CPX Instance