이 페이지에서는 단일 리전에서 Cassandra를 복원하는 방법을 설명합니다.
단일 리전 배포에서 Apigee Hybrid는 단일 데이터 센터 또는 리전에 배포됩니다. 배포에 Apigee 조직이 여러 개 있으면 복원 프로세스가 모든 조직의 데이터를 복원합니다. 멀티 조직 설정의 경우 특정 조직을 복원할 수 없습니다.
백업에서 리전 복원
-
overrides.yaml
파일에서 Cassandra 복원 세부정보를 업데이트합니다.namespace: YOUR_RESTORE_NAMESPACE # Use the same namespace as in your original cluster. cassandra: hostNetwork: false ... restore: enabled: true serviceAccountPath: "SA_JSON_FILE_PATH" dbStorageBucket: "CLOUD_STORAGE_BUCKET_NAME" cloudProvider: "GCP" # required verbatim "GCP" (all caps) snapshotTimestamp: "TIMESTAMP" ... backup: enabled: false ...
각 항목의 의미는 다음과 같습니다.
속성 설명 namespace
YOUR_RESTORE_NAMESPACE
복원할 네임스페이스입니다. 원래 클러스터와 동일한 네임스페이스를 사용합니다.
cassandra:hostNetwork
hostNetwork
은 필수이며 항상false
로 설정해야 합니다.restore:enabled
복원은 기본적으로 사용 중지되어 있습니다. 이 속성을 true
로 설정해야 합니다.restore:serviceAccountPath
SA_JSON_FILE_PATH
백업용으로 만든 서비스 계정의 파일 시스템 경로입니다.
restore:dbStorageBucket
CLOUD_STORAGE_BUCKET_NAME
데이터 복원에 사용할 백업 보관 파일이 저장된 Google Cloud Storage 버킷의 이름입니다.
restore:cloudProvider
GCP
cloudProvider: "GCP"
속성은 필수입니다.restore:snapshotTimestamp
TIMESTAMP
복원할 백업 스냅샷의 타임스탬프입니다. 사용할 수 있는 타임스탬프를 확인하려면
dbStorageBucket
으로 이동하여 버킷에 있는 파일을 확인합니다. 각 파일 이름에는 타임스탬프 값이 포함됩니다. 예를 들면backup_20210203213003_apigee-cassandra-default-0.tgz
입니다.여기서 20210203213003은 해당 시점에 생성된 백업을 복원하려는 경우에 사용하는
snapshotTimestamp
값입니다.backup:enabled
이전에 이 속성을 true
로 설정했다면false
로 설정해야 합니다. -
시작할 초기 클러스터가 없는 경우 Helm을 위한 하이브리드 리전 사용 중단 문서에 따라 기존 Hybrid 설치를 초기 상태로 전환합니다(인증서 관리자는 설치된 상태로 두어도 무방함). 이렇게 하면 11단계의 시작 부분까지 Helm 런타임 설정 설명서를 따랐을 때와 동일한 상태가 됩니다.
-
Apigee 네임스페이스에 남은 포드가 없는지 확인합니다.
kubectl get pods -n APIGEE_NAMESPACE
-
CSI 백업을 사용하는 경우 다음을 실행하여 복원 프로세스에 사용할 볼륨 스냅샷이 표시되는지 확인합니다.
kubectl get volumesnapshot -n APIGEE_NAMESPACE
-
10단계: Helm을 사용하여 Apigee Hybrid 설치에 설명된 대로 모든 Hybrid 구성요소를 하나씩 설치합니다.
datastore
설치를 위한 명령어를 실행하면apigee-cassandra-restore
포드가 생성되지만apigee-org
구성요소를 설치한 후에만running
상태로 전환됩니다.
Cassandra 백업 및 복원에 대한 자세한 내용은 Cassandra 백업 개요를 참조하세요.
복원 작업 진행 상황을 확인하고 apigeeds
및 다른 모든 포드가 작동 중인지 확인합니다.
apigeeds
를 확인합니다.kubectl get apigeeds -n APIGEE_NAMESPACE
- 다른 모든 포드를 확인합니다.
kubectl get pods -n APIGEE_NAMESPACE
복원과 런타임 구성요소 정상 여부 확인이 성공적으로 완료된 후 클러스터에서 백업을 구성하는 것이 좋습니다.
overrides-restore.yaml
파일에서restore
구성을 삭제합니다.backup
구성을overrides-restore.yaml
파일에 추가합니다.- 다음 명령어를 사용하여
backup
구성을 적용합니다.helm upgrade datastore apigee-datastore/ \ --namespace APIGEE_NAMESPACE \ --atomic \ -f overrides-restore.yaml