本指南介绍在多区域环境中停用某个区域的步骤。
停用 Hybrid 区域
- 将 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
-
验证区域中的所有 Pod 是否都处于正在运行或已完成状态:
kubectl get pods -n apigee
kubectl get pods -n apigee-system
-
使用 helm 验证组件的版本:
helm -n apigee list
helm -n apigee-system list
例如:
helm -n apigee list
NAME NAMESPACE REVISION UPDATED STATUS CHART APP VERSION datastore apigee 2 2024-03-29 17:08:07.917848253 +0000 UTC deployed apigee-datastore-1.12.0 1.12.0 ingress-manager apigee 2 2024-03-29 17:21:02.917333616 +0000 UTC deployed apigee-ingress-manager-1.12.0 1.12.0 redis apigee 2 2024-03-29 17:19:51.143728084 +0000 UTC deployed apigee-redis-1.12.0 1.12.0 telemetry apigee 2 2024-03-29 17:16:09.883885403 +0000 UTC deployed apigee-telemetry-1.12.0 1.12.0 exampleor apigee 2 2024-03-29 17:21:50.899855344 +0000 UTC deployed apigee-org-1.12.0 1.12.0 -
验证 Cassandra 集群的状态。
列出 cassandra pod:
kubectl get pods -n APIGEE_NAMESPACE -l app=apigee-cassandra
例如:
kubectl get pods -n apigee -l app=apigee-cassandra
NAME READY STATUS RESTARTS AGE apigee-cassandra-default-0 1/1 Running 0 2h apigee-cassandra-default-1 1/1 Running 0 2h apigee-cassandra-default-2 1/1 Running 0 2h apigee-cassandra-default-3 1/1 Running 0 16m apigee-cassandra-default-4 1/1 Running 0 14m apigee-cassandra-default-5 1/1 Running 0 13m apigee-cassandra-default-6 1/1 Running 0 9m apigee-cassandra-default-7 1/1 Running 0 9m apigee-cassandra-default-8 1/1 Running 0 8m - 在您刚刚选择的上下文中删除 Apigee 实例:
一次删除一个组件。
helm -n apigee delete datastore
helm -n apigee delete telemetry
helm -n apigee delete ingress-manager
helm -n apigee delete redis
helm -n apigee delete ORG_NAME
对每个环境重复运行以下命令:
helm -n apigee delete ENV_NAME
对每个环境组重复运行以下命令:
helm -n apigee delete ENV_GROUP_NAME
helm -n apigee-system delete operator
- 确认 Apigee 命名空间中没有剩余的 Pod:
kubectl get pods -n apigee
kubectl get pods -n apigee-system
- Set the context to other existing regions and make sure the cassandra datacenter is removed
from the existing ring. The output should not show the removed data center details.
kubectl exec apigee-cassandra-default-0 -n apigee -- nodetool -u JMX_USER -pw JMX_PASSWORD status