Dismissione di un'organizzazione ibrida

Questo documento illustra i passaggi per ritirare un'organizzazione da un deployment ibrido. Disattivazione un'organizzazione significa eliminare tutti i dati ad essa correlati tra tutti i pod Cassandra in cluster.

Limitazioni

È possibile eseguire la disattivazione di una sola organizzazione alla volta. Il ritiro di più organizzazioni contemporaneamente non è supportati.

Ottieni il nome dell'organizzazione

Alcuni comandi in queste istruzioni richiedono l'utilizzo di un nome dell'organizzazione formattato correttamente.

Per ottenere il nome dell'organizzazione da utilizzare nei comandi di questa pagina:

  1. Recupera il nome dell'organizzazione dal file overrides.yaml dell'organizzazione.
  2. Se il nome dell'organizzazione contiene trattini ("-"), sostituiscili con trattini bassi ("_").

Istruzioni

Segui queste istruzioni per eseguire il ritiro di un'organizzazione da un deployment ibrido.

  1. Esegui il backup dell'organizzazione
    1. Se non è già abilitato, abilita i backup nel deployment ibrido. In più regioni di configurazione, utilizza il deployment ibrido operativo nella regione principale. Consulta Panoramica del backup di Cassandra per informazioni sui backup ibridi.
    2. Attiva un job di backup ibrido utilizzando il seguente comando:

      kubectl create job -n apigee --from=cronjob/apigee-cassandra-backup BACKUP_JOB_NAME

      BACKUP_JOB_NAME può essere qualsiasi nome di contenitore valido.

    3. Una volta completato il processo di backup, utilizza la sezione "Verifica lo stato del job di backup" e "Controlla i log di backup" Istruzioni in Monitorare i backup per verificare che il backup sia andato a buon fine.

  2. (Facoltativo) Se hai configurato Apigee Telemetry (Metriche e Logger) nell'organizzazione da eliminare, segui questi passaggi per riconfigurarli in modo che i dati delle metriche e dei log vengano applicati a una nuova organizzazione/un nuovo progetto.
    1. Esegui questo comando per l'organizzazione a cui vuoi inviare i dati. Assicurati di utilizzare il file overrides.yaml per l'organizzazione. Ad esempio, se l'organizzazione da ritirare è "test-dev" il file overrides.yaml deve contenere un org: test-dev org.

      apigeectl apply --telemetry -f overrides.yaml

    2. Esegui questo comando, assicurandoti di utilizzare l'organizzazione/progetto corretto:
      kubectl -n apigee get apigeetelemetry apigee-telemetry -oyaml | grep `gcpProjectID:`
  3. Elimina le risorse Kubernetes dell'organizzazione dal deployment ibrido.

    Assicurati di utilizzare overrides.yaml per l'organizzazione. Ad esempio, se l'organizzazione da ritirare è "test-dev" il file overrides.yaml deve contenere un org: test-dev org.

    Per i deployment ibridi multiregionali, esegui questi comandi per ogni deployment ibrido in ogni regione.

    kubectl config current-context # Verify the current context is the correct context for the hybrid deployment
    apigeectl check-ready -f overrides.yaml # Check the deployment status
    apigeectl delete --settings virtualhost -f overrides.yaml
    apigeectl check-ready -f overrides.yaml # Check the deployment status
    apigeectl delete --all-envs -f overrides.yaml
    apigeectl check-ready -f overrides.yaml # Check the deployment status
    apigeectl delete --org -f overrides.yaml
    apigeectl check-ready -f overrides.yaml # Check the deployment status
        
  4. Elimina i dati dell'organizzazione dal deployment ibrido. Al termine di questo passaggio, tutti i dati dell'organizzazione verranno ritirati dal deployment ibrido.
    1. Esegui nel pod apigee-cassandra-default-0:
      kubectl exec -it -n apigee apigee-cassandra-default-0 -- /bin/bash
    2. Esegui questo comando. Copia l'elenco di tutti i nomi visualizzati nell'output. Questo elenco sarà necessario in un secondo momento.
      find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -printf "%f\n"

      Consulta Ottenere il nome dell'organizzazione per istruzioni su come trovare e preparare il ORG_NAME.

      Esci dal pod apigee-cassandra-default-0.

    3. Crea un pod client di debug Cassandra come descritto in Creare un contenitore client per il debug. Vai al passaggio successivo dopo aver ricevuto un messaggio di cqlsh.
    4. Esegui questi comandi nel prompt cqlsh:
      desc keyspaces;

      Assicurati che questo comando non restituisca errori.

      Per ogni nome nell'elenco creato in precedenza con apigee apigee-cassandra-default-0, esegui questi comandi:

      drop keyspace ;

      Esci dal pod del client di debug Cassandra.

    5. Esegui un riavvio in sequenza di tutti i pod Cassandra. Il riavvio dei pod Cassandra può essere eseguito in qualsiasi ordine, purché venga riavviato un solo pod Cassandra alla volta. Per i deployment in più regioni, esegui un riavvio graduale su tutti i pod Cassandra in ogni regione ibrida.

      Esegui il seguente comando e verifica che lo stato sia "In esecuzione":

      kubectl get apigeeds -n apigee

      Riavvia un singolo pod Cassandra con il seguente comando:

      kubectl delete pod -n apigee CASSANDRA_POD_NAME

      Attendi che il pod raggiunga lo stato Running utilizzando:

      kubectl get pods -n apigee

      Riavvia il pod Cassandra successivo.

    6. Dopo aver eseguito i comandi cqlsh, esegui i comandi seguenti su tutti i pod Cassandra nel deployment ibrido. Per i deployment ibridi multiregionali, esegui su tutti i pod Cassandra in tutte le regioni ibride.
      kubectl exec -it -n apigee CASSANDRA_POD_NAME -- /bin/bash
      find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2

      Per istruzioni su come trovare e preparare lo strumento, consulta la sezione Ottieni il nome dell'organizzazione ORG_NAME.

      find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -exec rm -rf {} +
    7. Esci dal pod Cassandra.