You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在ArgoCD App of Apps模式中强制应用同步顺序?

ArgoCD App of Apps模式下管理应用同步顺序的简便方法

针对你需要强制同步顺序的场景(先同步strimzi/minio-operator,再同步对应CR的应用),有两种简便的原生方案可以实现:

1. 应用依赖配置(App Dependencies)

直接在依赖方的应用CR中声明前置依赖,ArgoCD会自动等待依赖应用同步完成后再同步当前应用。

比如在包含Kafka CR的应用模板中添加依赖配置:

apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: kafka-cr-app
spec:
  # 其他配置...
  syncPolicy:
    automated: {}
  dependencies:
    - name: strimzi
      namespace: argocd
      kind: Application

同理,在包含Minio CR的应用模板中添加:

dependencies:
  - name: minio-operator
    namespace: argocd
    kind: Application

2. 同步波(Sync Waves)

如果所有应用都通过同一个App of Apps清单部署,可以给不同应用设置syncWave注解,数值越小的应用越先被同步。

比如给strimzi和minio-operator应用添加注解:

metadata:
  name: strimzi
  annotations:
    argocd.argoproj.io/sync-wave: "0"
---
metadata:
  name: minio-operator
  annotations:
    argocd.argoproj.io/sync-wave: "0"

给对应CR的应用设置更高的数值:

metadata:
  name: kafka-cr-app
  annotations:
    argocd.argoproj.io/sync-wave: "1"
---
metadata:
  name: minio-cr-app
  annotations:
    argocd.argoproj.io/sync-wave: "1"

注意事项

  • 应用依赖适合跨层级或需要严格依赖校验的场景,ArgoCD会检查依赖应用的健康状态;
  • 同步波适合同一App of Apps下的同级应用排序,仅控制同步触发顺序,不校验依赖应用的健康状态;
  • 确保你的ArgoCD版本支持上述功能(v2.0+已全面支持)。

内容的提问来源于stack exchange,提问作者Fabrice Jammes

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.19 04:32:35