Linux云监控项目教程_AliyunCloudWatchPrometheus整合

12次阅读

阿里云云监控不原生支持prometheus采集,但可通过Prometheus+Alibaba Cloud Exporter+ARMS/SLS组合实现统一监控:Exporter调用cms OpenAPI拉取指标,Prometheus抓取后写入ARMS或SLS,再通过ARMS配置大盘与告警。

Linux云监控项目教程_AliyunCloudWatchPrometheus整合

Aliyun CloudWatch(阿里云云监控)本身不直接支持 Prometheus 原生指标采集,但可通过 Prometheus + Alibaba Cloud Exporter + 阿里云 ARMS 或 SLS 的组合方式,实现对阿里云资源(ECS、RDS、SLB、redis 等)的统一可观测性监控。核心思路是:Prometheus 主动拉取云服务指标(通过阿里云 OpenAPI),再将数据写入阿里云 ARMS Prometheus 实例或投递至 SLS 进行长期存储与告警。

一、前置准备:开通服务与获取凭证

确保已开通以下服务并完成基础配置:

  • 阿里云账号具备 AliyunCloudMonitorReadOnlyaccess 或自定义策略(需包含 cms:Describe*ecs:Describe* 等只读权限)
  • 创建 AccessKey ID / AccessKey Secret(建议使用子用户 + RAM 授权,禁用主账号密钥)
  • 开通 ARMS Prometheus 托管版(推荐,免运维;或自建 Prometheus + remote_write 至 ARMS)
  • (可选)开通 SLS 日志服务,用于存储原始指标或做多维分析

二、部署 Alibaba Cloud Exporter

这是关键组件,负责调用阿里云 CMS(Cloud Monitor Service)OpenAPI 拉取指标,并暴露为 Prometheus 可采集的 http 接口

  • 下载最新版:github.com/aliyun/alibaba-cloud-exporter
  • 编写配置文件 config.yml,指定要监控的地域、产品、指标项和维度(如 ECS 实例 ID、RDS 实例名)
  • 启动 exporter(示例):
    ./alibaba-cloud-exporter --config.file=config.yml --web.listen-address=:9876
  • 验证:访问 http://localhost:9876/metrics,确认返回类似 aliyun_ecs_cpuutilization_average{instanceId="i-bp1xxx",region="cn-hangzhou"} 12.5 的指标

三、配置 Prometheus 抓取与写入 ARMS

若使用 ARMS Prometheus 托管版,无需自建 Prometheus Server,只需配置 remote_write:

  • 在 ARMS 控制台获取 remote_write 地址Authorization Token(格式为 Bearer xxx)
  • 修改本地 Prometheus 的 prometheus.yml

remote_write:
- url: "https://arms-Prometheus-endpoint.aliyuncs.com/api/v1/write"
headers:
Authorization: "Bearer your-token-here"
scrape_configs:
- job_name: 'alicloud-exporter'
static_configs:
- targets: ['exporter-host-ip:9876']

  • 重启 Prometheus,观察 ARMS 控制台「指标查询」中是否出现 aliyun_* 开头的指标

四、在 ARMS 中配置大盘与告警

ARMS 提供开箱即用的阿里云资源监控大盘,也支持自定义:

  • 进入 ARMS 控制台 → Prometheus 监控 → 对应实例 → 「预置大盘」中启用「ECS 云服务器监控」等模板
  • 新建告警规则:选择指标如 aliyun_rds_diskusage_average,设置阈值(如 >85%)、持续时间(5m)、通知渠道(钉钉/短信/邮件)
  • (进阶)用 PromQL 关联多指标,例如:
    100 - avg by(instanceId)(aliyun_ecs_cpuutilization_average{region="cn-shanghai"}) 计算平均空闲 CPU

不复杂但容易忽略:Exporter 的拉取频率(默认 60s)需与 CMS 接口限流匹配;生产环境建议用 systemd 管理进程,并配置日志轮转与健康检查。

text=ZqhQzanResources