希曼日记

GitOps 六层堆栈

本页目录 3
  1. 六层 × 本地落位
  2. 导航
  3. 三条压缩结论

六层模型出自《Top 10 GitOps Tools for Continuous Delivery in 2026》(Neel Shah,Medium「DevOps AI Decoded」)的「Building Your GitOps Stack: A Layer-by-Layer Approach」一节:成熟的交付体系不是单个工具,而是分层堆栈,每层解决一个独立问题。

本组笔记记录该模型在单人开发、本地 Parallels 虚拟机集群、内网强依赖代理环境下的裁剪、落地与断链复盘。

六层 × 本地落位

层职责文章推荐本地落位2026-08-172026-08-30
L1 打包与源Git + 制品打包Helm + OCI registryGitHub monorepo + in-repo umbrella chart + TCR/GHCR 双推✅✅
L2 CI 与证明构建、测试、供应链签名Tekton + Chains(原文认可 GitHub Actions)GitHub Actions 矩阵模板🟡 缺扫描🟡 改为 tag 触发
L3 密钥管理外部 vault → k8s SecretExternal Secrets Operator线上 Vault + ESO❌ → 当日建成✅ 机制活,覆盖仅 minio
L4 持续交付集群状态调和 + 渐进式发布Argo CD / Flux + Argo RolloutsArgoCD应用侧 ✅ / 平台侧 ❌❌ 断链
L5 晋级编排dev → staging → prodKargo单环境,不需要⬜⬜
L6 基础设施 GitOps云资源、集群本身Crossplane、Fleetbootstrap 安装器(位于 GitOps 之下)⬜ 平台纳管未做⬜

导航

三条压缩结论

  1. 单人 + 单集群 + 内网环境下,六层里两层永久跳过(Tekton、Crossplane/Fleet),两层等待触发条件(L5、L4 的渐进式发布),真正要建的只有 L3 和「平台组件纳管」。
  2. pull 模型不是偏好而是必然:GitHub 托管 runner 进不了 192.168 内网,push 式部署在物理上不可行。
  3. 工具都在,闭环仍会断——断在「集群重装后没人把 ArgoCD Application 接回去」这条流程缝里,不断在任何一层的工具选型上。文章原话「The best GitOps implementation is the one that's actually in use」,断链恰好发生在「in use」这一环。