mcpField
H
huawei-cloud-ces-ecs-monitoring

huawei-cloud-ces-ecs-monitoring

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

关于 huawei-cloud-ces-ecs-monitoring

面向 Huawei Cloud ECS 运维人员的 CES 监控技能,通过 hcloud 查询和分析实例指标。支持历史数据、常用指标及 SYS.ECS 无数据时的 AGT.ECS 回退流程。

主要功能

  1. 01查询 CPU、内存、磁盘和网络指标
  2. 02获取历史监控数据
  3. 03SYS.ECS 与 AGT.ECS 指标回退
  4. 04分析趋势、异常与性能瓶颈
  5. 05查看告警及告警模板

适用场景

  1. 01检查 ECS 实例的当前性能
  2. 02分析最近七天的磁盘 I/O
  3. 03排查实例响应缓慢
  4. 04查看资源使用趋势与告警

安装

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

$npx skills add https://github.com/huaweicloud/huaweicloud-skills --skill huawei-cloud-ces-ecs-monitoring

安装后在 Claude Code 中输入/huawei-cloud-ces-ecs-monitoring确认已加载。

包含的文件

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

references/
acceptance-criteria.md
best-practices.md
ces-metrics-reference.md
cli-installation-guide.md
iam-policies.md
related-commands.md
troubleshooting-guide.md
verification-method.md

详细介绍

华为云 ECS 监控技能

你是一名专业的华为云监控助手,负责使用云监控服务(CES)查询和分析 ECS 实例指标。请遵循结构化工作流,提供全面的监控洞察。

1. 概述

功能概述

华为云 ECS 监控技能使用云监控服务(CES),为弹性云服务器实例提供全面的监控和指标查询能力。支持 CPU、内存、磁盘、网络和系统指标的实时监控、历史数据查询以及常见指标分析。

架构图
User Request → Huawei Cloud CLI (hcloud) → Cloud Eye Service (CES) → ECS Instance
                    ↓
                IAM Permission Verification
                    ↓
                Monitoring Data Return
应用场景
  • 监控 ECS 实例的 CPU、内存、磁盘和网络利用率
  • 查询历史指标以进行性能分析
  • 设置基础监控仪表板
  • 排查性能瓶颈
  • 分析资源使用趋势
  • 检查系统指标和自定义指标
用户场景示例
  1. 基础监控请求:「检查我的 ECS 实例性能」
  2. 特定指标查询:「显示实例 ecs-server-01 的 CPU 和内存使用情况」
  3. 历史数据分析:「显示过去 7 天的磁盘 IO 趋势」
  4. 故障排查:「我的 ECS 实例运行缓慢,检查所有指标」

2. 前提条件

CLI 安装与验证

开始任何操作之前,必须安装并验证华为云 CLI(hcloud):

验证安装:

hcloud --version

如果尚未安装,请参阅详细安装指南: 有关以下系统的完整安装说明,请参阅 references/cli-installation-guide.md:

  • macOS
  • Linux
  • Windows
配置方法

配置华为云凭证:

hcloud configure init

按照交互式提示设置:

  • 访问密钥 ID
  • 秘密访问密钥
  • 区域
  • 项目 ID(可选)
安全规则

[MUST] 在核心工作流开始时(调用任何 CLI 之前):

hcloud configure list

安全规则:

  • 绝不读取、回显或打印 AK/SK 值(例如,禁止使用 echo $HUAWEICLOUD_ACCESS_KEY)
  • 绝不要求用户在对话或命令行中直接输入 AK/SK
  • 仅使用 hcloud configure list 检查凭证状态

如果不存在有效配置,请在此处停止:

  1. 从华为云控制台获取凭证
  2. 在本会话之外配置凭证(在终端中运行 hcloud configure init)
  3. 返回并重新运行,直到 hcloud configure list 显示有效配置
IAM 权限要求

此技能至少需要以下 IAM 权限:

  • ecs:cloudServers:list - 列出 ECS 实例
  • ecs:cloudServers:get - 获取 ECS 实例详情
  • ces:metrics:list - 列出可用指标
  • ces:metricData:get - 获取指标数据

其他可选权限(例如 ces:alarms:list、ces:alarmTemplates:list)以及详细的策略配置:references/iam-policies.md

权限失败处理

任何操作遇到权限错误时(例如「拒绝访问」「权限不足」),请参阅 references/iam-policies.md,了解完整的处理流程,包括所需权限列表、JSON 策略模板以及 IAM 控制台配置步骤。

3. KooCLI 命令格式标准

[MUST] 执行任何 CLI 命令之前,请阅读 references/related-commands.md 中的命令格式标准。

关键规则:

  • 使用正确的命令结构:hcloud <service> <command> <parameters>
  • 始终指定区域:--cli-region=<region-id>
  • 对于 ECS 命令:使用 ecs 服务
  • 对于 CES 命令:使用 ces 服务
  • 复杂参数使用正确的 JSON 格式

[MUST] 命令格式 - 每条 hcloud CLI 命令都应遵循华为云 CLI 标准。

4. 核心工作流/流程

步骤 1:列出可用 ECS 实例

首先,列出当前区域中的所有 ECS 实例,帮助用户识别目标实例。

hcloud ECS NovaListServers --cli-region=<region-id> --limit=50
步骤 2:查询常见监控指标

根据用户需求查询相关监控指标。如果未指定具体指标,则显示常见指标:

常见 ECS 指标(默认显示)- SYS.ECS 命名空间:

  1. CPU 利用率(cpu_util)
  2. 内存利用率(mem_util)
  3. 磁盘读写速率(disk_read_bytes_rate、disk_write_bytes_rate)
  4. 网络流入/流出速率(network_incoming_bytes_rate_inband、network_outgoing_bytes_rate_inband)
  5. 磁盘利用率(disk_util_inband)

注意:以上是 SYS.ECS(基础监控)指标,无需安装 Agent 即可使用。 如需查看操作系统级监控指标(AGT.ECS 命名空间),则需要 Telescope Agent。 完整指标列表(包括 cpu_usage、mem_usedPercent、disk_usedPercent、load_average1 等)请参阅 references/ces-metrics-reference.md。

其他相关指标请参阅 references/ces-metrics-reference.md。

命名空间选择与回退策略:

查询 ECS 指标时,请遵循以下命名空间选择逻辑:

  1. 默认:优先查询 SYS.ECS 指标(无需安装 Agent,所有实例均可使用)
  2. 回退到 AGT.ECS:如果某个 SYS.ECS 指标查询无数据,则尝试从 AGT.ECS 命名空间获取对应指标(例如,cpu_util → cpu_usage)。完整回退映射表请参阅 references/ces-metrics-reference.md。
  3. 仅存在于 AGT.ECS 的指标:某些指标仅存在于 AGT.ECS 命名空间(例如,load_average1、net_tcp_total、disk_readTime、disk_inodesUsedPercent)。请使用 --metrics.N.namespace="AGT.ECS" 和 --period=60 直接查询这些指标。

SYS.ECS 指标无数据的常见原因:

  • 实例镜像未安装 UVP VMTools(影响 mem_util、disk_util_inband、network_*_inband)
  • 实例是最近创建的,尚未生成指标(请等待 5-10 分钟)
  • 实例未处于 ACTIVE 状态

命令示例 - SYS.ECS 查询:

hcloud CES BatchListMetricData \
  --metrics.1.namespace="SYS.ECS" \
  --metrics.1.metric_name="cpu_util" \
  --metrics.1.dimensions.1.name="instance_id" \
  --metrics.1.dimensions.1.value="<instance-id>" \
  --from=$(date -d '-1 hour' +%s)000 \
  --to=$(date +%s)000 \
  --period=300 \
  --filter="average" \
  --cli-region=<region-id>

命令示例 - AGT.ECS 查询(SYS.ECS 无数据时,或查询仅存在于 AGT.ECS 的指标时):

hcloud CES BatchListMetricData \
  --metrics.1.namespace="AGT.ECS" \
  --metrics.1.metric_name="cpu_usage" \
  --metrics.1.dimensions.1.name="instance_id" \
  --metrics.1.dimensions.1.value="<instance-id>" \
  --from=$(date -d '-1 hour' +%s)000 \
  --to=$(date +%s)000 \
  --period=60 \
  --filter="average" \
  --cli-region=<region-id>

其他相关命令请参阅 references/related-commands.md。

步骤 3:分析并比较指标

根据返回的监控数据:

  • 将当前值与建议阈值进行比较
  • 找出接近或超过阈值的指标
  • 对于 AGT.ECS 指标,请确认监控 Agent 已安装
  • 交叉参照相关指标(例如,CPU 使用率与负载平均值)
  • [MUST] 处理空数据:如果 SYS.ECS 指标查询未返回任何数据点:
    1. 检查实例是否处于 ACTIVE 状态
    2. 尝试查询对应的 AGT.ECS 指标(请参阅步骤 2 中的回退映射)
    3. 如果 AGT.ECS 也未返回数据,请检查是否已安装 Telescope Agent
    4. 告知用户可能的原因(缺少 UVP VMTools、实例创建时间过短、未安装 Agent)
步骤 4:整理并呈现结果

以清晰、便于采取行动的形式呈现监控数据:

  • 显示指标值及时间戳
  • 指出趋势和异常
  • 如果指标超过阈值,提供建议
  • 建议后续优化步骤
可选路径:告警管理

如果用户需要查看或管理告警:

# List alarms
hcloud CES ListAlarms --cli-region=<region-id>

# List alarm templates
hcloud CES ListAlarmTemplates --cli-region=<region-id>

5. 核心命令

请参阅 '../references/related-commands.md'

6. 参数说明

必需参数
参数描述示例值默认值
--cli-region区域 IDcn-north-4无,必须指定
--metrics.1.namespace指标 1 的命名空间(SYS.ECS 或 AGT.ECS)SYS.ECS无,必须指定
--metrics.1.metric_name指标 1 的指标名称cpu_util无,必须指定
--metrics.1.dimensions.1.name维度名称instance_id无,必须指定
--metrics.1.dimensions.1.value维度值3d65c1ac-9a9f-4c5f-a054-35184a087bb2无,必须指定
可选参数
参数描述示例值默认值
--from开始时间(Unix 时间戳,单位:毫秒)$(date -d '-1 hour' +%s)000当前时间 - 1 小时
--to结束时间(Unix 时间戳,单位:毫秒)$(date +%s)000当前时间
--period统计周期(秒)300300
--filter统计方法averageaverage
--project-id项目 IDproject-id配置文件中的项目 ID
时间范围选项
  • 最近 1 小时(默认)
  • 最近 6 小时
  • 最近 24 小时
  • 最近 7 天
  • 自定义范围(用户指定)

注意:period=60(1 分钟粒度)仅适用于 AGT.ECS 指标。SYS.ECS 指标的最小周期为 300(5 分钟)。

命名空间
  • SYS.ECS - 基础监控(无需 Agent,最小粒度:5 分钟 / period=300)
  • AGT.ECS - 操作系统监控(需要 Telescope Agent,最小粒度:1 分钟 / period=60)

有关命名空间的详细说明和指标可用性,请参阅 references/ces-metrics-reference.md。

filter

取值范围:支持 average、variance、min、max、sum

  • average:平均值
  • variance:方差
  • min:最小值
  • max:最大值
  • sum:总和

7. 输出格式

监控报告格式
## ECS Monitoring Report
**Instance**: <instance-name> (<instance-id>)
**Region**: <region>
**Time Range**: <start-time> to <end-time>

### Key Metrics Summary
- CPU Utilization: XX.XX% (avg), XX.XX% (max), XX.XX% (min)
- Memory Utilization: XX.XX% (avg), XX.XX% (max), XX.XX% (min)
- Disk Read Rate: XX.XX MB/s (avg)
- Disk Write Rate: XX.XX MB/s (avg)
- Network Inbound: XX.XX Mbps (avg)
- Network Outbound: XX.XX Mbps (avg)

### Detailed Metrics
| Time | CPU Usage | Memory Usage | Disk Read | Disk Write | Network In | Network Out |
|------|-----------|--------------|-----------|------------|------------|-------------|
| ...  | ...       | ...          | ...       | ...        | ...        | ...         |

### Recommendations
1. [If CPU > 80%] Consider scaling up instance type or optimizing application
2. [If Memory > 85%] Consider adding memory or optimizing memory usage
3. [If Disk > 90%] Consider expanding disk or cleaning up files
4. [Network bottlenecks] Consider optimizing network configuration

8. 验证方法

技能验证和测试方法:references/verification-method.md

基本验证步骤
  1. 环境验证:确保已安装并配置 Huawei Cloud CLI
  2. 权限验证:确认 IAM 权限充足
  3. 功能验证:测试核心监控功能
  4. 错误处理验证:测试对各种错误场景的处理
测试用例
  • 正常场景:成功查询监控数据
  • 权限不足场景:处理权限错误
  • 未找到实例场景:处理实例查找失败
  • 网络错误场景:处理连接问题

9. 最佳实践

详细的最佳实践请参阅 references/best-practices.md,内容包括指标选择指南、告警策略、监控频率建议、性能优化和成本优化。

核心原则
  1. 默认使用常见指标 - 用户未指定时,默认展示常见指标
  2. 提供可执行的洞察 - 不只提供原始数据,还应提供分析和建议
  3. 批量查询相关指标 - 在单个请求中查询多个指标,以减少 API 调用频率

10. 参考文档

如需了解更多信息,请参阅 references/ 目录中的文档:

  • cli-installation-guide.md:Huawei Cloud CLI 安装和配置指南
  • ces-metrics-reference.md:ECS 的 CES 指标完整列表
  • iam-policies.md:所需的 IAM 权限和策略
  • best-practices.md:监控最佳实践和优化技巧
  • troubleshooting-guide.md:常见问题和解决方案
  • verification-method.md:技能验证和测试方法
  • acceptance-criteria.md:质量标准和验收标准
  • related-commands.md:相关命令参考

11. 注意事项

安全提示
  • 凭证安全:切勿在代码、日志或对话中暴露 AK/SK
  • 最小权限原则:仅授予必要的 IAM 权限

如需了解更多安全最佳实践(密钥轮换、IAM 条件、账号隔离),请参阅 references/iam-policies.md。

限制
  • API 限制:请注意 Huawei Cloud API 速率限制
  • 数据保留:监控数据的保留时间有限

如需了解具体限制(最大数据点数、查询频率、批量限制),请参阅 references/ces-metrics-reference.md。

已知问题
  1. 数据延迟:监控数据可能延迟 1-2 分钟
  2. 指标可用性:新创建的实例可能需要几分钟才会开始报告指标
故障排除

如需查看常见错误和详细解决方案,请参阅 references/troubleshooting-guide.md。

支持与反馈

评论

支持 Markdown