How to export databases from VCF Automation 9.x
search cancel

How to export databases from VCF Automation 9.x

book

Article ID: 425665

calendar_today

Updated On:

Products

VCF Automation

Issue/Introduction

Collecting and providing databases to Support in certain scenarios assists in faster resolution.

The steps provided in this article will assist you in collecting a specific database.

Environment

VCF Automation 9.x

Resolution

  1. SSH into one of the nodes (it does not matter which node you use):

    ssh vmware-system-user@<node ip>
  2. Set the shell specified by the SHELL environment variable:

    sudo -s
  3. Set KUBECONFIG and retrieve the credentials. First, get the username (for example, for the catalog_db owner):

    export KUBECONFIG=/etc/kubernetes/admin.conf
    kubectl get secret catalog-db-owner-user.vcfapostgres.credentials.postgresql.acid.zalan.do -n prelude -o jsonpath='{.data.username}' | base64 -d
  4. Next, get the password:

    kubectl get secret catalog-db-owner-user.vcfapostgres.credentials.postgresql.acid.zalan.do -n prelude -o jsonpath='{.data.password}' | base64 -d
  5. Identify the primary pod:

    export PRIMARY_POD=$(kubectl get pods -n prelude -l application=spilo,spilo-role=master -n prelude -o jsonpath='{.items[0].metadata.name}')
    echo "Using primary pod: $PRIMARY_POD"
  6. Generate a dump of a specific database (for example, catalog_db):

    kubectl exec $PRIMARY_POD -n prelude -c postgres -- \
      pg_dump -U postgres -d catalog_db --format=custom --compress=9 \
      > /tmp/catalog_db_backup_$(date +%Y%m%d_%H%M%S).dump