Eliminazione di ambienti

In questo argomento viene spiegato 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 di ambiente e dei relativi riferimenti dal file di override, l'eliminazione dei componenti synchronizer, runtime e udca e, infine, la riapplicazione degli override per ripristinare il cluster senza includere l'ambiente che vuoi eliminare.

Il motivo per cui non puoi eliminare l'ambiente solo in un passaggio è perché gli altri elementi, synchronizer, runtime e udca sono connessi a ogni ambiente tramite le relative configurazioni interne. Solo se li elimini e applichi di nuovo, puoi eliminare correttamente un ambiente.

Eliminare un ambiente

Supponi di avere due ambienti, test e prod. Nel file di override, le definizioni potrebbero essere simili alla seguente:

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

  1. Copia il file di override originale, quello che contiene le definizioni dell'ambiente prod e test, in un nuovo file chiamato, ad esempio, prod-delete.yaml.
  2. Apri prod-delete.yaml.
  3. Elimina la definizione di ambiente test da envs e virtualhosts, lasciando solo le definizioni di 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 cassandra, se presente:

    Dopo aver apportato le modifiche precedenti, il file di override dovrebbe essere simile al seguente:

    ...
    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 di override originale (quello che include le definizioni dell'ambiente di test e di produzione).
  7. Elimina la definizione di ambiente prod dagli elementi envs e virtualhosts. Vuoi che la definizione dell'ambiente test sia presente nel file.
  8. Applica il file di override modificato al tuo 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. Non hai finito. Ora devi aggiornare gli ambienti nella UI ibrida.

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