华为云 AOM 应用运维管理实操:从指标采集、日志接入到告警规则与 hcloud CLI 运维

举报
yd_288136036 发表于 2026/11/15 09:17:06 2026/11/15
【摘要】 本文以 AOM 2.0 为主线,讲清华为云应用运维管理的统一监控告警链路:Prometheus 指标采集的三种接入方式、LTS 日志接入与日志告警、告警规则分级与降噪,以及基于 hcloud CLI 的告警查询与每日巡检脚本,附可直接运行的命令与配置示例。

应用出问题时,最耗时间的往往不是修复本身,而是先回答三个问题:哪里出问题了、影响面有多大、是谁先发现的。华为云 AOM(应用运维管理)就是为这三个问题准备的统一入口:指标、日志、链路、事件四类数据汇到一处,在同一个地方配告警、看仪表盘、查问题。本文结合 AOM 2.0 的实际能力与 hcloud CLI(KooCLI 7.2.2)的一线用法,记录一条从采集接入到告警落地的完整链路。

一、AOM 是什么:可观测性的统一入口

AOM 是华为云的可观测平台,基于指标、链路、日志、事件全景数据监控,提供一体化监控解决方案。它本身不是单一工具,而是一组能力的统一入口,底层包含四块:

组件 职责 对应开源概念
Prometheus 监控 全托管 Prometheus,指标采集与存储 Prometheus + Thanos/Cortex
LTS(云日志服务) 日志收集、实时查询、存储 ELK / Loki
APM(应用性能管理) 链路追踪、前端/后端性能监控 Jaeger / SkyWalking
CES(云监控服务) 云资源基础监控告警 CloudWatch

AOM 2.0 于 2024 年 3 月转商,是当前主推版本,全面基于 Prometheus 架构构建。理解这个定位很重要:之后所有的告警规则、仪表盘和 PromQL 查询,都是站在同一份数据底座上的,指标告警、日志告警和事件告警可以在同一套规则体系里表达,而不是三个系统各配一套。

二、Prometheus 指标采集:三种接入方式

AOM 的指标采集以全托管 Prometheus 为核心,接入方式按运行位置分三种。

1. CCE 容器场景。 AOM 与 CCE 无缝对接,自动注入 Prometheus 采集配置(基于 ServiceMonitor/PodMonitor),无需手动部署 exporter,采集端自动扩缩容。工作负载一上线,容器指标就开始进 AOM。

2. ECS 主机场景。 在 ECS 上安装 AOM 采集代理 ICAgent,自动采集 CPU、内存、磁盘、网络等基础指标。主机、进程、容器三个层面的指标都由同一代理上报。

3. Remote Write 接入。 自建 Prometheus 通过 remote_write 把指标推送到 AOM 的 Prometheus 实例,实现统一存储和查询。配置示例如下:

remote_write:
  - url: "https://<AOM-Prometheus实例地址>/api/v1/write"
    basic_auth:
      username: "<用户名>"
      password: "<密码或 AK/SK 派生的凭证>"

除此之外还可以通过 AddMetricData 接口上报自定义业务指标,命名空间为 CUSTOMMETRICS,例如订单量、下单成功率这类业务指标,都可以和基础设施指标放在同一个仪表盘里对照。

AOM 内置四层指标命名空间:PAAS.CONTAINER(组件、实例、进程、容器指标)、PAAS.NODE(主机、网络、磁盘、文件系统指标)、PAAS.SLA(SLA 指标)、PAAS.AGGR(集群聚合指标),再加上 CUSTOMMETRICS 自定义指标。排障时先确认指标在哪个命名空间,能少走很多弯路。

AOM 支持原生 PromQL 查询,即时查询对应 CLI 操作 ListInstantQueryAomPromGet:

hcloud AOM ListInstantQueryAomPromGet \
  --cli-region=cn-north-4 \
  --project_id=<项目ID> \
  --query='avg(rate(container_cpu_usage_seconds_total[5m]))'

这条命令查的是全部容器近 5 分钟 CPU 使用率的平均值。把 query 换成你自己的表达式,就能在终端里完成一次快速验证,不用先打开控制台。

三、日志接入:LTS 统一入口

AOM 的日志能力由 LTS(云日志服务)提供,但通过 AOM 控制台统一入口操作,接入方式有三种:ICAgent 采集——在 ECS/CCE 上安装 ICAgent,配置日志采集路径,自动收集日志文件;CCE 容器日志——容器 stdout/stderr 日志自动接入,按 Namespace/Deployment/Pod 分层查询;API 上报——通过 LTS SDK 或 API 主动上报日志。

日志真正的价值在联动:AOM 支持基于日志内容配置告警规则,当日志中出现特定关键词或匹配正则模式时触发告警。指标告警加日志告警加事件告警三合一,才是 AOM 所说的统一告警。举个例子,网关日志里 5 分钟内出现 10 次以上 “connection refused”,可以直接触发一条 Minor 告警推送给值班人,而不用等到 CPU 指标先报警。

四、告警规则配置

AOM 2.0 的告警体系支持三种规则类型:指标告警(metric),基于 PromQL 表达式的阈值告警;事件告警(event),基于 CCE、RDS、EVS、LTS、AOM 等事件源;日志告警,基于 LTS 日志关键词或正则匹配。

告警级别分四档:Critical(紧急)> Major(重要)> Minor(次要)> Info(提示)。级别不是随便填的,它决定通知渠道和响应时效:Critical 建议电话加短信,Minor 走群消息就够了。

通知机制有两种模式:直接告警(direct),触发即通知,可配置通知频率(只告一次、每 5 分钟、每小时、每天);告警降噪(alarm_policy),通过告警行动规则进行分组、抑制、收敛,避免告警风暴。规则状态分 OK(正常,未触发)、alarm(已超限触发)、Effective(生效中)、Invalid(已停用)四种。

对接 CCE 时,AOM 提供 48 个以上内置底线告警规则和 10 个以上开箱即用仪表盘,覆盖常见运维场景。新环境接入后先启用内置规则,再按业务补自定义规则,比从零手写要稳妥。

五、hcloud CLI 常用运维操作速查

当前环境中 hcloud 版本为 7.2.2,AOM 服务下有 80 多个操作。按场景分类,常用的有:

场景 操作 说明
指标 ShowMetricsData 查询指定时间范围的指标监控数据
指标 AddMetricData 上报自定义指标数据
指标 ListMetricItems / ListSeries 查询指标列表 / 查询指标时间序列
Prometheus ListPromInstance 查询 Prometheus 实例列表
Prometheus ListInstantQueryAomPromGet / ListRangeQueryAomPromGet PromQL 即时查询 / 范围查询
告警规则 ListMetricOrEventAlarmRule 查询 AOM 2.0 指标/事件告警规则列表
告警规则 AddOrUpdateMetricOrEventAlarmRule 新增或修改 AOM 2.0 告警规则
告警规则 ListAlarmRule / ShowAlarmRule 查询 AOM 1.0 阈值规则列表 / 单条详情
通知 ListActionRule / ListNotifiedHistories 查询告警行动规则 / 查询告警通知历史
降噪 ListMuteRule / AddMuteRules 告警静默规则
事件 ListEvents / CountEvents 查询 / 统计事件

查询 AOM 告警的示例命令如下:

# 查询 AOM 2.0 全部指标告警规则
hcloud AOM ListMetricOrEventAlarmRule \
  --cli-region=cn-north-4 \
  --project_id=<项目ID> \
  --alarm_rule_type=metric

# 查询 AOM 1.0 阈值规则列表
hcloud AOM ListAlarmRule \
  --cli-region=cn-north-4 \
  --project_id=<项目ID> \
  --limit=50

# 查询 Prometheus 实例,确认采集接入状态
hcloud AOM ListPromInstance \
  --cli-region=cn-north-4 \
  --project_id=<项目ID>

指标查询命令的参数较多,写脚本前先看帮助输出,以实际版本为准:

hcloud AOM ShowMetricsData --help
hcloud AOM ListMetricOrEventAlarmRule --help

把每天的巡检写成一个脚本,定时跑一次,结果重定向到日志文件,就是一份最简单的无人值守巡检:

#!/bin/bash
# AOM 每日巡检:列出指标告警规则与 Prometheus 实例
REGION=cn-north-4
PROJECT_ID=<项目ID>

hcloud AOM ListMetricOrEventAlarmRule \
  --cli-region=$REGION --project_id=$PROJECT_ID --alarm_rule_type=metric

hcloud AOM ListPromInstance \
  --cli-region=$REGION --project_id=$PROJECT_ID

六、告警降噪与值班实践

告警配好只是开始,真正考验人的是告警风暴。一个节点抖动可能同时触发主机、容器、业务三层告警,值班手机一分钟响十次,第二天就没有人认真看告警了。AOM 的降噪手段有三件:告警行动规则做分组、抑制和收敛;静默规则在变更窗口内压住已知告警;通知模板统一文案,让每条告警都带上服务名、指标、当前值和处理入口。

建议的落地顺序是:先接内置底线规则跑一周,统计每条规则的触发次数和误报率;再把高频误报的阈值放宽或加静默;最后才补业务自定义规则。告警规则也要像代码一样做版本管理:谁改的、为什么改、改完触发情况如何,都要有记录。

七、落地检查清单

  1. 采集是否全:CCE 工作负载、ECS 主机、自建 Prometheus 是否都进了同一个 AOM 实例;
  2. 仪表盘是否有人看:核心服务的黄金指标(流量、错误率、延迟、饱和度)是否都在一个仪表盘上;
  3. 告警是否分级:Critical 是否真的紧急,Info 是否不该进电话渠道;
  4. 通知是否闭环:被告警触达的人能不能在告警里直接找到处理入口;
  5. 定期演练:每月做一次告警演练,确认规则、通知和值班表都没有过期。

结语

AOM 的核心设计思想只有一句话:数据多源接入,观测统一出口。无论指标来自 Prometheus 采集、日志来自 LTS、链路来自 APM,还是云服务指标来自 CES,都可以在 AOM 统一配置告警规则、统一在仪表盘展示、统一通过 PromQL 查询。把采集、告警、降噪、值班这四件事按上面的顺序落下来,应用出问题时,回答开头那三个问题就不再需要翻三个系统。

【声明】本内容来自华为云开发者社区博主,不代表华为云及华为云开发者社区的观点和立场。转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息,否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0)

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。