DevOps Automator 是一个面向 DevOps 工程的专业技能,定位为 CI/CD、基础设施即代码(IaC)、Kubernetes 与部署自动化方面的专家。
用途 该技能用于协助设计、实现和审查 DevOps 相关配置与流程,覆盖持续集成与持续交付、基础设施即代码、容器编排以及部署自动化。其激活触发词包括:CI/CD、GitHub Actions、deployment pipeline、Terraform、infrastructure as code、IaC、Docker、Kubernetes、K8s、Helm、container orchestration、GitOps、ArgoCD、deployment automation、secrets management、monitoring setup。它不适用于应用开发(应使用语言类技能)、数据库设计(应使用 data-pipeline-engineer)和 API 设计(应使用 api-architect)。
主要能力 技能覆盖以下领域与工具:
- CI/CD:GitHub Actions、GitLab CI、Jenkins
- IaC:Terraform、AWS CDK、Pulumi
- 容器:Docker、Kubernetes、Helm
- GitOps:ArgoCD、Flux、Kustomize
- 监控:Prometheus、Grafana、ELK/EFK
技能提供两类架构模式参考:
- CI/CD 流水线流程:代码提交 → 构建 → 测试 → 安全扫描 → 打包 → 部署开发环境 → 冒烟测试 → 发布预发环境 → 监控;随后经人工审批 → 部署生产环境。
- GitOps 架构:应用仓库经 CI 写入配置仓库,ArgoCD 从配置仓库同步到 K8s 集群,并持续同步回配置仓库。
参考文件 技能附带 ./references/ 目录下的完整可运行示例:
- github-actions-patterns.yaml:完整 CI/CD 流水线(217 行)
- terraform-eks-module.tf:生产级 EKS 集群(282 行)
- kubernetes-deployment.yaml:Deployment + HPA + ArgoCD(200 行)
- dockerfile-multistage.dockerfile:优化的多阶段构建(51 行)
使用方式 快速开始步骤:
- 定义部署策略:蓝绿、金丝雀或滚动发布
- 选择 IaC 工具:云资源用 Terraform,K8s 应用用 Helm
- 设计 CI 阶段:lint → test → security scan → build → deploy
- 实现 GitOps:由 ArgoCD 同步配置仓库
- 添加可观测性:Prometheus 指标、结构化日志
技能可用的工具包括:Read、Write、Edit(用于配置与清单文件操作);Bash(docker:)、Bash(kubectl:)、Bash(terraform:)、Bash(helm:)、Bash(gh:*) 等命令行操作。
输出产物 技能可产出:CI/CD 工作流(GitHub Actions、GitLab CI 配置)、Terraform 模块(可复用基础设施组件)、Kubernetes 清单(Deployment、Service、Config)、Helm Charts(打包应用)、Docker 配置(优化的多阶段构建)、ArgoCD Applications(GitOps 部署定义)。
反模式(应避免) 技能列出 15 类常见反模式及修复建议:
- YAML 复制粘贴泛滥:修复为可复用工作流、Helm charts、Kustomize bases、Terraform 模块
- 代码中硬编码密钥:修复为密钥管理器(Vault、AWS SM)、sealed secrets、来自安全来源的环境变量
- 无回滚策略:修复为蓝绿、带自动回滚的金丝雀、ArgoCD 自动回滚
- 单体 CI 流水线:修复为并行任务、缓存、增量构建、基于路径的触发
- 无资源限制:修复为始终设置 requests/limits,使用 LimitRanges 和 ResourceQuotas
- 容器以 root 运行:修复为添加 USER 指令,设置 securityContext.runAsNonRoot: true
- 使用 :latest 标签:修复为固定具体版本,使用带 SHA 摘要的不可变标签
- 无健康检查:修复为添加健康端点,配置带合适超时的探针
- 单点故障:修复为多副本、pod 反亲和性、拓扑分布约束
- Terraform 状态存本地文件:修复为远程后端(S3+DynamoDB、Terraform Cloud、GCS)
- 无并发控制:修复为使用并发组、实现部署锁
- 忽略安全扫描:修复为使用 Trivy、Snyk 或 Grype 扫描漏洞,TruffleHog 检测密钥
- 无漂移检测:修复为 ArgoCD diff 检测、CI 中 terraform plan、定期审计
- IAM 权限过宽:修复为最小权限原则、pod 使用 IRSA、审计权限
- 无可观测性:修复为导出指标、结构化日志、定义 SLO、配置告警
验证脚本 运行 ./scripts/validate-devops-skill.sh 可检查:
- GitHub Actions 工作流中的弃用 action、缺失缓存
- Dockerfile 的安全最佳实践
- Kubernetes 清单的资源限制、安全上下文
- Terraform 的版本约束、敏感默认值
质量检查清单
- 所有密钥在密钥管理中(不在代码里)
- 所有容器定义了资源限制
- 配置了健康检查(liveness、readiness)
- 启用了水平 pod 自动扩缩
- 设置了安全上下文(非 root、只读)
- 配置了监控与告警
- 记录了回滚策略
- 支持多环境(dev、staging、prod)
- CI 流水线中有并发控制
- Terraform 使用远程状态后端
- 流水线中有漏洞扫描
- 所有依赖固定版本
适用场景与限制 该技能适用于需要搭建或审查 CI/CD 流水线、容器化、Kubernetes 部署、基础设施即代码和 GitOps 的场景。其限制在于:不处理应用开发、数据库设计和 API 设计;具体收费、价格、平台支持范围等事实资料中暂未提供。