Agent Skills
返回列表
🔒

DevOps 自动化流水线套件

IT 运维与安全 更新于 2026.08.30

将以下提示词粘贴到你的 AI 对话框中:

请根据 https://skillhub.cn/install/skillhub.md,将该技能 @user_3c6cb52e/devops-automation-sh-enzvw9 安装到 AI 助手中。

技能介绍

它解决什么问题

多数团队的 CI 流水线跑得慢而且不可靠:同一个分支反复触发构建、依赖每次都重新下载、部署时说不清哪些 job 必须先完成、线上容器打着 latest 标签发布导致回滚困难。到了 Kubernetes 这一层,资源配额缺失、探针没定义、更新策略过于激进,又会让滚动发布出现短暂不可用。GitOps 落地时最常见的问题,是「Git 是唯一事实来源」这条原则被直接 kubectl apply 绕过,以及应用代码和部署清单混在同一个仓库里难以审计。

这个技能把这些实践拆成一组可执行的规则,覆盖从工作流结构、镜像构建、集群清单、Helm 模板、ArgoCD 同步到指标暴露的完整链路。

它如何工作

CI 工作流结构:用 concurrency 取消过期的运行,用 setup action 的 cache 选项缓存依赖,用 needs 声明 job 之间的依赖,用 environment protection rules 卡住部署门禁,用 matrix 做跨版本测试。

镜像构建:固定镜像 tag 而不用 latest,以非 root 用户运行,最终阶段只 COPY 必要文件,加 HEALTHCHECK 供编排器集成,用 .dockerignore 排除 node_modules、.git 和测试产物。

清单与 Helm:始终设置 resources requests/limits,定义 readiness 与 liveness 探针,用 maxUnavailable: 0 做零停机发布;每个环境用 values-{env}.yaml 覆盖配置,发布前先跑 helm lint 与 helm template 校验。

GitOps:Git 是集群状态的唯一事实来源,所有变更走 PR,生产环境不做 kubectl apply,开启 selfHeal 把手动改动拉回,应用代码仓库与清单仓库分离。

可观测性:暴露 http_request_duration_seconds、http_requests_total、process_resident_memory_bytes、db_query_duration_seconds 四类指标,并对错误率、P99 延迟、内存占用和 Pod 重启次数设告警阈值。

适用边界

这套规则偏「默认配置」而非完整方案:Terraform、Kustomize、服务网格都不在覆盖范围内,多集群或多地域部署需要自行扩展。告警阈值是通用经验值,需要按业务 SLO 调整。ArgoCD 的 selfHeal 会覆盖运维在集群内的临时变更,开启之前应先确认与现有应急流程是否冲突。

使用场景

  • 编写 GitHub Actions 工作流:用 concurrency 取消过期运行、缓存依赖并声明 job 依赖
  • 写多阶段 Dockerfile:固定镜像 tag、非 root 运行、排除构建垃圾文件并加 HEALTHCHECK
  • 编写 K8s 清单:设置资源配额、定义就绪与存活探针,用 maxUnavailable: 0 零停机发布
  • 配置 ArgoCD GitOps:Git 作为唯一状态来源、开启 selfHeal、代码与清单仓库分离

适合人员

  • 后端或平台工程师,负责维护 CI 流水线,想让构建稳定在 10 分钟内、发布不再手动 kubectl apply
  • SRE 或运维工程师,负责 Kubernetes 集群稳定性,需要探针、资源配额、GitOps 与告警阈值这类可复制的默认配置
  • DevOps 或基础设施工程师,负责镜像与多环境发布,想把多阶段构建、Helm 环境覆盖、镜像安全扫描写成统一规范