Eliminazione di ambienti

Questo argomento spiega come eliminare gli ambienti. Per un'introduzione, vedi Informazioni sugli ambienti e sui gruppi di ambienti.

Informazioni sull'eliminazione degli ambienti

Per eliminare un ambiente correttamente, devi apportare diverse modifiche alla configurazione e applicarle al cluster. Queste modifiche includono la rimozione della definizione e i riferimenti dell'ambiente dal file degli 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 collegati a ciascun ambiente tramite le rispettive configurazioni interne. Solo eliminandoli e riapplicandoli, puoi eliminare un ambiente correttamente.

Come eliminare un ambiente

Supponi di avere due ambienti, test e prod. Nel file degli override, 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, segui questi passaggi:

  1. Copia il file di override originale, che contiene le definizioni dell'ambiente prod e test, in un nuovo file denominato, 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 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 di override originale, che include le definizioni dell'ambiente di test e di produzione.
  7. Elimina la definizione dell'ambiente prod dagli elementi envs e virtualhosts. Vuoi che nel file sia presente solo la definizione di ambiente test.
  8. Applica il file degli override modificati 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. Non hai ancora finito. Ora devi aggiornare gli ambienti nella UI ibrida.

  11. Apri un browser e vai alla UI ibrida su Apigee UI.
  12. Rimuovi l'ambiente seguendo i passaggi descritti in Eliminare un ambiente esistente nella UI ibrida.