Neste guia, explicamos o procedimento para desativar uma região em um ambiente multirregional.
Desativação de uma região híbrida
- Defina os contextos do Kubernetes para a região que precisa ser desativada.
Liste seus contextos atuais para ver o nome de contexto de cada cluster:
kubectl config get-contexts
Defina o contexto como o cluster e a região que você quer desativar:
kubectl config use-context CONTEXT_NAME
Em que CONTEXT_NAME é o nome do contexto do cluster e da região.
Exemplo:
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
-
Verifique se todos os pods na região estão com o estado concluído ou em execução:
kubectl get pods -n apigee
kubectl get pods -n apigee-system
-
Valide a versão de componentes usando o Helm:
helm -n apigee list
helm -n apigee-system list
Exemplo:
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 -
Valide o status do cluster do Cassandra.
Liste os pods do Cassandra:
kubectl get pods -n APIGEE_NAMESPACE -l app=apigee-cassandra
Exemplo:
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 - Exclua a instância da Apigee no contexto que você acabou de selecionar:
Exclua um componente de cada vez.
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
Repita o comando a seguir para cada ambiente:
helm -n apigee delete ENV_NAME
Repita o comando a seguir para cada grupo de ambientes:
helm -n apigee delete ENV_GROUP_NAME
helm -n apigee-system delete operator
- Verifique se não há pods restantes nos namespaces da Apigee:
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