이 문서에서는 하이브리드 배포에서 조직을 사용 중단하는 단계를 간략하게 설명합니다. 조직을 해제하는 것은 모든 Kubernetes 클러스터의 모든 Cassandra 포드에서 조직과 관련된 모든 데이터를 삭제하는 것을 의미합니다.
제한사항
한 번에 조직 한 개만 해제할 수 있습니다. 여러 조직을 동시에 해제하는 것은 지원되지 않습니다.
조직 이름 가져오기
이 안내의 일부 명령어를 실행하려면 올바른 형식의 조직 이름을 사용해야 합니다.
이 페이지의 명령어에 사용할 조직 이름을 가져오려면 다음을 수행하세요.
- 조직의
overrides.yaml
파일에서 조직 이름을 검색합니다. - 조직 이름에 대시('-')가 포함되어 있으면 밑줄('_')로 바꿉니다.
안내
하이브리드 배포에서 조직을 사용 중단하려면 다음 안내를 따르세요.
- 조직 백업
- 아직 사용 설정되어 있지 않으면 하이브리드 배포에서 백업을 사용 설정합니다. 멀티 리전 설정에서는 운영 리전에서 작동하는 하이브리드 배포를 사용합니다. 하이브리드 백업에 대한 자세한 내용은 Cassandra 백업 개요를 참조하세요.
- 다음 명령어를 사용하여 하이브리드 백업 작업을 트리거합니다.
kubectl create job -n apigee --from=cronjob/apigee-cassandra-backup BACKUP_JOB_NAME
BACKUP_JOB_NAME은 유효한 컨테이너 이름일 수 있습니다.
-
백업 작업이 완료되면 백업 모니터링의 '백업 작업 상태 점검' 및 '백업 로그 확인' 안내에 따라 백업이 성공했는지 확인합니다.
- (선택사항) 조직에서 Apigee 원격 분석(측정항목 및 Logger)을 삭제하도록 구성한 경우 다음 단계에 따라 측정항목 및 로그 데이터가 새 조직/프로젝트에 적용되도록 재구성합니다.
- 데이터를 전송하려는 조직에 대해 이 명령어를 실행합니다. 조직의
overrides.yaml
파일을 사용해야 합니다. 예를 들어 해제할 조직이 'test-dev'인 경우overrides.yaml
파일에org: test-dev
조직 필드가 포함되어야 합니다.helm upgrade telemetry apigee-telemetry/ \ --namespace apigee \ --atomic \ -f OVERRIDES_FILE.yaml
-
올바른 조직/프로젝트를 사용하여 이 명령어를 실행합니다.
kubectl -n apigee get apigeetelemetry apigee-telemetry -oyaml | grep `gcpProjectID:`
- 하이브리드 배포에서 조직의 Kubernetes 리소스를 삭제합니다.
- 현재 컨텍스트가 소스 Kubernetes 클러스터에 올바른 컨텍스트인지 확인합니다.
kubectl config current-context
필요한 경우 Kubernetes 컨텍스트를 설정합니다.
현재 컨텍스트를 나열하여 각 클러스터의 컨텍스트 이름을 확인합니다.
kubectl config get-contexts
컨텍스트를 사용 중단하려는 클러스터와 리전으로 설정합니다.
kubectl config use-context CONTEXT_NAME
여기서 CONTEXT_NAME은 클러스터 및 리전의 컨텍스트 이름입니다.
예를 들면 다음과 같습니다.
kubectl config get-contexts
CURRENT NAME CLUSTER AUTHINFO NAMESPACE gke_example-org-1_us-central1_example-cluster-1 gke_example-org-1_us-central1_example-cluster-1 gke_example-org-1_us-central1_example-cluster-1 apigee * gke_example-org-1_us-central1_example-cluster-2 gke_example-org-1_us-central1_example-cluster-2 gke_example-org-1_us-central1_example-cluster-2 apigee gke_example-org-1_us-west1_example-cluster-2 gke_example-org-1_us-west1_example-cluster-2 gke_example-org-1_us-west1_example-cluster-2 apigeekubectl config use-context gke_example-org-1_us-west1_example-cluster-2
- virtualhost를 삭제합니다.
각 환경 그룹에 대해 이를 반복합니다.
helm -n apigee delete ENV_GROUP_NAME
- 환경을 삭제합니다. 각 환경에 대해 이를 반복합니다.
helm -n apigee delete ENV_NAME
- Apigee 조직을 삭제합니다.
helm -n apigee delete ORG_NAME
- 현재 컨텍스트가 소스 Kubernetes 클러스터에 올바른 컨텍스트인지 확인합니다.
- 하이브리드 배포에서 조직 데이터를 삭제합니다. 이 단계가 완료되면 모든 조직 데이터가 하이브리드 배포에서 사라집니다.
apigee-cassandra-default-0
포드에 실행합니다.kubectl exec -it -n apigee apigee-cassandra-default-0 -- /bin/bash
- 다음 명령어를 실행합니다. 출력에 표시된 모든 이름의 목록을 복사합니다.
이 목록은 나중에 필요합니다.
find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -printf "%f\n"
ORG_NAME을 찾고 준비하는 방법은 조직 이름 가져오기를 참조하세요.
apigee-cassandra-default-0
포드를 종료합니다. - 디버깅용 클라이언트 컨테이너 만들기에 설명된 대로 Cassandra 디버그 클라이언트 포드를 만듭니다.
cqlsh
프롬프트가 표시되면 다음 단계로 이동합니다. cqlsh
프롬프트에서 다음 명령어를 실행합니다.desc keyspaces;
이 명령어가 오류를 반환하지 않는지 확인합니다.
이전에
apigee apigee-cassandra-default-0
에서 만든 목록의 각 이름에 대해 다음 명령어를 실행합니다.drop keyspace
; Cassandra 디버그 클라이언트 포드를 종료합니다.
- 모든 Cassandra 포드의 순차적 재시작을 수행합니다. Cassandra 포드가 한 번에 하나만 다시 시작되는 경우에 한해 순서에 관계없이 Cassandra 포드를 재시작할 수 있습니다. 멀티 리전 배포의 경우 각 하이브리드 리전의 모든 Cassandra 포드에서 순차적 재시작을 수행합니다.
다음 명령어를 실행하고 상태가 '실행 중'으로 표시되는지 확인합니다.
kubectl get apigeeds -n apigee
다음 명령어를 사용하여 단일 Cassandra 포드를 다시 시작합니다.
kubectl delete pod -n apigee CASSANDRA_POD_NAME
다음을 사용하여 포드가
Running
상태가 될 때까지 기다립니다.kubectl get pods -n apigee
다음 Cassandra 포드를 다시 시작합니다.
cqlsh
명령어를 실행한 후 하이브리드 배포의 모든 Cassandra 포드에서 다음 명령어를 실행합니다. 멀티 리전 하이브리드 배포의 경우 모든 하이브리드 리전의 모든 Cassandra 포드에서 명령어를 실행합니다.kubectl exec -it -n apigee CASSANDRA_POD_NAME -- /bin/bash
find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2
ORG_NAME을 찾고 준비하는 방법은 조직 이름 가져오기를 참조하세요.
find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -exec rm -rf {} +
-
Cassandra 포드를 종료합니다.