Elimine ambientes

Este tópico explica como eliminar ambientes. Para uma introdução, consulte o artigo Acerca dos ambientes e dos grupos de ambientes.

Acerca da eliminação de ambientes

Para eliminar um ambiente corretamente, tem de fazer várias alterações de configuração e aplicá-las ao cluster. Estas alterações incluem a remoção da definição do ambiente do ficheiro de substituições, a eliminação dos componentes synchronizer, runtime e udca e, finalmente, a reaplicação das substituições para restaurar o cluster sem incluir o ambiente que quer eliminar.

O motivo pelo qual não pode eliminar apenas o ambiente num único passo é porque os outros elementos, synchronizer, runtime, e udca estão ligados a cada ambiente através das respetivas configurações internas. Só pode eliminar um ambiente corretamente se o eliminar e voltar a aplicá-lo.

Como eliminar um ambiente

Suponha que tem dois ambientes, test e prod. No ficheiro de substituições, as definições podem ter um aspeto semelhante ao seguinte:

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

Para eliminar o ambiente prod, siga estes passos:

  1. Copie o ficheiro de substituições original, ou seja, o que contém as definições dos ambientes prod e test, para um novo ficheiro com o nome, por exemplo, prod-delete.yaml.
  2. Abra o prod-delete.yaml.
  3. Elimine a definição do ambiente test de envs, deixando apenas a definição prod. Por exemplo:
    ...
    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. Remova tudo o resto de prod-delete.yaml , exceto a configuração cassandra, se estiver presente:

    Depois de fazer as alterações acima, o ficheiro de substituições deve ter um aspeto semelhante ao seguinte:

    ...
    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. Abra o ficheiro de substituições original (o que inclui as definições do ambiente de teste e de produção).
  7. Elimine a definição do ambiente prod do elemento envs. Só quer que a definição do ambiente test esteja presente no ficheiro.
  8. Aplique o ficheiro de substituições modificado ao seu cluster. Este comando recria os elementos eliminados e, como é omitido, não recria o ambiente prod.
    apigeectl apply -f prod-delete.yaml -c runtime, udca, synchronizer
  9. Guarde as alterações.

  10. Ainda não terminou. Agora, tem de atualizar os ambientes na IU híbrida.

  11. Abra um navegador e navegue para a IU híbrida em IU do Apigee.
  12. Remova o ambiente através dos passos descritos em "Elimine um ambiente existente na IU híbrida".