真 GitOps 确认
只启用 automated,关闭 selfHeal,会怎样?
- 什么都不会部署
- prune 会自动开启
- 没有区别
- 只会执行 git → 集群的单向同步
sync: OutOfSync,但 health: Healthy。这是什么意思?
- Argo 控制器没有响应,无法读取状态
- 同步失败,部署停在中途
- 与 git 不同,但当前状态运行正常
- 两个值衡量的是同一件事,不可能出现这种组合
在 git 中写死 replicas,同时又使用 HPA,会怎样?
- 二者会良好协作
- HPA 会被忽略
- HPA 每次扩容,Argo 都会回退,双方不断争抢
- Argo 会删除 HPA
为什么 prune: true 默认关闭?
- 因为从 git 误删资源或错误移动路径时,集群中的资源也会被删除
- 因为逐一确认删除资源会让同步变慢
- 因为删除需要额外的集群权限,默认无法开启
- 因为旧版本存在已知缺陷,计划在下一版开启
回退一次错误部署时,符合 GitOps 的做法是什么?
- revert git 并推送
- 只执行 argocd app rollback
- 用 kubectl apply 旧清单
- 删除 Application