Questo documento descrive i passaggi per ritirare un'organizzazione da un deployment ibrido. Il ritiro di un'organizzazione comporta l'eliminazione di tutti i dati correlati all'organizzazione in tutti i pod Cassandra in tutti i cluster Kubernetes.
Limitazioni
È possibile ritirare una sola organizzazione alla volta. Il ritiro simultaneo di più organizzazioni non è supportato.
Ottenere il nome dell'organizzazione
Alcuni comandi di queste istruzioni richiedono l'utilizzo di un nome dell'organizzazione formattato correttamente.
Per ottenere il nome dell'organizzazione da utilizzare nei comandi in questa pagina:
- Recupera il nome dell'organizzazione dal file
overrides.yamldell'organizzazione. - Se il nome dell'organizzazione contiene trattini ("-"), sostituiscili con trattini bassi ("_").
Istruzioni
Segui queste istruzioni per ritirare un'organizzazione da un deployment ibrido.
- Esegui il backup dell'organizzazione
- Se non è già abilitata, abilita i backup nel deployment ibrido. Nelle configurazioni multiregionali, utilizza il deployment ibrido che opera nella regione principale. Consulta la panoramica del backup di Cassandra per informazioni sui backup ibridi.
- 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.
-
Una volta completato il job di backup, utilizza le istruzioni "Controllare lo stato del job di backup" e "Controllare i log di backup" in Monitoraggio dei backup per verificare che il backup sia stato eseguito correttamente.
- (Facoltativo) Se hai configurato Apigee Telemetry (metriche e logger) nell'organizzazione da eliminare, segui questi passaggi per riconfigurarli in modo che i dati di metriche e log si applichino a una nuova organizzazione/progetto.
- Esegui questo comando per l'organizzazione a cui vuoi inviare i dati. Assicurati di utilizzare il file
overrides.yamlper l'organizzazione. Ad esempio, se l'organizzazione da ritirare è "test-dev", il fileoverrides.yamldeve contenere un campo dell'organizzazioneorg: test-dev.apigeectl apply --telemetry -f overrides.yaml
-
Esegui questo comando, assicurandoti di utilizzare l'organizzazione/il progetto corretti:
kubectl -n apigee get apigeetelemetry apigee-telemetry -oyaml | grep `gcpProjectID:`
- Elimina le risorse Kubernetes dell'organizzazione dal deployment ibrido.
Assicurati di utilizzare il file
overrides.yamlper l'organizzazione. Ad esempio, se l'organizzazione da ritirare è "test-dev", il fileoverrides.yamldeve contenere un campo dell'organizzazioneorg: test-dev.Per i deployment ibridi multiregionali, esegui questi comandi su 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 - Elimina i dati dell'organizzazione dalla distribuzione ibrida. Una volta completato questo passaggio, tutti i dati dell'organizzazione
non saranno più presenti nella distribuzione ibrida.
- Esegui l'accesso al pod
apigee-cassandra-default-0:kubectl exec -it -n apigee apigee-cassandra-default-0 -- /bin/bash
- Esegui questo comando. Copia l'elenco di tutti i nomi visualizzati nell'output.
Avrai bisogno di questo elenco in un secondo momento.
find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -printf "%f\n"
Consulta Recupera il nome dell'organizzazione per istruzioni su come trovare e preparare il ORG_NAME.
Esci dal pod
apigee-cassandra-default-0. - Crea un pod client di debug Cassandra come descritto in
Crea un contenitore client per il debug.
Passa al passaggio successivo dopo aver ricevuto un prompt
cqlsh. - Esegui questi comandi nel prompt
cqlsh:desc keyspaces;
Assicurati che questo comando non restituisca errori.
Per ogni nome nell'elenco creato in precedenza da
apigee apigee-cassandra-default-0, esegui i seguenti comandi:drop keyspace
; Esci dal pod client di debug di Cassandra.
- 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
multiregionali, esegui un riavvio graduale di tutti i pod Cassandra in ogni regione ibrida.
Esegui il comando seguente e verifica che lo stato sia "Running":
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
Runningutilizzando:kubectl get pods -n apigee
Riavvia il pod Cassandra successivo.
- Dopo aver eseguito i comandi
cqlsh, esegui i seguenti comandi su tutti i pod Cassandra nel deployment ibrido. Per i deployment ibridi multiregionali, esegui i comandi 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
Consulta Recupera il nome dell'organizzazione per istruzioni su come trovare e preparare il ORG_NAME.
find /opt/apigee/data/apigee-cassandra/ -iname '*ORG_NAME_hybrid' -type d -maxdepth 2 -exec rm -rf {} +
-
Esci dal pod Cassandra.
- Esegui l'accesso al pod