Questo documento illustra i passaggi per il ritiro di un'organizzazione da un deployment ibrido. Il ritiro di un'organizzazione comporta l'eliminazione di tutti i dati relativi all'organizzazione in tutti i pod Cassandra di tutti i cluster Kubernetes.
Limitazioni
È possibile eseguire la disattivazione di una sola organizzazione alla volta. Il ritiro simultaneo di più organizzazioni non è supportato.
Ottenere 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 in questa pagina:
- Recupera il nome dell'organizzazione dal file
overrides.yaml
dell'organizzazione. - 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.
- Esegui il backup dell'organizzazione
- Se non sono già abilitati, attiva i backup nel deployment ibrido. Nelle configurazioni multiregione, utilizza il deployment ibrido operativo nella regione principale. Consulta 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.
-
Al termine del job di backup, segui le istruzioni "Verifica lo stato del job di backup" e "Verifica i log di backup" in Monitoraggio dei backup per verificare che il backup sia riuscito.
- (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.
- 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 fileoverrides.yaml
deve contenere un campoorg: test-dev
dell'organizzazione.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.yaml
per l'organizzazione. Ad esempio, se l'organizzazione da ritirare è "test-dev", il fileoverrides.yaml
deve contenere un campoorg: test-dev
dell'organizzazione.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
- Elimina i dati dell'organizzazione dal deployment ibrido. Al termine di questo passaggio, tutti i dati dell'organizzazione
non saranno più presenti nel deployment ibrido.
- Esegui nel 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.
Questo elenco ti servirà 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
. - Crea un pod di client di debug Cassandra come descritto in
Creare un contenitore client per il debug.
Vai al passaggio successivo dopo aver ricevuto una richiesta
cqlsh
. - Esegui i seguenti comandi nel prompt
cqlsh
:desc keyspaces;
Assicurati che questo comando non restituisca errori.
Per ogni nome nell'elenco creato in precedenza dal file
apigee apigee-cassandra-default-0
, esegui i seguenti comandi:drop keyspace
; Esci dal pod del client di debug Cassandra.
- Esegui un riavvio graduale 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
Riavviare il pod Cassandra successivo.
- Dopo aver eseguito i comandi
cqlsh
, esegui i comandi seguenti su tutti i pod Cassandra nel deployment ibrido. Per i deployment ibridi multi-regione, 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 Ottenere 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 nel pod