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