Excluir ambientes

Neste tópico, explicamos como excluir ambientes. Para uma introdução, consulte Sobre ambientes e grupos de ambiente.

Sobre a exclusão de ambientes

Para excluir um ambiente corretamente, é preciso fazer várias alterações de configuração e aplicá-las ao cluster. Essas alterações incluem remover a definição de ambiente do arquivo de modificações, excluir os componentes synchronizer, runtime e udca e, por fim, reaplicar as modificações para restaurar o cluster sem incluir o ambiente que você quer excluir.

Não é possível excluir o ambiente em apenas uma etapa porque os outros elementos, synchronizer, runtime e udca estão conectados a cada ambiente por meio das configurações internas. Você só poderá excluir um ambiente depois de excluí-las e aplicá-las novamente.

Como excluir um ambiente

Suponha que você tenha dois ambientes, test e prod. No seu arquivo de modificações, as definições podem ter esta aparência:

...
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 excluir o ambiente prod, siga estas etapas:

  1. Copie o arquivo de modificações original (o que contém as definições de ambiente prod e test), para um novo arquivo chamado, por exemplo, prod-delete.yaml.
  2. Abra prod-delete.yaml.
  3. Exclua 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 todo o restante do prod-delete.yaml exceto a configuração cassandra, se presente:

    Depois de fazer as alterações acima, o arquivo de modificações precisa estar parecido com este:

    ...
    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. Execute este comando para excluir os componentes especificados:
    apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
  6. Abra o arquivo de modificação original (que inclui as definições de ambiente de teste e produção).
  7. Exclua a definição de ambiente prod do elemento envs. Você quer que apenas a definição do ambiente test esteja presente no arquivo.
  8. Aplique o arquivo de modificações modificadas ao cluster. Esse comando recriará os elementos excluídos e, como ele foi omitido, não recriará o ambiente prod.
    apigeectl apply -f prod-delete.yaml -c runtime, udca, synchronizer
  9. Salve as alterações.

  10. Você não terminou. Agora, é necessário atualizar os ambientes na IU híbrida.

  11. Abra um navegador e acesse a IU híbrida na IU da Apigee.
  12. Remova o ambiente usando as etapas descritas em Excluir um ambiente atual na IU híbrida.