
# 基于Hermes与飞书构建CCE生产环境智能运维Agent
本文以Hermes接入飞书为例，构建一个CCE生产环境ChatOps值班Agent。该Agent可以定时扫描现网告警，自动归并和分析告警，生成恢复方案，并在用户通过飞书手机端确认后执行恢复动作。文中的CPU高告警只是一个用于验证闭环的小案例，您可以基于同样的思路扩展出Pod重启诊断、节点异常处理、调度失败恢复、容量巡检、发布变更关联、日报生成等自定义能力。
#### 应用场景
在生产环境中，CCE集群可能持续产生大量告警，覆盖工作负载、Pod、节点、网络、存储、弹性伸缩、资源容量和可用性风险等多个维度。现网规模越大，告警数量、告警来源和处理路径越复杂，值班人员需要在飞书告警、AOM指标、Kubernetes事件、Pod日志、工作负载配置、HPA状态、节点容量和工单系统之间反复切换，容易出现告警疲劳、响应慢、证据不完整、恢复动作缺少审核和复盘材料难沉淀等问题。
通过构建CCE生产环境智能运维Agent，您可以将"告警发现、告警归并、上下文采集、根因分析、恢复预览、用户确认、执行恢复、效果验证、结果归档"沉淀为一套可复用的ChatOps值班能力。Agent可以使用Hermes，也可以使用您已有的ChatOps、AIOps、工单助手或自研值班机器人；华为云云原生Skill负责提供CCE、AOM、LTS、节点池、工作负载等资源的标准化查询、分析和受控恢复能力。
#### 方案架构
本方案采用"Agent Runtime + 云原生Skill + 飞书确认"的组合架构。Agent Runtime负责任务调度、告警分发、上下文编排和飞书交互；云原生Skill提供告警、指标、日志、事件、根因分析和恢复动作能力；飞书承载告警通知、用户审核和闭环结果。
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002622103431.png "点击放大")
建议按能力边界拆分Agent权限。
| 能力域  | 典型动作                    | 推荐控制方式           |
|:---|:---|:---|
| 告警治理 | 查询、归并、分级、路由AOM活跃告警和历史告警 | 只读权限，允许定时自动执行    |
| 诊断分析 | 汇聚指标、事件、日志、工作负载、节点状态    | 只读权限，允许Agent自动编排 |
| 恢复预览 | 生成扩容、回滚、HPA、节点池等恢复方案    | 只生成预览，不修改资源      |
| 恢复执行 | 执行变更动作                  | 必须经过飞书确认         |
| 审计归档 | 保存告警、分析、确认、执行和验证记录      | 建议进入工单、OBS或内部知识库 |
   
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002591546816.png "点击放大")
#### 约束与限制
- 告警规则和指标口径应使用云服务推荐配置，并结合实时指标做交叉验证。
- 恢复类动作必须保留预览和确认机制，尤其是扩缩容、回滚、节点池变更等生产操作。
- 飞书消息应面向值班人员可读，优先输出结论、证据、影响对象、可选方案和确认入口。
- 对复杂恢复链路，建议将告警指纹、方案编号、目标资源和执行记录持久化，便于确认和审计。
- 禁止在提示词、飞书消息、截图或文档中暴露AK/SK、Token、证书、Project ID等敏感信息。
- 在试点阶段，建议从只读巡检和人工确认式恢复开始，再逐步扩展到更自动化的恢复策略。
 
#### 前提条件
执行本实践前，建议先准备好Agent运行环境和CCE观测对象，后续再逐步扩展自动化范围：
- 已准备用于巡检和诊断的CCE集群、命名空间或业务范围。
- 已接入AOM告警、云原生监控指标或已有巡检对象。
- 已准备Hermes或自有Agent Runtime，并接入飞书或工单系统。
- 已将CCE相关华为云云原生Skill导入Agent，用于查询告警、指标、事件、工作负载、Pod、节点和执行受控恢复。
- 已准备好访问凭证，且通过安全方式配置，确保不在提示词或文档中暴露敏感信息。
 
#### 可编排能力
您可按需组合以下Skill，构建面向海量告警的智能运维流程。
| 能力      | 代表Skill                       | 作用                                            |
|:---|:---|:---|
| 告警发现与归并 | alarm-correlation-engine      | 查询活跃/历史告警，归并重复告警，识别需要处理的告警。                   |
| 可观测上下文  | observability-context-builder | 汇聚指标、日志、事件和资源状态。                              |
| 指标分析    | metric-analyzer               | 分析CPU、内存、网络、磁盘等趋势。                            |
| Pod 诊断  | pod-failure-diagnoser         | 分析Pod状态、重启、日志和Events。                         |
| 工作负载诊断  | workload-failure-diagnoser    | 分析Deployment、ReplicaSet、HPA、Service和Endpoint。 |
| 节点诊断    | node-failure-diagnoser        | 分析节点状态、资源水位和调度能力。                             |
| 变更关联    | change-impact-analyzer        | 关联告警前后的发布、配置和资源变更。                            |
| 根因分析    | root-cause-analyzer           | 汇总证据，输出根因、置信度和建议。                             |
| 受控恢复    | auto-remediation-runner       | 生成恢复预览，确认后执行恢复动作。                             |
   
面向现网告警治理时，可将Agent能力分为以下层次。
| 层次   | 目标              | 示例                   |
|:---|:---|:---|
| 告警入口 | 接收和发现不同来源的告警    | AOM告警、巡检任务、飞书消息、工单事件 |
| 告警治理 | 降低告警噪声并确定处理优先级  | 去重、归并、分级、路由、静默、摘要    |
| 智能诊断 | 从多源数据中定位候选原因    | 告警、指标、日志、事件、变更、资源状态  |
| 受控恢复 | 将建议动作转为可审核的恢复方案 | 扩缩容、HPA 调整、节点池扩容、回滚  |
| 闭环运营 | 将处理结果沉淀为可复用经验   | 飞书通知、工单归档、日报、复盘材料    |
   
#### 操作流程
本实践基于集群demo-recovery中default/chat-app工作负载的CPU使用率过高告警展开，旨在验证CCE生产环境智能运维Agent的端到端能力。CPU高告警只是现网告警中的一种类型，流程重点是展示从巡检正常态、告警发现、自动分析、用户确认、受控恢复到闭环验证的完整链路。
#### 步骤一：启动巡检机器人
初始化Agent后，加载CCE相关Skill，并配置巡检周期和飞书通知目标。
巡检机器人应能够在"无告警"和"有告警"两种状态下都输出清晰结果，避免值班人员无法判断巡检链路是否正常。
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002591502548.png "点击放大")
正常会输出"集群demo-recovery当前无异常，环境正常"。上图展示了巡检机器人在未发现活跃告警时，通过飞书输出集群健康摘要。客户可以将该能力扩展为每日巡检、班前巡检或重点业务巡检。
#### 步骤二：接收CPU高告警
当AOM产生CPU高告警后，巡检机器人在飞书中输出告警摘要，并将该告警纳入自动分析流程。生产环境中，同一入口也可以接收Pod重启、节点异常、调度失败、Service无后端、HPA不生效等其他类型告警。
收到告警后，Agent应同时关注AOM告警状态和实时指标，避免只依据单一信号做判断。
#### 步骤三：自动分析告警并生成恢复预览
巡检机器人发现CPU高告警后，自动收集告警、Pod指标、节点水位、工作负载状态和影响对象，形成诊断报告。报告中应突出可观测事实、证据链和可选恢复方案。
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002621970919.png "点击放大")
上图展示了巡检机器人在未发现活跃告警时，通过飞书输出集群健康摘要。客户可以将该能力扩展为每日巡检、班前巡检或重点业务巡检。
恢复预览建议包含以下项目。
| 项目   | 内容                    |
|:---|:---|
| 告警摘要 | 告警名称、级别、状态、触发时间       |
| 影响对象 | 集群、命名空间、工作负载、Pod、节点   |
| 关键证据 | CPU水位、节点水位、Pod状态、相关告警 |
| 候选方案 | 扩容副本、调整资源、节点池扩容、人工处理等 |
| 变更影响 | 资源占用、调度条件、成本变化、回滚方式   |
| 用户确认 | 明确给出确认语句或按钮           |
   
#### 步骤四：在飞书确认恢复方案
这是生产变更链路中的关键审核环节。Agent在此阶段仅等待用户确认，不会执行扩缩容、回滚、重启、节点池变更等任何改变现网状态的操作。只有当用户在飞书中明确回复"确认执行"或"确认执行方案A/B"等确认语句后，Agent才会按已确认的方案执行恢复操作。
确认语句应与恢复预览中的方案编号保持一致，例如"确认执行方案A"对应扩容副本，"确认执行方案B"对应资源升配或容量扩展。您也可以将确认动作替换为飞书卡片按钮、工单审批或企业审批流，但核心要求保持不变，即未经人工确认，Agent仅做分析和预览，不进行现网变更。
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002591653024.png "点击放大")
#### 步骤五：执行恢复并持续复核
本案例首先选择扩容工作负载，将chat-app从2个副本扩容到4个副本。扩容后，Agent继续复核Pod状态和节点容量，发现其中一个新增Pod因节点CPU资源不足而Pending。
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002591494338.png "点击放大")
这个分支体现了生产恢复中很重要的一点，即恢复动作需要持续验证。扩容请求成功并不代表所有Pod已调度成功，也不代表告警已经收敛。Agent应将复核结果继续反馈给用户，并给出下一步方案。
#### 步骤六：追加容量动作并完成闭环
当扩容受节点容量限制时，Agent可以生成新的容量恢复方案，例如节点池扩容、调整工作负载request、优化HPA上限或接入CCI弹性能力。本案例选择追加节点池扩容，等待新节点上线后由Kubernetes自动调度Pending Pod。
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002591496238.png "点击放大")
执行恢复动作后，Agent再次巡检告警、Pod、节点和CPU指标，并将闭环结果发送到飞书。
![](https://support.huaweicloud.com/skill-cce/zh-cn_image_0000002591497060.png "点击放大")
#### Hermes任务提示词参考
以下提示词可作为Hermes ChatOps值班Agent的任务模板。它弱化了具体命令和环境变量，只保留角色、流程、输出结构和安全边界。
```
您是CCE生产环境智能运维Agent，负责对目标CCE环境执行告警巡检、告警归并、自动分析、恢复预览、用户确认后恢复、恢复验证和飞书闭环通知。
前置约定：
- CCE相关云原生Skill已提前导入当前Agent。
- 目标集群、巡检范围、通知通道和访问凭证已由运行环境提供。
- 所有通知都发送到飞书或客户指定的值班通道。
目标：
1. 定时扫描目标CCE环境的活跃告警和近期历史告警。
2. 对告警进行去重、归并、分级、路由和影响范围摘要。
3. 巡检正常时，输出简洁的健康摘要，不静默退出。
4. 发现需要处理的告警时，自动汇聚上下文，包括AOM告警、实时指标、Kubernetes Events、Pod/Workload/Node 状态、日志摘要和近期变更。
5. 输出面向值班人员的诊断报告，包含告警摘要、影响对象、关键证据、候选原因、建议方案和需要确认的动作。
6. 对涉及资源变更的动作，只生成恢复预览，不直接执行任何现网动作。
7. 只有用户在飞书中明确回复“确认执行”或确认具体方案后，才执行恢复动作。
8. 执行后必须验证告警状态、Pod状态、工作负载副本、节点容量和关键指标，并将闭环结果发送到飞书。
巡检报告建议结构：
- 巡检摘要：集群、时间窗、活跃告警数量、关键资源状态。
- 告警发现：告警名称、级别、状态、影响对象、当前观测值。
- 系统分析：告警状态、实时指标、Pod/Workload/Node 状态、相关事件和近期变更。
- 恢复方案：给出2到3个可选方案，说明适用场景、影响范围、回滚方式和验证方式。
- 用户确认：明确提示用户回复“确认执行”或选择具体方案。
安全边界：
- 告警扫描、证据采集和根因分析阶段只允许只读操作。
- 不允许仅凭单条告警直接执行恢复。
- 所有写操作必须先输出恢复预览、影响范围、回滚方式和验证方式。
- 同一条告警中的方案编号和方案含义保持一致，用户确认后按已确认方案执行。
- 在用户确认前，禁止执行扩缩容、回滚、重启、节点池变更等任何会改变现网状态的动作。
- 不在输出中暴露AK/SK、Token、证书、Project ID等敏感信息。
- 如果证据不足，列出可能原因和需要人工复核的信息，不替用户做没有证据支撑的判断。
飞书输出要求：
- 巡检正常时，输出简洁的健康摘要。
- 发现告警时，先输出告警摘要和影响对象，再输出关键证据和候选方案。
- 需要恢复时，明确提示用户回复“确认执行”或选择具体方案；在收到人工确认前，只等待确认，不执行变更。
- 恢复完成后，输出执行动作、验证结果、剩余风险和后续建议。
```
#### 诊断结果
这个案例的重点不在于CPU高一定要扩容，而在于展示一条可迁移的方法：Agent发现问题→ Skill汇聚证据→ 人工确认恢复→ 系统执行并验证。客户可以将其中任何一段替换成自己的工具、审批和业务规则。
| 阶段   | 结果                        |
|:---|:---|
| 告警发现 | 检测到CCE容器CPU使用率大于80%       |
| 自动分析 | 汇聚AOM告警、Pod指标、节点水位和工作负载状态 |
| 恢复预览 | 给出扩容副本等可选方案，并等待飞书确认       |
| 首次恢复 | 将工作负载从2副本扩容到4副本           |
| 过程复核 | 发现一个新增Pod因节点资源不足Pending   |
| 追加动作 | 追加节点池扩容，补充调度容量            |
| 闭环验证 | 活跃告警清零，Pod和节点巡检正常，飞书输出结果  |
   
#### 扩展应用场景
您可以根据自身需求和现有工具，从多个维度扩展本实践，以适应不同的运维场景和业务需求。以下是从不同维度扩展本实践的具体建议和示例。
| 扩展方向      | 示例                                                                                              |
|:---|:---|
| 更换Agent   | 使用Hermes、OpenClaw、AI CLI、企业ChatOps机器人或自研Agent。不同的Agent可以提供不同的功能和集成能力，您可以根据自己的技术栈和需求选择合适的 Agent。 |
| 更换入口      | 从AOM告警、飞书消息、工单、定时任务、发布事件或人工问询触发。不同的入口可以适应不同的告警来源和触发方式，提高告警处理的灵活性和响应速度。                          |
| 更换Skill组合 | 针对Pod、Node、Network、Storage、HPA、Cost等场景编排不同Skill。通过组合不同的Skill，您可以针对特定的运维场景提供更精准的诊断和恢复能力。         |
| 更换审批方式    | 使用飞书回复、飞书卡片按钮、工单审批、变更审批流。不同的审批方式可以适应不同的企业审批流程和安全要求，确保恢复动作的合规性和安全性。                              |
| 更换恢复动作    | 扩缩容、HPA 调整、节点池扩容、回滚、隔离节点、停止异常任务。不同的恢复动作可以应对不同的故障类型和恢复需求，提高恢复的灵活性和有效性。                           |
| 更换归档方式    | 输出到飞书、工单、OBS、日报、知识库或审计系统。不同的归档方式可以满足不同的记录和审计需求，确保告警处理过程的可追溯性和可复盘性。                              |
   
典型扩展场景如下表所示。
| 场景          | 编排思路                                                                                                                                |
|:---|:---|
| Pod频繁重启     | 汇聚重启次数、previous日志、OOM、探针配置和Events，生成回滚或资源调整预览。通过分析Pod的重启次数、日志、OOM事件、探针配置和相关事件，生成回滚或资源调整的恢复方案，帮助客户快速定位和解决 Pod 频繁重启的问题。               |
| Pod Pending | 分析节点容量、污点容忍、亲和性、PVC、镜像拉取和配额，生成调度恢复建议。通过分析节点的资源水位、污点容忍、亲和性、PVC状态、镜像拉取和配额限制，生成调度恢复建议，帮助客户解决Pod无法调度的问题。                                |
| 节点异常        | 关联节点状态、资源水位、组件状态和事件，生成隔离、迁移或节点池扩容预览。通过分析节点的状态、资源水位、组件状态和相关事件，生成隔离、迁移或节点池扩容的恢复方案，帮助客户快速处理节点异常问题。                                     |
| Service无后端  | 分析Deployment、Endpoint、Service Selector和发布状态，定位发布或选择器问题。通过分析Deployment、Endpoint、Service Selector和发布状态，帮助用户定位Service无后端的原因，生成相应的恢复建议。 |
| HPA不生效      | 分析指标采集、request配置、HPA上下限和扩缩容事件。通过分析指标采集、request配置、HPA上下限和扩缩容事件，帮助客户诊断HPA不生效的原因，生成相应的恢复建议。                                            |
| 定期巡检        | 定时输出告警、资源水位、异常Pod、节点风险和成本优化建议。通过定时巡检，输出告警、资源水位、异常Pod、节点风险和成本优化建议，帮助客户及时发现和处理潜在问题，优化资源使用。                                            |
   
#### 预期结果
完成本实践后，用户可以获得以下效果：
1. CCE告警进入飞书后，Agent自动启动诊断链路。
2. 运维人员无需在多个系统间反复切换，即可看到告警摘要、证据和候选方案。
3. 恢复动作在执行前经过飞书确认，降低误操作风险。
4. 恢复执行后自动验证告警收敛、Pod状态、节点容量和指标趋势。
5. 告警处理过程可归档、可审计、可复盘。
6. 同一套Agent + Skill编排思路可扩展到更多CCE运维场景。
 
