Backup and restore using script

Backup

  1. Download the dct-support-tools from the downloads site. Once the file is downloaded, untar the file and open the bacup-restore directory to find the backup_restore.sh and appliance_backup_restore.sh scripts.

    Copy
    % tar -xzvf dct-support-tools-02132025.tar.gz
    % ./
    % ./backup-restore/
    % ./backup-restore/README
    % ./backup-restore/backup_restore.sh
    % ./backup-restore/appliance_backup_restore.sh
    % ./support-bundle/
    % ./support-bundle/collect_bundle.sh
    % ./support-bundle/README
    % ./VERSION
    % cd backup-restore
  2. Transfer the backup_restore.sh and appliance_backup_restore.sh scripts to the machine where you have permissions to execute kubectl commands against the DCT pods.

    1. You must install the bash shell to run the backup_restore.sh script, as well as the zip/unzip utilities.

    2. You must also have the curl command installed to run the appliance_backup_restore.sh script.

  3. Make sure DCT on Kubernetes is running and execute the backup_restore.sh script. The script may need to run with sudo if root permissions are needed to run the kubectl commands. Use the -n flag and pass the namespace (if not using the default dct-services), and redirect the script output to the desired backup location.

    1. The size of the backup depends on the size of the DCT data going into it, but is typically in the 1GB to 10GB range.

    2. The script may take several minutes to execute and does not print anything to the console in case of success.

    Copy
    % /bin/bash backup_restore.sh -n dct-services > dct-migration-backup1.zip

Restore

This is a destructive operation. The current application data on the DCT appliance will be permanently erased.

  1. To restore the DCT backup, the file must be uploaded to the resources/json/delphix/system/downloadAppBackup API endpoint of the DCT appliance, authenticated as a system user.

    1. The appliance_backup_restore.sh script can be used to ease the workflow. If network access to the DCT appliance from this machine is impossible, move the migration backup and the appliance_backup_restore.sh script to a machine which can connect to the DCT appliance over the network to perform API calls.

    2. Execute the script with the following flags:

      1. -n appliance hostname

      2. -l backup location

      3. -u system username (sysadmin)

      4. -p system user password

      5. -k disable TLS certification verification (if required)

    3. The script takes several minutes to execute:

    Copy
    % /bin/bash dct_appliance_restore.sh -n my-dct-appliance.company.co -l dct-migration-backup1.zip -u sysadmin -p sysadmin 
    {"type":"OKResult","status":"OK","result":{"type":"APISession","version":{"type":"APIVersion","major":1,"minor":4,"micro":3},"locale":null,"client":null},"job":null,"action":null}
    session established... logging in
    {"type":"OKResult","status":"OK","result":"USER-1","job":null,"action":null}
    logged in
    restoring DCT ...
    {"type":"OKResult","status":"OK","result":"","job":null,"action":"ACTION-119"}
  2. At this point, both DCT on Kubernetes and the DCT appliance are pulling information from (and can manage) registered engines.