재해로 인해 Apigee Hybrid 인스턴스의 복구 불가능한 데이터 손실과 같은 치명적인 오류가 발생할 경우 백업을 사용하여 처음부터 Apigee 인프라를 복원할 수 있습니다.
복원은 백업 위치에서 데이터를 가져와 노드 수가 동일한 새 Cassandra 클러스터에 복원합니다. 이전 Cassandra 클러스터에서는 클러스터 데이터를 가져오지 않습니다.
복원 프로세스의 목표는 스냅샷의 백업 데이터를 사용하여 Apigee Hybrid 설치를 이전 작동 상태로 되돌리는 것입니다.
다음과 같은 시나리오에서는 백업을 사용하여 복원하지 않는 것이 좋습니다.
Cassandra 노드에 오류가 발생함
apps, developers, api_credentials와 같은 데이터가 실수로 삭제됨
멀티 리전 하이브리드 배포에서 하나 이상의 리전이 작동 중지됨
Apigee Cassandra 배포와 운영 아키텍처는 단일 리전에 대해 중복성과 내결함성을 처리합니다.
대부분의 경우 권장되는 하이브리드의 멀티 리전 프로덕션 구현은 백업에서 복원하는 대신 리전 해제 및 확장 절차를 사용하여 다른 라이브 리전에서 리전 오류를 복구할 수 있음을 의미합니다.
Cassandra 백업에서 복원을 구현하기 전에 다음 사항에 유의하세요.
다운타임: 복원이 진행되는 동안 다운타임이 발생합니다.
데이터 손실: 유효한 백업이 마지막으로 실행된 시간과 복원이 완료된 시간 사이에 데이터 손실이 발생합니다.
복원 시간: 복원 시간은 데이터 및 클러스터의 크기에 따라 다릅니다.
데이터 선택: 특정 데이터만 선택하여 복원할 수 없습니다. 복원은 내가 선택한 전체 백업을 복원합니다.
멀티 리전 복원
여러 리전에 Apigee Hybrid를 설치한 경우 복원을 수행하기 전에 복원하려는 리전의 재정의 파일을 확인하여 cassandra:hostNetwork가 false로 설정되었는지 확인해야 합니다. 자세한 내용은 여러 리전에서 복원을 참조하세요.
기본 요건
다음 기본 요건을 모두 충족하는지 확인합니다. 복원을 진행하기 전에 기본 요건 실패를 조사합니다.
다음 명령어를 사용하여 모든 Cassandra 포드가 준비되어 실행되는지 확인합니다.
kubectl get pods -n APIGEE_NAMESPACE -l app=apigee-cassandra
다음 예시와 같은 출력이 표시됩니다.
NAME READY STATUS RESTARTS AGE
apigee-cassandra-default-0 1/1 Running 0 14m
apigee-cassandra-default-1 1/1 Running 0 13m
apigee-cassandra-default-2 1/1 Running 0 11m
exampleuser@example hybrid-files %
다음 명령어를 사용하여 Cassandra StatefulSet에 모든 포드가 실행 중인 것으로 표시되는지 확인합니다.
kubectl get sts -n APIGEE_NAMESPACE -l app=apigee-cassandra
다음 예시와 같은 출력이 표시됩니다.
NAME READY AGE
apigee-cassandra-default 3/3 15m
다음 명령어를 실행하여 ApigeeDatastore 리소스가 실행 중 상태인지 확인합니다.
kubectl get apigeeds -n APIGEE_NAMESPACE
다음 예시와 같은 출력이 표시됩니다.
NAME STATE AGE
default running 16m
다음 명령어를 사용하여 모든 Cassandra PVC가 결합됨 상태인지 확인합니다.
kubectl get pvc -n APIGEE_NAMESPACE -l app=apigee-cassandra
다음 예시와 같은 출력이 표시됩니다.
NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE
cassandra-data-apigee-cassandra-default-0 Bound pvc-a14184e7-8745-4b30-8069-9d50642efe04 10Gi RWO standard-rwo 17m
cassandra-data-apigee-cassandra-default-1 Bound pvc-ed129dcb-4706-4bad-a692-ac7c78bad64d 10Gi RWO standard-rwo 15m
cassandra-data-apigee-cassandra-default-2 Bound pvc-faed0ad1-9019-4def-adcd-05e7e8bb8279 10Gi RWO standard-rwo 13m
[[["이해하기 쉬움","easyToUnderstand","thumb-up"],["문제가 해결됨","solvedMyProblem","thumb-up"],["기타","otherUp","thumb-up"]],[["이해하기 어려움","hardToUnderstand","thumb-down"],["잘못된 정보 또는 샘플 코드","incorrectInformationOrSampleCode","thumb-down"],["필요한 정보/샘플이 없음","missingTheInformationSamplesINeed","thumb-down"],["번역 문제","translationIssue","thumb-down"],["기타","otherDown","thumb-down"]],["최종 업데이트: 2025-09-11(UTC)"],[[["\u003cp\u003eRestoration of Cassandra in Apigee hybrid is used to recover from catastrophic failures by restoring data from backups to a new cluster, bringing the system back to a previously operational state.\u003c/p\u003e\n"],["\u003cp\u003eRestoration from backups is not recommended for common issues like node failures, accidental data deletion, or region outages in multi-region setups, as Apigee's architecture handles these scenarios.\u003c/p\u003e\n"],["\u003cp\u003ePerforming a restore involves downtime and potential data loss between the last backup and the completion of the restoration, and it will restore the entire backup, not specific data.\u003c/p\u003e\n"],["\u003cp\u003ePrior to starting the restoration process, it is required to verify that the Cassandra pods, statefulset, ApigeeDatastore, PVCs, PVs, and Apigee Controller are all in the correct status.\u003c/p\u003e\n"],["\u003cp\u003eRestoration steps differ between single and multi-region deployments, and it is crucial to use a backup file that matches the hybrid installation version to ensure compatibility.\u003c/p\u003e\n"]]],[],null,["| You are currently viewing version 1.13 of the Apigee hybrid documentation. For more information, see [Supported versions](/apigee/docs/hybrid/supported-platforms#supported-versions).\n\nThis page provides an overview of restoring Cassandra in Apigee hybrid.\n\nWhy use restore?\n\nYou can use [backups](/apigee/docs/hybrid/v1.13/cassandra-backup-overview) to restore Apigee infrastructure from the ground up in the event of\ncatastrophic failures, such as irrecoverable data loss in your Apigee hybrid instance from a disaster.\nRestoration takes your data from the backup location and restores the data into a new Cassandra\ncluster with the same number of nodes. No cluster data is taken from the old Cassandra cluster.\nThe goal of the restoration process is to bring an Apigee hybrid installation back to a\npreviously operational state using backup data from a snapshot.\n\nThe use of backups to restore is not recommended for the following scenarios:\n\n- Cassandra node failures.\n- Accidental deletion of data like `apps`, `developers`, and `api_credentials`.\n- One or more regions going down in a multi-region hybrid deployment.\n\nApigee Cassandra deployments and operational architecture take care of redundancy and fault tolerance for a single region.\nIn most cases, the recommended multi-region production implementation of hybrid means that a region failure can be recovered from\nanother live region using [region decommissioning and expansion procedures]()\ninstead of restoring from a backup.\n\nBefore you begin implementing a restore from a Cassandra backup, be aware of the following:\n\n- **Downtime:** There will be downtime for the duration of the restoration.\n- **Data loss:** There will be data loss between the last valid backup and the time the restoration is complete.\n- **Restoration time:** Restoration time depends on the size of the data and cluster.\n- **Cherry-picking data:** You cannot select only specific data to restore. Restoration restores the entire backup you select.\n\n| **Note:** When restoring an Apigee hybrid installation from backup, ensure that the backup file is created from the same hybrid version as the installation. For example, if you have a backup file created from Apigee hybrid 1.5.x, use it to restore only an Apigee hybrid 1.5.x installation. If there is a version mismatch between the backup file and the hybrid installation, the restoration might not work and Apigee does not support any issues that arise because of such restoration.\n\nMulti-region restores\n\nIf you installed Apigee hybrid into multiple regions, you must check the overrides file\nfor the region you are restoring to make sure the `cassandra:hostNetwork` is set\nto `false` before you perform the restoration. For more information, see\n[Restoring in multiple regions](./restore-cassandra-multi-region).\n\nPrerequisites\n\n\nCheck all the following prerequisites are successful. Investigate any prerequisite failures before\nproceeding with restoration.\n\n1. Verify all Cassandra pods are up and running with the following command. \n\n ```\n kubectl get pods -n APIGEE_NAMESPACE -l app=apigee-cassandra\n ```\n\n\n Your output should look something like the following example: \n\n ```\n NAME READY STATUS RESTARTS AGE\n apigee-cassandra-default-0 1/1 Running 0 14m\n apigee-cassandra-default-1 1/1 Running 0 13m\n apigee-cassandra-default-2 1/1 Running 0 11m\n exampleuser@example hybrid-files %\n \n ```\n2. Verify the Cassandra statefulset shows all pods are running with the following command. \n\n ```\n kubectl get sts -n APIGEE_NAMESPACE -l app=apigee-cassandra\n ```\n\n\n Your output should look something like the following example: \n\n ```\n NAME READY AGE\n apigee-cassandra-default 3/3 15m\n \n ```\n3. Verify the ApigeeDatastore resource is in a *running* state with the following command. \n\n ```\n kubectl get apigeeds -n APIGEE_NAMESPACE\n ```\n\n\n Your output should look something like the following example: \n\n ```\n NAME STATE AGE\n default running 16m\n \n ```\n4. Verify all Cassandra PVCs are in *Bound* status with the following command. \n\n ```\n kubectl get pvc -n APIGEE_NAMESPACE -l app=apigee-cassandra\n ```\n\n\n Your output should look something like the following example: \n\n ```\n NAME STATUS VOLUME CAPACITY ACCESS MODES STORAGECLASS AGE\n cassandra-data-apigee-cassandra-default-0 Bound pvc-a14184e7-8745-4b30-8069-9d50642efe04 10Gi RWO standard-rwo 17m\n cassandra-data-apigee-cassandra-default-1 Bound pvc-ed129dcb-4706-4bad-a692-ac7c78bad64d 10Gi RWO standard-rwo 15m\n cassandra-data-apigee-cassandra-default-2 Bound pvc-faed0ad1-9019-4def-adcd-05e7e8bb8279 10Gi RWO standard-rwo 13m\n \n ```\n5. Verify all Cassandra PVs are in Bound status with the following command. \n\n ```\n kubectl get pv -n APIGEE_NAMESPACE\n ```\n\n\n Your output should look something like the following example: \n\n ```\n NAME CAPACITY ACCESS MODES RECLAIM POLICY STATUS CLAIM STORAGECLASS REASON AGE\n pvc-a14184e7-8745-4b30-8069-9d50642efe04 10Gi RWO Delete Bound apigee/cassandra-data-apigee-cassandra-default-0 standard-rwo 17m\n pvc-ed129dcb-4706-4bad-a692-ac7c78bad64d 10Gi RWO Delete Bound apigee/cassandra-data-apigee-cassandra-default-1 standard-rwo 16m\n pvc-faed0ad1-9019-4def-adcd-05e7e8bb8279 10Gi RWO Delete Bound apigee/cassandra-data-apigee-cassandra-default-2 standard-rwo 14m\n \n ```\n6. Verify the Apigee Controller resource is in Running status with the following command. \n\n ```\n kubectl get pods -n APIGEE_NAMESPACE-system -l app=apigee-controller\n ```\n\n\n Your output should look something like the following example: \n\n ```\n NAME READY STATUS RESTARTS AGE\n apigee-controller-manager-856d9bb7cb-cfvd7 2/2 Running 0 20m\n \n ```\n\nHow to restore?\n\nCassandra's restoration steps differ slightly depending on whether your Apigee hybrid is\ndeployed in a single region or multiple regions. For the detailed restoration steps,\nsee the following documentation:\n\n- [Restoring in a single region](/apigee/docs/hybrid/v1.13/restore-cassandra-single-region)\n- [Restoring in a multi-region](/apigee/docs/hybrid/v1.13/restore-cassandra-multi-region)"]]