Eliminazione di ambienti

Questo argomento spiega come eliminare gli ambienti. Per un'introduzione, consulta Informazioni sugli ambienti e sui 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 avere il seguente aspetto:

...
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:

  1. 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.
  2. Apri prod-delete.yaml.
  3. Elimina la definizione dell'ambiente test da envs e virtualhosts, 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
    ...
  4. Rimuovi tutto il resto da prod-delete.yaml tranne la configurazione di cassandra, 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
  5. Esegui questo comando per eliminare i componenti specificati:
    apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
  6. Apri il file delle sostituzioni originali (quello che include le definizioni degli ambienti di test e di produzione).
  7. Elimina la definizione dell'ambiente prod dagli elementi envs e virtualhosts. Nel file deve essere presente solo la definizione dell'ambiente test.
  8. 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
  9. Salva le modifiche.

  10. L'operazione non è ancora completata. Ora devi aggiornare gli ambienti nell'interfaccia utente ibrida.

  11. Apri un browser e vai all'interfaccia utente ibrida in Apigee UI.
  12. Rimuovi l'ambiente seguendo i passaggi descritti in Eliminare un ambiente esistente nell'interfaccia utente ibrida.