Upon completing the restore operation, you can use the control plane to confirm that your organization's developers,
apps, and API products were restored correctly.
To view the restored data:
On the command line, get or refresh your gcloud authentication credentials, as the following
example shows:
TOKEN=$(gcloud auth print-access-token)
Use the following command to validate your organization's data, where APIGEE_ORG is
an Apigee organization deployed in the cluster:
DNS Configuration for new cluster and traffic cutover
Once you are satisfied with validation, redirect the traffic to the new cluster and change the dns
entry to new ingress EXTERNAL-IP address.
Get the EXTERNAL-IP with the following command:
kubectl get svc -n istio-system
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE
istio-ingressgateway LoadBalancer 10.11.123.45 34.56.78.90 15021:32225/TCP,80:32208/TCP,443:31942/TCP,15012:32689/TCP,15443:31936/TCP 1d
[[["Easy to understand","easyToUnderstand","thumb-up"],["Solved my problem","solvedMyProblem","thumb-up"],["Other","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Other","otherDown","thumb-down"]],["Last updated 2025-08-29 UTC."],[],[],null,["# Viewing restore logs\n\nThis page describes how you can check the restore job logs to confirm completion and validate the restore.\n\nVerifying completion\n--------------------\n\nTo verify that the restore operation completed successfully:\n\n1.\n Use the following command to check if the restore operation completed without error:\n\n ```\n kubectl get pods -n -l job-name=apigee-cassandra-restore\n ```\n\n\n The output is similar to the following: \n\n ```text\n NAME READY STATUS RESTARTS AGE\n apigee-cassandra-restore-6tttv 0/1 Completed 0 23m\n ```\n2.\n Use the following command to check if the cassandra replicas are up and running:\n\n ```\n kubectl get pods -n APIGEE_NAMESPACE -l app=apigee-cassandra\n ```\n\n\n The output is similar to the following: \n\n ```text\n NAME READY STATUS RESTARTS AGE\n apigee-cassandra-default-0 1/1 Running 0 24m\n apigee-cassandra-default-1 1/1 Running 0 23m\n apigee-cassandra-default-2 1/1 Running 0 22m\n ```\n\nViewing restore logs\n--------------------\n\nTo view the restore logs of a Kubernetes pod, run the\n`kubectl logs -f \u003cpod_name\u003e -n \u003cnamespace\u003e`\ncommand: \n\n```\nkubectl logs -f CASSANDRA_POD_NAME -n APIGEE_NAMESPACE\n```\n\nFor example: \n\n```\nkubectl logs -f apigee-cassandra-restore-b4lgf -n apigee\n```\n\nValidating restore\n------------------\n\nUpon completing the restore operation, you can use the control plane to confirm that your organization's developers,\napps, and API products were restored correctly.\n\nTo view the restored data:\n\n1. On the command line, get or refresh your gcloud authentication credentials, as the following\n example shows:\n\n ```\n TOKEN=$(gcloud auth print-access-token)\n ```\n2. Use the following command to validate your organization's data, where \u003cvar translate=\"no\"\u003eAPIGEE_ORG\u003c/var\u003e is an Apigee organization deployed in the cluster:\n - For developer data:\n\n ### No data residency\n\n ```\n curl -s -H \"$TOKEN\" https://apigee.googleapis.com/v1/organizations/APIGEE_ORG/developers\n ```\n\n ### Data residency\n\n ```\n curl -s -H \"$TOKEN\" https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/APIGEE_ORG/developers\n ```\n - For apps data:\n\n ### No data residency\n\n ```\n curl -s -H \"$TOKEN\" https://apigee.googleapis.com/v1/organizations/APIGEE_ORG/apps\n ```\n\n ### Data residency\n\n ```\n curl -s -H \"$TOKEN\" https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/APIGEE_ORG/apps\n ```\n - For API product data:\n\n ### No data residency\n\n ```\n curl -s -H \"$TOKEN\" https://apigee.googleapis.com/v1/organizations/APIGEE_ORG/apiproducts\n ```\n\n ### Data residency\n\n ```\n curl -s -H \"$TOKEN\" https://CONTROL_PLANE_LOCATION-apigee.googleapis.com/v1/organizations/APIGEE_ORG/apiproducts\n ```\n\n| **Note**: Confirm that your APIs are working as expected before adding a restored cluster to your traffic.\n\nDNS Configuration for new cluster and traffic cutover\n-----------------------------------------------------\n\n\nOnce you are satisfied with validation, redirect the traffic to the new cluster and change the dns\nentry to new ingress `EXTERNAL-IP` address.\n\nGet the `EXTERNAL-IP` with the following command: \n\n```\nkubectl get svc -n istio-system\n``` \n\n```text\nNAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE\nistio-ingressgateway LoadBalancer 10.11.123.45 34.56.78.90 15021:32225/TCP,80:32208/TCP,443:31942/TCP,15012:32689/TCP,15443:31936/TCP 1d\n```\n\n\u003cbr /\u003e"]]