As a best practice, you must back up all the data on the Client nodes within the Client group to perform operations such as restoring or cloning.

Backing up Client node data lets you save data. If an operation fails, you can restore the lost or corrupted data.

Prerequisites

  • Familiarize yourself with the backup and restore consideration for your VMware Blockchain nodes. See VMware Blockchain Node Backup and Restore Considerations on AWS.

  • Verify that you have access to the latest version of VMware Blockchain.

  • Identify the following details from the VMware Blockchain Orchestrator output directory, /home/blockchain/output.

    Blockchain ID

    Current blockchain version

    Replica node IP address

    Client node IP address

    VMware Blockchain vmbc user password for all the Replica and Client node VMs

  • If the Concord operator containers were deployed, verify that the Concord operator container is running. See Instantiate the Concord Operator Container for AWS.

Procedure

  1. SSH into the VMware Blockchain Orchestrator appliance.
  2. Enter the login credentials for the blockchain user account.
  3. Navigate to the /home/blockchain directory.
  4. Stop all the applications that invoke connection requests to the Daml Ledger.
  5. Stop all the Client node components.
    curl -X POST 127.0.0.1:8546/api/node/management?action=stop
  6. Verify that all the containers except the agent and deployed Concord operator container are running on the selected Client node.
    sudo docker ps -a

    If the sudo docker ps -a command shows that some containers, with the exception of agent and deployed Concord operator container, are still running, rerun the command or use the sudo docker stop <container_name> command to stop the containers.

  7. Back up data on each of the Client nodes in the group.
    sudo tar cvzf <backup_name> /mnt/data/db 
    #For large data 
    cd /mnt/data/ 
    sudo nohup tar cvzf <backup_name> db & 
    sudo tail -f nohup.out 
    #Wait for the tar to complete

    The <backup_name> must end in .tar.gz. For example, db-backup.tar.gz.

    The large data backup command might time out due to SSH inactivity. Incrementally rerun the command.

  8. (Optional) If the Concord operator containers were deployed, pause all the Replica nodes at the same checkpoint and check the status periodically until all the Replica nodes status is true.

    Any blockchain node or nodes in state transfer or down for other reasons cause the Wedge status command status to return false. The Wedge status command returns true when state transfer completes and all Replica nodes are healthy, allowing all Replica nodes to stop at the same checkpoint successfully.

    The Wedge command might take some time to complete. If the Wedge command times out, the system operator must execute the Wedge command again.

    sudo docker exec -it operator sh -c './concop unwedge' 
    sudo docker exec -it operator sh -c './concop wedge status' 
  9. Back up the data on each of the Client nodes in the group.
    1. In the EC2 interface, select the VMware Blockchain node from the Amazon EC2 page and navigate to the Storage tab.
    2. In the EC2 interface, select the data volume ID, navigate to the EBS volumes, and select Actions > Create Snapshot.

      This step creates a snapshot of the EBS volume you can use for restoring your data.

  10. Save the snapshot ID and the node IP address.

    This information is used to map the snapshot and node during the Client node restore process.

  11. Start all the Client node components.
    curl -X POST 127.0.0.1:8546/api/node/management?action=start
  12. Start all the Replica nodes in the Replica Network.
    curl -X POST 127.0.0.1:8546/api/node/management?action=start
  13. Start all the applications that invoke connection requests to the Daml Ledger.