持续部署工具Argo CD - 使用

添加项目
通过ui面板,Settings -> Projects 设置新的项目名和描述,点击创建完毕的项目进入设置。
1.设置项目的集群和git信息 sources指定的是git repo的地址,可以添加多个
destinations指定集群,也可以指定多个
这样添加之后在新增app时即可从project中选择了
持续部署工具Argo CD - 使用
文章图片

2.设置项目同步窗口规则 通过crontab类似的定时规则,限制项目中的app是否可同步,
持续部署工具Argo CD - 使用
文章图片

如这里两条规则:
第一条:

`status` 表示不在生效时段 `windows` 表示周一的每小时的0分持续5分钟拒绝同步

第二条:
`status` 表示在生效时段 `windows` 表示每时每刻都允许同步

这里拒绝的规则和允许的规则重叠的时段,拒绝的规则将优先生效
持续部署工具Argo CD - 使用
文章图片

同时在app页面将可看到当前同步窗口的状态
持续部署工具Argo CD - 使用
文章图片

红色表示拒绝同步,黄色表示允许手动同步,绿色表示允许同步
3.设置项目角色权限 未做深入研究,配合OIDC使用
持续部署工具Argo CD - 使用
文章图片

添加应用
一个app表示一组跟踪的资源文件,如deployment + service 的经典组合
持续部署工具Argo CD - 使用
文章图片

SYNC POLICY: 自动 or 手动同步。
PRUNE LAST: 最后才做删除操作,根据需求使用。
REPLACE: 放弃 kubectl apply,使用 kubectl replace 或kubectl create 。
PRUNE PROPAGATION POLICY:策略的解释点此查看
持续部署工具Argo CD - 使用
文章图片

Repository URL: 资源文件地址,支持 kustomize、helm、ksonnet、jsonnet files、yaml files 等格式
Revision: 跟踪的分支或 tag 名
Path: 资源文件相对根目录的路径
Cluster URL: 部署的集群
namespace: 集群命名空间
创建完成,点击 sync 同步
持续部署工具Argo CD - 使用
文章图片

顶部App Details 查看app详情并编辑
App Diff 当前部署状态与git资源定义有差异时可点击查看
sync 同步按钮,且可选择部分组件同步
持续部署工具Argo CD - 使用
文章图片

Sync Status 同步状态,当同步失败时,可查看失败原因
History and rollback 查看所有部署历史及对应git记录,并回滚部署
持续部署工具Argo CD - 使用
文章图片

添加集群
新增集群只能通过cli命令
1.登陆argocd
argocd login :

2.增加新集群 准备好新集群的.kubeconfig文件
argocd cluster add --kubeconfig <新集群kubeconfig文件> --name <新集群名>

此时将会提示你缺少名字
持续部署工具Argo CD - 使用
文章图片

再次输入命令并带上Name栏下的值,如
argocd cluster add gke_secret-tempest-323403_asia-east2-a_cost-optimized-cluster-3 --kubeconfig ./cluster/gcp3.config --name gcp3

提示Cluster 'https://35.241.90.107' added,表示新增集群成功
3.验证新集群 通过ui面板,Settings -> Clusters 可以查看到集群已经加入进来
持续部署工具Argo CD - 使用
文章图片

4.项目配置中添加集群 通过ui面板,Settings -> Projects 选择项目,在DESTINATIONS处勾选新集群和命名空间
持续部署工具Argo CD - 使用
文章图片

5.新增应用 【持续部署工具Argo CD - 使用】目前单个app不支持直接部署到多个集群,只能创建不同集群的新应用来进行管理
持续部署工具Argo CD - 使用
文章图片

    推荐阅读