找出已發生偏移(drift)的 ArgoCD 應用程式
何時使用: 每週確認:哪些叢集的哪些應用程式處於 OutOfSync 或 Degraded 狀態,以及原因為何?
前置條件
- 具備讀取權限的 ArgoCD API token — argocd account generate-token --account <read-only-user>
- ArgoCD 伺服器網址 —
ARGOCD_SERVER=argocd.my.company.com
步驟
-
列出所有應用程式及其狀態列出所有 ArgoCD 應用程式,包含:名稱、專案、同步狀態、健康狀態、最後同步時間。✓ 已複製→ 完整清單
-
聚焦於偏移的應用程式篩選出 syncStatus != 'Synced' 或 health != 'Healthy' 的應用程式,並依最後同步時間排序。✓ 已複製→ 問題應用程式清單
-
比對特定應用程式的差異針對應用程式 <name>,顯示期望(git)與實際狀態的差異,哪些資源不同步?✓ 已複製→ 資源層級的差異
結果: 產出每週偏移報告,明確指出哪些應用程式需要處理及原因。
注意事項
- 偏移是由合理的僅執行期資源造成的(例如 HPA 自動調整的副本數) — 在 Application spec 的 ignoreDifferences 中排除那些會在執行期變更的欄位