跳转至

运维 · 角色指南

假设你已读过 docs/00_overview/docs/01_onboarding/


你的工具箱

工具 用途
kubectl + argocd-cli k8s + GitOps
czerp-gitops 仓库 k8s 部署清单 / Kustomize overlays / ArgoCD apps(Helm 仅第三方中间件)
Jenkins CI 流水线
Prometheus + Grafana 应用指标
Sentinel Dashboard 限流 / 熔断
Spring Boot Admin (ifinmate-admin) 服务健康
日志中心 ELK / Kibana
本仓库 czerp-ops k8s / GitOps / 监控 cookbook

本角色推荐方法GitOps(ArgoCD 声明式,Jenkins 直推 gitops main、无 PR 门;人工动 overlay/清单时约定 review)+「建议 → 人审 → 执行」的 AI-SRE 纪律(诊断只读可 AI 自主,变更动作人执行)+ 事故后 runbook / 复盘沉淀到 PingCode。

高价值工作流(触发 → AI 做什么 → 人怎么验)

# 触发 AI 做什么 人怎么验
告警三角化 告警进来 关联近期部署 + 活跃事故,路由 + 定严重度 确认路由/定级;规则调整改 gitops 清单(约定 review 后进 main,无强制 PR)
事故 根因分析 服务不健康 链路(SkyWalking)/指标(Prometheus)/日志关联,给候选根因 核证据链;只读 AI 自主,变更人确认
Runbook/复盘 处置后 结构化 runbook + postmortem 草稿入 CZKB 补业务影响面,去敏感后入库
GitOps 变更 发版 / 中间件 解读 Jenkins 直推 main 的镜像 tag diff/同步状态 + 标回滚信号;人工动 overlay 时生成清单改动 审 Jenkins 直推 main 的 diff / 人工动 overlay 时的 review;回滚/中间件人执行(🔴)
可观测查询 排障巡检 自然语言转 PromQL / 日志查询 核数据口径(mysql 仅元数据等项目特例)

新增 skill:db-operations-and-rollbackincident-response-runbook

一天典型流程

早上:
- 看监控 dashboard(昨晚 nightly 跑通了吗?告警有未处理的吗?)
- 看 ArgoCD(有未同步的应用吗?)

平时:
- 审 Jenkins 直推 main 的镜像 tag diff / 人工动 overlay 时的 review
- 中间件变更 / 巡检
- 处理钉钉 oncall 告警

发版日:
- 协助开发上 release:image 推私服 → Jenkins 直推 gitops main(无 PR) → ArgoCD AutoSync
- 监控滚动状态 → 出现回滚需求立即回滚

事故:
- k8s-troubleshooting cookbook
- 回滚后写复盘 → PingCode 知识库

必读 skills

  1. environment-info — 环境矩阵
  2. k8s-troubleshooting — 故障 cookbook
  3. gitops-deploy — ArgoCD 发版
  4. cicd-pipeline — Jenkins 流水线
  5. monitoring-and-alerts — Prometheus + 告警

铁律

  1. 生产改动必双人:一人执行 + 一人复核 + 钉钉群广播。(当前最高环境为 uat / 准生产,无独立 prod)
  2. 不要在 uat 直接 kubectl apply / kubectl edit — 一切走 czerp-gitops(声明式)。注意当前发版是 Jenkins 直推 gitops main + ArgoCD AutoSync,无 GitOps PR 人审门;改 gitops 仓库/Jenkinsfile 本身才需 review。
  3. uat 临时调试要先暂停 AutoSync:三套环境(dev/test/uat)ArgoCD 全开 AutoSync + selfHeal,不暂停手改会被拉回。
  4. 回滚优于打补丁:任何 uat 异常先回滚到上一稳定版。回滚后必须把 czerp-gitops 的镜像 tag 同步改回旧版,否则 selfHeal 会按 git 当前值把新版拉回(见 03_release.md)。
  5. 中间件改动先 dev → test → uat,每步至少 24h 观察。

与各角色协作

  • 给开发:环境信息(端口 / 账号 / namespace ID)走环境清单,不要 chat 里贴
  • 给 PM:上线后通过钉钉通知"X 故事已上线"。
  • 给 QA:上线前/后通知,QA 决定是否触发回归。
  • 给 Tech Lead:重大事故 / 变更必同步。

常见错误

  • ❌ 凭"上次都这么做"在 uat 手动 kubectl edit(会被 selfHeal 拉回)
  • ❌ image tag 用 latest
  • ❌ 回滚只在集群里改而忘了同步改回 czerp-gitops 的镜像 tag(被 selfHeal 拉回新版)
  • ❌ 告警淹没未及时清理 oncall
  • ❌ 中间件升级当天还跑业务变更

进一步