Questo argomento spiega come eliminare gli ambienti. Per un'introduzione, consulta Informazioni su ambienti e gruppi di ambienti.
Informazioni sull'eliminazione degli ambienti
Per eliminare correttamente un ambiente, devi apportare diverse modifiche alla configurazione e applicarle al cluster. Queste modifiche includono la rimozione della definizione dell'ambiente e dei riferimenti al file delle sostituzioni, l'eliminazione dei componenti synchronizer, runtime e udca e infine l'applicazione di nuovo delle sostituzioni per ripristinare il cluster senza includere l'ambiente da eliminare.
Il motivo per cui non puoi eliminare solo l'ambiente in un solo passaggio è che gli altri elementi,
synchronizer, runtime,
e udca sono collegati a ogni ambiente tramite le relative configurazioni interne. Puoi eliminare correttamente un ambiente solo eliminando e applicando di nuovo le regole.
Come eliminare un ambiente
Supponiamo che tu abbia due ambienti, test e prod. Nel file delle sostituzioni, le definizioni potrebbero essere simili a quelle riportate di seguito:
...
virtualhosts:
- name: default-test
hostAliases: ["api-test.example.com"]
sslCertPath: ./certs/fullchain-test.pem
sslKeyPath: ./certs/privkey-test.pem
env: test
- name: default-prod
hostAliases: ["api.example.com"]
sslCertPath: ./certs/fullchain.pem
sslKeyPath: ./certs/privkey.pem
env: prod
...
envs:
- name: test
serviceAccountPaths:
synchronizer: "your_keypath/synchronizer-manager-service-account.json
udca: "your_keypath/analytic-agent-service-account.json
- name: prod
serviceAccountPaths:
synchronizer: "your_keypath/synchronizer-manager-service-account.json
udca: "your_keypath/analytic-agent-service-account.json
...Per eliminare l'ambiente prod:
- Copia il file delle sostituzioni originale, quello che contiene sia le definizioni degli ambienti prod che test, in un nuovo file denominato, ad esempio,
prod-delete.yaml. - Apri
prod-delete.yaml. - Elimina la definizione dell'ambiente
testdaenvsevirtualhosts, lasciando solo le definizioni prod. Ad esempio:... virtualhosts: - name: default-prod hostAliases: ["api.example.com"] sslCertPath: ./certs/fullchain.pem sslKeyPath: ./certs/privkey.pem env: prod ... envs: - name: prod serviceAccountPaths: synchronizer: "your_keypath/synchronizer-manager-service-account.json udca: "your_keypath/analytic-agent-service-account.json ... - Rimuovi tutto il resto da
prod-delete.yamltranne la configurazione dicassandra, se presente:Dopo aver apportato le modifiche precedenti, il file delle sostituzioni dovrebbe avere il seguente aspetto:
... virtualhosts: - name: default-prod hostAliases: ["api.example.com"] sslCertPath: ./certs/fullchain.pem sslKeyPath: ./certs/privkey.pem env: prod envs: - name: prod serviceAccountPaths: synchronizer: "your_keypath/synchronizer-manager-service-account.json udca: "your_keypath/analytic-agent-service-account.json cassandra: replicaCount: 3 resources: requests: cpu: 3500m memory: 7Gi storage: storageClass: pd-ssd capacity: 10Gi - Esegui questo comando per eliminare i componenti specificati:
apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
- Apri il file delle sostituzioni originale (quello che include le definizioni degli ambienti di test e di produzione).
- Elimina la definizione dell'ambiente
proddagli elementienvsevirtualhosts. Nel file deve essere presente solo la definizione dell'ambientetest. - Applica il file delle sostituzioni modificato al cluster. Questo comando ricrea gli elementi eliminati e, poiché viene omesso, non ricrea l'ambiente
prod.apigeectl apply -f original-overrides.yaml -c runtime, udca, synchronizer
Salva le modifiche.
- Apri un browser e vai all'interfaccia utente ibrida in Apigee UI.
- Rimuovi l'ambiente seguendo i passaggi descritti in Eliminare un ambiente esistente nell'interfaccia utente ibrida.
L'operazione non è ancora completata. Ora devi aggiornare gli ambienti nell'interfaccia utente ibrida.