Desativação de uma região híbrida

Neste guia, explicamos o procedimento para desativar uma região em um ambiente multirregional.

Desativação de uma região híbrida

  1. 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       apigee
    
    kubectl config use-context gke_example-org-1_us-west1_example-cluster-2
  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
  3. 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
  4. 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
  5. 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
    
  6. Verifique se não há pods restantes nos namespaces da Apigee:
    kubectl get pods -n apigee
    kubectl get pods -n apigee-system
    
  7. 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