入门¶
本指南假定您熟悉 Argo CD 及其基本概念。 更多信息请参阅 Argo CD 文档。
要求¶
- 已安装 kubectl 命令行工具
- 拥有 kubeconfig 文件(默认位置为
~/.kube/config
)。
安装¶
安装 ApplicationSet 控制器有几种选择。
A) 安装作为 Argo CD 一部分的 ApplicationSet¶
从 Argo CD v2.3 版开始,ApplicationSet 控制器与 Argo CD 捆绑,不再需要从 Argo CD 单独安装 ApplicationSet 控制器。
请按照 Argo CD 入门 说明获取更多信息。
B) 将 ApplicationSet 安装到现有的 Argo CD 安装中(Argo CD v2.3 之前的版本)¶
注意:这些说明仅适用于 Argo CD v2.3.0 之前的版本。
ApplicationSet 控制器必须与 Argo CD 安装在同一个 namespace 中。
假设 Argo CD 已安装到 argocd
名称空间,请运行以下命令:
kubectl apply -n argocd -f https://raw.githubusercontent.com/argoproj/applicationset/v0.4.0/manifests/install.yaml
安装后,ApplicationSet 控制器无需额外设置。
manifests/install.yaml "文件包含安装 ApplicationSet 控制器所需的 Kubernetes 配置清单:
- ApplicationSet` 资源的自定义资源定义
- 用于
argocd-applicationset-controller
的部署 - 被应用集控制器引用的服务帐号,用于访问 Argo CD 资源
- 为 ServiceAccount 授予 RBAC 访问所需资源权限的角色
- 角色绑定用于绑定服务账户和角色
启用高可用性模式¶
要启用高可用性,必须在 argocd-applicationset-controller 容器中设置"--enable-leader-election=true "命令,并增加副本。
对配置清单/install.yaml 做以下修改
spec:
containers:
- command:
- entrypoint.sh
- argocd-applicationset-controller
- --enable-leader-election=true
可选:额外的升级后保障措施¶
请参阅控制资源修改 页面,了解您可能希望添加到 install.yaml
中 Providers 资源的其他参数,以提供额外的安全性,防止任何初始的、意外的升级后行为。
例如,要暂时阻止升级后的 ApplicationSet 控制器进行任何更改,可以这样做:
- 启用干运行
- 被引用仅创建策略
- 在应用程序集上启用 "preserveResourcesOnDeletion
- 暂时禁用 ApplicationSet 模板中的自动同步功能
这些参数可让您观察/控制新版 ApplicationSet 控制器在环境中的行为,确保您对结果感到满意(详情请查看 ApplicationSet logging 文件)。 测试完成后,别忘了删除任何临时更改即可!
不过,如上所述,这些步骤并非绝对必要:ApplicationSet 控制器的升级应该是一个微创过程,这些步骤只是建议作为额外安全的可选预防措施。
接下来的步骤¶
ApplicationSet 控制器启动并运行后,请访问 Use Cases,了解更多有关支持场景的信息,或直接访问 Generators 查看示例 ApplicationSet
资源。