Upgrading the Hyperscale Compliance Orchestrator (Docker Compose)
Pre-requisite
Before upgrading, ensure you have downloaded the Hyperscale Compliance x.0.0 (where x.0.0
should be changed to the version of Hyperscale being installed) tar bundle from the Delphix Download website.
How to upgrade the Hyperscale Compliance Orchestrator
Perform the following steps to upgrade the Hyperscale Compliance Orchestrator to the x.0.0 version:
Run
cd /<hyperscale_installation_path>/
anddocker-compose down
to stop and remove all the running containers.Run the below commands to delete all existing dangling images and hyperscale images:
CODEdocker rmi $(docker images -f "dangling=true" -q) docker rmi $(docker images "delphix-hyperscale-masking-proxy" -q) docker rmi $(docker images "delphix-controller-service-app" -q) docker rmi $(docker images "delphix-masking-service-app" -q) docker rmi $(docker images "delphix-*load-service-app" -q)
Remove all files or folders from existing installation directories, except
docker-compose.yaml
(Keep its backup outside the installation directory so it is not overridden while executing the next step).Take backup of .env file and untar the patch tar in your existing installation path (where
x.0.0
should be changed to the version of Hyperscale being installed).tar -xzvf delphix-hyperscale-masking-x.0.0.tar.gz -C <existing_installation_path>
Replace the
docker-compose.yaml
supplied with the bundle file as per the following:For users upgrading from 3.0.0.x: Use the connector-specific
docker-compose-sample.yaml
file(e.g.docker-compose-oracle.yaml
ordocker-compose-mssql.yaml
) supplied with the bundle and add the same ‘volumes’ and/or any other properties (if configured) for each container referencing the backed-updocker-compose.yaml
from step 3.For users upgrading from 4.0.0.0 and above: Replace the
docker-compose.yaml
file supplied with the bundle with thedocker-compose.yaml
file that you created as a backup at step 3.Similar to other services, make sure to add the volume binding for the staging area path under controller-service as well. For example,
CODE- /mnt/hyperscale:/etc/hyperscale
Apply the backed up .env file and set the VERSION property as x.0.0 (i.e. VERSION=x.0.0).
Run the below commands to load the images(will configure Oracle-based unload/load setup):
CODEdocker load --input controller-service.tar docker load --input unload-service.tar docker load --input masking-service.tar docker load --input load-service.tar docker load --input proxy.tar
If upgrading from an MSSQL connector setup(supported starting 5.0.0.0 release), instead of running the above commands for load/unload services setup(which are for Oracle), run the below commands(rest remains same for the controller, masking, and proxy services):
CODEdocker load --input mssql-unload-service.tar docker load --input mssql-load-service.tar
If upgrading from a Delimited/Parquet Files connector setup (supported starting 12.0.0 release), instead of running the above commands for load/unload services setup(which are for Oracle), run the below commands(rest remains same for the controller, masking, and proxy services) after updating new image names in docker-compose.yaml:
CODEdocker load --input file-connector-unload-service.tar docker load --input file-connector-load-service.tar
If upgrading from a MongoDB connector setup (supported starting 13.0.0 release), instead of running the above commands for load/unload services setup (which are for Oracle), run the below commands (rest remains same for the controller, masking, and proxy services):
CODEdocker load --input mongo-unload-service.tar docker load --input mongo-load-service.tar
Make sure to have the below ports configured under proxy service:
CODEports: - "443:8443" - "80:8080"
Ensure your mount are configured and accessible, before running a job.
If upgrading to version 24.0 (and onwards) , ensure that the location mounted on the Hyperscale host is the same as the one mapped to/etc/hyperscale
in your docker-compose.yaml. If a previous mount exists on another location, unmount it and re-mount to the right directory e.g. if a mount point exists with namestaging_area
at path/mnt/provision/staging_area
, execute the following commands and restart the containers.If NFS file server is used as staging server execute this command:
CODEsudo umount /mnt/provision/staging_area sudo mount -t nfs4 <source_nfs_endpoint>:<source_nfs_location> /mnt/provision
If the NFS Server installation is a Delphix Continuous Data Engine empty VDB you can either:
Append the staging_area path to the volume binding for all the services in docker-compose.yaml. For example:
CODEvolumes: - /mnt/provision/staging_area:/etc/hyperscale
Alternatively, you can update mount path of Environment on Continuous Data Engine:
Disable the empty VDB(Data Set).
Update path on Environment → Databases page. For example: change path from
/mnt/provision/staging_area
tomnt/provision/
Enable the empty VDB(Data Set).
Restart Hyperscale containers.
After re-mounting, recheck the permissions of staging area on Hyperscale host. Refer to instruction number 3 on this page: Installation and Setup for required staging area permissions.
Upon application startup, all existing mount-filsystems will be deleted. Please ensure to take backup of the mount setup details, if needed.
If using file connectors, any unload or load jobs in a running state at the time of a container restart are marked as failed.
Run
docker-compose up -d
to create containers.