Eliminazione di ambienti

Questo argomento spiega come eliminare gli ambienti. Per un'introduzione, vedi 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 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 in un solo passaggio è che gli altri elementi, synchronizer, runtime, e udca sono collegati a ogni ambiente tramite le loro configurazioni interne. Solo eliminandoli e riapplicandoli puoi eliminare correttamente un ambiente.

Come eliminare un ambiente

Supponiamo che tu abbia due ambienti, test e prod. Nel file di override, le definizioni potrebbero avere un aspetto simile a questo:

...
envs:
  - name: test
    sslCertPath: "your_certpath/ingress-cert.crt"
    sslKeyPath: "your_keypath/ingress-key.key"
    hostAlias: "apitest.example.com"
    serviceAccountPaths:
      synchronizer: "your_keypath/synchronizer-manager-service-account.json
      udca: "your_keypath/analytic-agent-service-account.json
  - name: prod
    sslCertPath: "your_certpath/ingress-cert.crt"
    sslKeyPath: "your_keypath/ingress-key.key"
    hostAlias: "apiprod.example.com"
    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 di override originale, quello che contiene le definizioni degli ambienti prod e test, in un nuovo file chiamato, ad esempio, prod-delete.yaml.
  2. Apri prod-delete.yaml.
  3. Elimina la definizione dell'ambiente test da envs, lasciando solo la definizione prod. Ad esempio:
    ...
    envs:
      - name: prod
        sslCertPath: "your_certpath/ingress-cert.crt"
        sslKeyPath: "your_keypath/ingress-key.key"
        hostAlias: "apitest.example.com"
        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 sopra indicate, il file di override dovrebbe essere simile al seguente:

    ...
    envs:
      - name: prod
        sslCertPath: "your_certpath/ingress-cert.crt"
        sslKeyPath: "your_keypath/ingress-key.key"
        hostAlias: "apitest.example.com"
        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. Run this command to delete the specified components:
    apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
  6. Apri il file di override originale (quello che include le definizioni degli ambienti di test e di produzione).
  7. Elimina la definizione dell'ambiente prod dall'elemento envs. Vuoi che nel file sia presente solo la definizione dell'ambiente test.
  8. Applica il file di override modificato al cluster. Questo comando ricrea gli elementi eliminati e, poiché è omesso, non ricrea l'ambiente prod.
    apigeectl apply -f prod-delete.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 all'interfaccia utente ibrida all'indirizzo UI di Apigee.
  12. Rimuovi l'ambiente seguendo i passaggi descritti in Eliminare un ambiente esistente nell'interfaccia utente ibrida.