本主题介绍如何删除环境。如需了解简介,请参阅环境和环境组简介。
关于删除环境
要正确删除环境,您必须进行几项配置更改并将更改应用到集群。这些更改包括从替换文件中移除环境定义,删除 synchronizer
、runtime
和 udca
组件,最后重新应用替换来恢复集群,而无需包含您要删除的环境。
在一个步骤中无法仅删除环境,这是因为其他元素 synchronizer
、runtime
和 udca
通过其内部配置连接到每个环境。只有通过删除它们并重新应用,您才能正确删除环境。
如何删除环境
假设您有两个环境,即 test 和 prod。在您的替换文件中,定义可能如下所示:
... 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 ...
要删除 prod 环境,请执行以下步骤:
- 将原始替换文件(包含 prod 和 test 环境定义的文件)复制到名为
prod-delete.yaml
(举例)的新文件。 - 打开
prod-delete.yaml
。 - 从
envs
中删除test
环境定义,仅保留 prod 定义。例如:... 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
- 从
prod-delete.yaml
中移除cassandra
配置(如有)之外中的其他所有内容:完成上述更改后,您的替换文件应如下所示:
... 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
- Run this command to delete the specified components:
apigeectl delete -f prod-delete.yaml -c runtime, udca, synchronizer
- 打开原始替换文件(包含 test 和 prod 环境环境定义的文件)。
- 从
envs
元素中删除prod
环境定义。您只希望test
环境定义出现在文件中。 - 将修改后的替换文件应用于集群。此命令将重新创建已删除的元素,因为它被省略,而不会重新创建
prod
环境。apigeectl apply -f prod-delete.yaml -c runtime, udca, synchronizer
保存更改。
- 打开浏览器,然后导航到 Apigee 界面上的混合界面。
- 按照在混合界面中删除现有环境中所述的步骤移除环境。
您尚未完成。现在,您必须在混合界面中更新环境。