mcpField
H
huawei-cloud-cce-env-assessment

huawei-cloud-cce-env-assessment

github.com/huaweicloud云与 DevOps59222 次安装2 天前更新
代码仓库

关于 huawei-cloud-cce-env-assessment

用于评估 Huawei Cloud CCE 容器环境的引导式技能。它按检查清单收集数据并为指标评分,生成 Excel 评分表及含图表和分级改进建议的 HTML 报告。

主要功能

  1. 01逐步评估并等待用户确认
  2. 02通过 hcloud 收集 Huawei Cloud CCE 数据
  3. 03按检查清单为指标评分
  4. 04生成 Excel 评分表
  5. 05生成含图表和整改优先级的 HTML 报告

适用场景

  1. 01评估 Huawei Cloud CCE 环境
  2. 02依据目标为容器环境指标评分
  3. 03生成评估报告和改进优先级

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-cce-env-assessment

安装后在 Claude Code 中输入/huawei-cloud-cce-env-assessment确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

references/
cloud-native-checklist.xlsx
koocli-installation-guide.md
requirements.txt
scripts/
__init__.py
collect_all.py
make_charts.py
make_report_html.py
score_and_excel.py
templates/
cloud-native-assessment-template.md
report_template.md

详细介绍

Huawei Cloud — CCE 环境评估技能

概述

自动收集华为云容器环境的评估指标,按维度输出指标评分表,并生成评估报告和改进建议。


前提条件

前提条件检查:需要 Huawei Cloud CLI(hcloud)>= 7.2.2 运行 hcloud version,确认版本 >= 7.2.2;运行 hcloud configure list,确认配置文件已存在。 如果尚未安装或版本过低,请参阅 references/koocli-installation-guide.md 查看安装指南。

hcloud version
hcloud configure list

前提条件检查:需要 Python >= 3.6 运行 python --version,确认版本 >= 3.6.0 如果尚未安装或版本过低,将主动中断技能执行,并提示用户安装 Python 3.6 或更高版本。 如果 Python 版本为 3.6.x,运行以下命令将 pip 升级到最新版本:pip3 install --user --upgrade 'pip<22'

⚠️ 强制执行规则

规则 1:逐步确认

每个步骤完成后,你必须:

  1. 打印当前步骤的完成状态
  2. 显示该步骤产生的输出
  3. 每次运行技能都必须从步骤 1 开始——不得跳过步骤 1,直接执行后续步骤
  4. 严格遵循本技能的规则,并在每个步骤后等待用户确认
  5. 严格遵循所述流程;不得执行额外操作。如果发生错误,原样向用户返回错误——不得尝试自行修复
  6. 所有执行规则的优先级均高于效率

不得在一次运行中串联多个步骤!

规则 2:固定目录

每个步骤完成后,你必须:

  1. 将所有中间文件保存在 data/ 目录下
规则 3:权限问题
  1. 遇到权限问题时,尝试使用 sudo。如果仍无法解决,则报错并中止技能流程
规则 4:防跳步检查

执行每个步骤前,确认其前提条件均已满足:

步骤前提条件
步骤 2:环境检查步骤 1 已完成;已获取 Huawei Cloud AK/SK
步骤 3:容器环境采集步骤 2 已完成且无错误;data/ 和 artifacts/ 均已清空
步骤 4:指标评分步骤 3 已完成;已生成 data/cloud-native-collection.md
步骤 5:报告生成步骤 4 已完成;已生成 artifacts/cloud-native-summary.xlsx
规则 5:信息收集方法
  1. 收集每项信息时,优先使用 Huawei Cloud KooCLI 工具(hcloud 命令)
规则 6:状态跟踪
📋 Cloud-Native Container Assessment — Status Board
├────────────────────────────────────────────┤
│ Step 1: Configuration       [⏳ In progress]│
│ Step 2: Environment check   [○ Pending]     │
│ Step 3: Information collect [○ Pending]     │
│ Step 4: Metric scoring      [○ Pending]     │
│ Step 5: Report generation   [○ Pending]     │
└────────────────────────────────────────────┘

每个步骤完成后,更新状态看板:

📋 Cloud-Native Container Assessment — Status Board
├────────────────────────────────────────────┤
│ Step 1: Configuration       [✅ Done]       │
│ Step 2: Environment check   [✅ Done]       │
│ Step 3: Information collect [✅ Done]       │
│ Step 4: Metric scoring      [✅ Done]       │
│ Step 5: Report generation   [⏳ In progress]│
└────────────────────────────────────────────┘

🔐 权限边界

AI 可以:
  • 严格按照 SKILL 步骤执行
  • 仅调用 SKILL 中指定的脚本
  • 出现问题时原样返回错误
AI 禁止:
  • 临时修改或绕过工作流
  • 切换到其他方案(例如 html 失败时改用 Markdown)
  • 未经用户同意修改任何脚本或配置
  • 执行 SKILL 中未明确列出的任何操作
越界操作处理

任何越界操作都必须立即停止并等待用户确认。禁止继续执行。

核心工作流

步骤 1:配置

请用户提供环境配置。

项目描述示例
Huawei Cloud AK/SK用于访问 Huawei Cloud API 的 Access Key 和 Secret KeyAK/SK = HPUAN3EWCG... / 1Bt5sdDU..
Region容器集群所在的区域region = cn-north-4
Cluster nameCCE 集群名称(仅步骤 1)cce_name = dify-cce-cluster
Dockerfile source源代码仓库(包含 Dockerfile)Dockerfile = https://github.com/langgenius/dify

用户提供配置后,将相应的值保存到环境变量 HWC_AK、HWC_SK、CCE_Region、CCE_NAME、Dockerfile_REPO_URL 中。

Diamond Gate 1:进入步骤 2 前,先征得用户确认。

步骤 2:环境检查

使用步骤 1 中提供的配置,验证环境是否可访问,以及本地运行时依赖项是否齐备。

  1. 使用 hcloud 和 AK/SK 访问 Huawei Cloud CCE 环境,并确认其可访问。如果未安装 hcloud,或其版本过低,请参阅 references/koocli-installation-guide.md 获取安装指南。
  2. 验证本地 Python 环境是否正常运行。Python 版本要求高于 3.6。如果 Python 版本为 3.6.x,请运行以下命令,将 pip 升级到最新版本:pip3 install --user --upgrade 'pip<22'
  3. 检查是否已安装 Python 依赖库。进入 references 目录。如果 Python 版本为 3.6.x,请运行命令 python3 -m pip install -r requirements.txt。如果 Python 版本高于 3.7,请使用 Python 虚拟环境执行命令 pip3 install -r requirements.txt。
  4. 清空 data/ 中的所有历史文件;如果 data/ 不存在,则创建该目录
  5. 清空 artifacts/ 中的所有历史文件;如果 artifacts/ 不存在,则创建该目录
  6. 检查完成后,将结果告知用户,并等待用户确认是安装依赖项还是继续
步骤 3:容器环境信息收集

收集 references/cloud-native-checklist.xlsx 中列出的每项指标对应的环境信息。

  1. 每次收集都必须以 references/cloud-native-checklist.xlsx 中的实际指标为依据,并且必须调用 scripts/collect_all.py 收集最新数据——不得复用历史数据或缓存数据
  2. 验收指标:正在评估的指标项
  3. 量化目标:该指标的参考标准
  4. 验收方法:如何收集该指标对应的环境信息
  5. 收集过程中,如果无法获取任何必需信息,请探索其他获取方式并征求用户确认
  6. 完成所有指标的信息收集后,将收集方法(包括但不限于 Python 脚本和执行的命令)以及收集到的数据填写到 templates/cloud-native-assessment-template.md,将结果写入 data/cloud-native-collection.md,并展示给用户
步骤 4:指标评分

根据 data/cloud-native-collection.md 中的采集数据,对每项指标评分:

  1. 将采集数据与量化目标进行比较,得出验收判定(完全满足 / 大部分满足 / 部分满足 / 不满足;无法比较的指标记为不满足;“不适用”和“未评估”均归入“不满足”,且依据字段必须注明该指标为不适用或未评估)以及评分依据(根据采集数据进行说明——包括指标的环境信息、使用的采集方法,以及未满足的原因)
  2. 将判定转换为分数:完全满足 = 3,大部分满足 = 2,部分满足 = 1,不满足 = 0
  3. 调用 scripts/score_and_excel.py 生成新的评分表,并输出为 Excel 文件,包含以下列:编号、云原生维度、级别、验收指标、量化目标、验收方法、描述、验收判定、分数、满分、评分依据。保存至 artifacts/cloud-native-summary.xlsx
步骤 5:报告生成

使用评分表 artifacts/cloud-native-summary.xlsx 的内容生成最终评估报告:

  1. 最终报告以 templates/report_template.md 为基础模板

  2. 报告标题固定为 “Cloud-Native Assessment Report”

  3. 报告包含 4 个章节;第 1 章和第 2 章直接沿用 templates/report_template.md 中的内容

  4. 最终报告的第 3 章根据评分表 artifacts/cloud-native-summary.xlsx 填充

  5. 针对步骤 4 生成的 cloud-native-summary.xlsx 调用 scripts/make_charts.py,生成雷达图和阶梯图

    图表生成要求:

    • 雷达图:按云原生维度对指标分组。每个维度的得分 =(该维度所有指标的分数之和 / 该维度所有指标的满分之和)× 5。雷达图必须恰好包含六个维度:服务导向、安全性、自动化、弹性、可观测性、韧性。如果某项指标属于多个维度(例如,指标 #1 同时属于服务导向和自动化),则该指标计入其所属的每个维度的评分。
    • 阶梯图:总分 =(所有指标的分数之和 / 所有指标的满分之和)× 5。阶段阈值——得分 ≤ 1:传统;1 < 得分 ≤ 2:基础云;2 < 得分 ≤ 3:面向服务;3 < 得分 ≤ 4:自动化;得分 > 4:智能。图表必须以阶梯形式呈现。
  6. 将生成的雷达图放入报告的 3.3.3 节,将阶梯图放入 3.3.4 节

  7. 将最终报告的第 4 章替换为实际的整改建议

  8. 根据评估结果,按 P0/P1/P2 优先级给出整改建议:

    • P0:不满足(0 分)——必改项
    • P1:部分满足(1 分)——需修复项
    • P2:大部分满足(2 分)——建议改进项
  9. 调用 scripts/make_report_html.py 生成最终报告 HTML 文件,写入 artifacts/cloud-native-report.html

核心命令

获取集群 ID 和基本信息
hcloud cce ListClusters --cli-region=cn-north-4
获取集群 kubeconfig 证书
hcloud cce CreateKubernetesClusterCert \
  --cli-region=cn-north-4 \
  --cluster_id=a5659ec8-55b5........ \
  --duration=1
获取集群详细信息
hcloud cce ListClusters --cli-region=cn-north-4
认证参数
认证模式必填可选
AKSK--cli-access-key、--cli-secret-key--cli-security-token
Profile--cli-profile--cli-mode、--cli-region

输出格式

  1. 最终报告以 HTML 文件形式交付
  2. 评分表以 Excel 文件形式交付
  3. 所有输出文件均保存在 artifacts/ 目录下

验证

安装后验证
  1. 版本检查:hcloud version 必须返回 7.2.2 或更高版本
  2. 帮助检查:hcloud --help 必须列出可用服务
身份验证
  1. 配置文件检查:hcloud configure list 必须显示已配置的配置文件

最佳实践

  1. 评估并分析在 Huawei Cloud 上运行的容器环境。
  2. 强化现有容器集群的配置,并根据优化建议修改集群配置。

参考资料

  • report_template.md — 最终报告模板
  • cloud-native-checklist.xlsx — 评估指标说明
  • requirements.txt — Python 依赖库

脚本

  • collect_all.py — 主要评估脚本;整合所有采集模块
  • make_charts.py — 图表生成脚本
  • make_report.py — 报告生成脚本
  • score_and_excel.py — 评分表生成脚本

模板

  • report_template.md — 最终报告模板
  • cloud-native-assessment-template.md — 数据采集模板

注意事项

  1. 确保可以访问 Huawei Cloud 容器环境
  2. 确保 Huawei Cloud 凭证有效且未过期
  3. 如果无法通过技能自动安装 Huawei Cloud Koocli 工具和 Python 环境,建议用户手动安装。
  4. 目前仅支持通过公网访问容器环境
  5. 执行过程中输出可能会被截断;此时建议清除历史数据并重新运行 Skill

评论

支持 Markdown