gitops-workflow
利用ArgoCD与Flux实施GitOps工作流,实现自动化、声明式的Kubernetes部署及持续同步。适用于践行GitOps理念、自动化Kubernetes部署或搭建声明式基础设施管理体系的场景。
作者
分类
开发工具安装
热度:32
下载并解压到你的 skills 目录
复制命令,发送给 OpenClaw 自动安装:
下载并安装这个技能 https://openskills.cc/api/download?slug=sickn33-skills-gitops-workflow&locale=zh&source=copy
GitOps Workflow - ArgoCD 与 Flux 自动化部署指南
技能概述
GitOps Workflow 提供使用 ArgoCD 和 Flux CD 实现 Kubernetes 声明式持续交付的完整指南,涵盖从安装配置到多集群管理和渐进式发布的最佳实践。
适用场景
需要为 Kubernetes 环境建立基于 Git 的单一事实来源,实现应用和基础设施的声明式管理,所有变更通过 Git 提交触发自动同步。
当需要同时管理多个 Kubernetes 集群(生产、预发布、开发环境)时,通过 GitOps 实现"一处修改,处处生效"的统一部署策略。
需要实现金丝雀发布、蓝绿部署等渐进式交付策略,通过 ArgoCD Rollouts 或 Flux 配置实现流量的逐步切换和自动回滚。
核心功能
ArgoCD 完整安装与配置
提供 ArgoCD 在 Kubernetes 中的完整安装流程,包括命名空间创建、Manifest 应用、初始密码获取,以及 Application 和 App of Apps 模式的配置示例。支持自动同步策略配置,包括 prune、selfHeal 和重试机制。
Flux CD GitOps 工作流
涵盖 Flux CLI 安装和 GitHub bootstrap 流程,以及 GitRepository 和 Kustomization 资源的创建。支持通过 Git 仓库自动拉取配置并持续调和集群状态。
渐进式发布与密钥管理
集成 ArgoCD Rollouts 实现金丝雀和蓝绿部署,支持基于权重的流量切换和暂停策略。提供 External Secrets Operator 和 Sealed Secrets 两种密钥管理方案,确保敏感信息不直接存储在 Git 仓库中。
常见问题
ArgoCD 和 Flux CD 应该如何选择?
两者都是成熟的 GitOps 工具,选择主要取决于团队偏好和现有技术栈。ArgoCD 提供可视化的 Dashboard,更适合需要直观管理界面的团队;Flux CD 采用纯 YAML 配置,更符合"一切皆代码"的理念,适合喜欢命令行操作的团队。从功能上看,ArgoCD 的 UI 和 Rollouts 插件更为完善,而 Flux 的 Kustomization 集成更加原生。
GitOps 中如何安全地管理密钥?
永远不要将明文密钥提交到 Git 仓库。推荐使用两种方案:External Secrets Operator 可以从 AWS Secrets Manager、Azure Key Vault 等外部密钥管理服务同步密钥;Sealed Secrets 使用公钥加密密钥后提交到 Git,只有集群内的私钥才能解密。两种方案都能确保密钥安全且可版本化管理。
什么时候不适合使用 GitOps?
GitOps 不适合一次性手动部署场景、无法管理集群访问权限的情况,以及非 Kubernetes 的部署目标。此外,如果你的团队无法接受"所有变更必须经过 Git"的流程约束,或者需要频繁的手动干预和调试,GitOps 可能会增加额外的工作成本。