阿里云 EBS 云盘监控与指标分析技能,用于查询和分析阿里云弹性块存储(EBS)云盘的监控指标,支持查询单块或多块云盘、时间序列聚合以及跨云盘指标分析。
主要能力
该技能对应架构为:EBS 监控服务 + 云监控 + EBS 云盘(系统盘/数据盘)。它支持分析磁盘性能指标,用于追踪磁盘 IOPS(每秒读写次数)、监控磁盘带宽(BPS,每秒字节数)、分析磁盘性能趋势、对比多块云盘性能、按盘类型/实例/可用区聚合指标,以及识别性能瓶颈与优化机会。
支持的指标共八项:
disk_bps_percent - 磁盘带宽利用率百分比 disk_iops_percent - 磁盘 IOPS 利用率百分比 disk_read_block_size - 平均读块大小 disk_read_bps - 读带宽(字节/秒) disk_read_iops - 读 IOPS disk_write_block_size - 平均写块大小 disk_write_bps - 写带宽(字节/秒) disk_write_iops - 写 IOPS
聚合能力包括:时间维度上支持 SUM、COUNT、AVG、MAX、MIN;跨云盘维度上可按 SUM、AVG、COUNT、MAX、MIN 聚合;分组维度支持 DiskId、DeviceType、DeviceCategory、EcsInstanceId 或可用区(Azone)。
安装与前置检查
需要阿里云 CLI >= 3.3.3。运行 aliyun version 验证版本;若未安装或版本过低,可运行 curl -fsSL https://aliyuncli.alicdn.com/setup.sh | bash 安装/更新,或参见 references/cli-installation-guide.md。
还需更新阿里云 CLI 插件:运行 aliyun configure set --auto-plugin-install true 启用自动插件安装,并运行 aliyun plugin update 确保已有插件保持最新。
认证与权限
认证方面要求提供阿里云凭证。安全规则明确:绝不读取、回显或打印 AK/SK 值(禁止 echo $ALIBABA_CLOUD_ACCESS_KEY_ID);绝不要求用户直接在会话或命令行输入 AK/SK;绝不使用字面凭证值执行 aliyun configure set;仅使用 aliyun configure list 检查凭证状态。若无有效 profile 则应停止,需在阿里云控制台获取凭证,并在会话之外(通过终端中的 aliyun configure 或 shell profile 中的环境变量)配置凭证,待 aliyun configure list 显示有效 profile 后再返回重试。
所需的 RAM 权限为 ebs:DescribeMetricData(查询云盘监控指标)。权限失败时需读取 references/ram-policies.md 获取完整权限列表,并使用 ram-permission-diagnose 技能引导用户申请权限,暂停等待用户确认授权后再继续。
参数与使用方式
执行任何命令或 API 调用前,所有用户可自定义参数(如 RegionId、DiskId、MetricName、时间范围、聚合方式等)必须与用户确认,不得在未经明确同意时假定或使用默认值。
主要参数:--metric-name(必填,查询的指标,如 disk_read_iops、disk_write_bps);--biz-region-id(必填,地域 ID,如 cn-hangzhou、cn-shanghai);--start-time(可选,ISO 8601 格式查询开始时间 yyyy-MM-ddTHH:mm:ssZ);--end-time(可选,查询结束时间);--period(可选,数据粒度秒数,5、10、60、300、600、3600,默认 5);--dimensions(可选,DiskId、DeviceType、DeviceCategory、EcsInstanceId、Azone 的 JSON 过滤器,默认空即全部云盘);--aggre-ops(可选,时间聚合方法,如 AVG_OVER_TIME、SUM_OVER_TIME、MAX_OVER_TIME,默认不聚合);--aggre-over-line-ops(可选,跨云盘聚合,NON、SUM、AVG、COUNT、MAX、MIN,默认 NON);--group-by-labels(可选,按标签分组,默认不分组)。
核心工作流开始时(任何 CLI 调用前)必须启用 AI-Mode:运行 aliyun configure ai-mode enable 以及 aliyun configure ai-mode set-user-agent --user-agent "AlibabaCloud-Agent-Skills/alibabacloud-ebs-disk-metric-analyzer"。
典型场景包括:查询单块云盘指标(如查询某盘最近一小时的读 IOPS);查询多块云盘并聚合(如查询多块数据盘的平均写带宽);按盘类别分组指标(如按 cloud_essd 分组分析 IOPS 利用率);跨可用区对比性能;多维度过滤(如查询特定 ECS 实例上特定云盘的指标)。命令均通过 aliyun ebs describe-metric-data 并配合上述参数执行。
必须注意:在每一个退出点(工作流成功、失败、错误/异常、用户取消、会话结束等任何不再执行 CLI 命令的场景)都要先禁用 AI-Mode:aliyun configure ai-mode disable。AI-Mode 仅用于 Agent Skill 调用场景,技能停止运行后不得保持启用。
验证与清理
查询指标后可进行成功验证:检查响应状态(是否存在 RequestId 表示 API 调用成功)、数据是否存在(DataList 是否包含预期条目)、时间范围(Datapoints 时间戳是否匹配请求范围)、指标值(是否在预期范围内,如百分比 0-100)、无警告(Warnings 数组是否为空或审阅警告)。详细步骤见 references/verification-method.md。该技能仅查询监控数据,不创建任何资源,无需清理。
最佳实践
选择合适的 period:短期分析用较小周期(5s、10s),长期趋势用较大周期(300s、3600s)。遵守周期对应的时间范围限制(如 5s 周期最大支持 12 小时)。谨慎使用过滤以减小数据量并提升查询性能。根据分析目标选择聚合方法(趋势用 AVG,峰值检测用 MAX,总量用 SUM)。按相关维度分组(按 DeviceCategory 对比盘类型,按 Azone 做区域分析)。处理 Warnings 数组(可能指示数据不完整)。注意时区:所有时间戳使用 UTC+0(ISO 8601 格式)。批量查询:多块云盘使用 dimensions 中的数组过滤器而非多次 API 调用。结果解析:以编程方式解析 JSON Datapoints 字段提取时间戳-值对。监控配额:查询大时间范围或大量云盘时注意 API 速率限制。
参考文件
references/ram-policies.md(EBS 监控 API 的完整 RAM 权限策略);references/related-commands.md(本技能使用的所有 EBS CLI 命令);references/verification-method.md(详细验证步骤与命令);references/acceptance-criteria.md(测试模式与验收标准);references/cli-installation-guide.md(阿里云 CLI 安装指南)。
常见问题与高级用法
常见问题:“InvalidParameter: The parameter MetricName is invalid”需核对指标名与八项支持指标完全一致(区分大小写);“InvalidParameter: Period exceeds time range limit”需缩短时间范围或增大周期粒度;返回空 DataList 需检查云盘是否存在于指定地域并匹配维度过滤;数据不完整警告可能因某些时间点指标不可用,可调整时间范围或检查该时段云盘活动。
高级用法:可使用 --cli-query 进行 JMESPath 查询,如 --cli-query "DataList[0].Datapoints" 仅提取首个结果的 datapoints;也可将结果管道传给 jq 做高级 JSON 处理。更多信息可参见阿里云 EBS 文档与 OpenAPI Explorer - DescribeMetricData。