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 a remoção da definição do ambiente e
das referências a ele do
arquivo de modificações, a exclusão dos componentes synchronizer
, runtime
e udca
e, por fim, a reaplicação das 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:
... 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 ...
Para excluir o ambiente prod, siga estas etapas:
- 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
. - Abra
prod-delete.yaml
. - Exclua a definição de ambiente
test
deenvs
evirtualhosts
, deixando apenas as definições de prod. Por exemplo:... 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 ...
- Remova todo o restante do
prod-delete.yaml
exceto a configuraçãocassandra
, se presente:Depois de fazer as alterações acima, o arquivo de modificações precisa estar parecido com este:
... 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
- Execute este comando para excluir os componentes especificados:
apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
- Abra o arquivo de modificação original (que inclui as definições de ambiente de teste e produção).
- Exclua a definição de ambiente
prod
dos elementosenvs
evirtualhosts
. Você quer que apenas a definição do ambientetest
esteja presente no arquivo. - 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 original-overrides.yaml -c runtime, udca, synchronizer
Salve as alterações.
- Abra um navegador e acesse a IU híbrida na IU da Apigee.
- Remova o ambiente usando as etapas descritas em Excluir um ambiente atual na IU híbrida.
Você não terminou. Agora, é necessário atualizar os ambientes na IU híbrida.