建设完整指标体系,实现立体化监控
本文档介绍如何建设完整的指标体系和统一监控大盘,实现资源和应用的全方位、立体化、可视化监控。
实践场景
用户体验至上的互联网时代,页面的响应速度、访问时延和页面的访问成功率常常会影响用户的体验,如果无法及时获知,就会导致流失大量用户,某商城的运维人员使用开源的监控软件,虽然能采集很多指标,但却分散在各处,无法统一展示。
解决方案
AOM能够实现云上应用的一站式立体化运维管理,在接入中心中可以接入需要监控的业务层、应用层、中间件层、基础设施层指标,在仪表盘中实现个性化监控,以及通过统一告警入口配置告警规则,实现业务的日常巡检,保障业务的正常运行。
AOM提供多场景、多层次、多维度指标数据的监控能力,建立了从基础设施层指标、中间件层指标、应用层指标到业务层指标的四层指标体系,将1000+种指标数据全方位呈现,数据丰富全面。
类型 |
来源 |
指标举例 |
如何接入 |
---|---|---|---|
业务层指标 |
通常来源于端侧日志SDK、提取的ELB日志。 |
访问UV、访问PV、访问延时、访问失败率、访问流量情况等 |
|
通常来源于事务监控或上报的自定义指标。 |
URL的调用次数、URL的最大并发数、URL的最大响应时间等 |
||
应用层指标 |
通常来源于组件性能图表或接口性能数据。 |
接口调用次数、请求平均时延、错误调用次数、请求吞吐量等 |
|
中间件指标 |
通常来源于原生中间件或云中间件数据。 |
文件系统容量、文件系统使用率等 |
|
基础设施层指标 |
通常来源于容器或云服务相关数据,例如计算、存储、网络、数据库等。 |
CPU使用率、内存使用率、健康状态等 |
前提条件
- 已将ELB日志接入LTS。
- 已为环境关联ECS资源。
步骤一:建设四层指标体系
- 接入业务层指标。
- 登录AOM 2.0控制台。
- 在左侧导航栏中选择“接入中心”。
- 在右侧“业务层”面板单击需要接入的指标卡片。
- 接入ELB 日志指标
- 系统可自动接入,无需用户手动操作。
- 在左侧导航栏“仪表盘”页面,选择已创建的仪表盘,单击页面右上角的,在“日志源”页签输入对应SQL语句,即可在仪表盘中查看该日志指标。以查看流量指标为例,输入对应SQL语句,单击“查询”,如图2所示。
- 接入APM事务指标
- 为工作负载安装APM探针,具体操作请参见安装APM探针。
- 安装完成后,请登录安装探针的服务对应的控制台界面,执行操作触发APM事务指标的采集。以本实践场景中的商城服务为例,可以在商城操作界面将对应商品添加到购物车。
- 登录AOM 2.0控制台。
- 在左侧导航栏选择“指标浏览”。在右侧区域通过选择指标的方式查看接入的APM指标。
- 接入ELB 日志指标
- 接入应用层指标。
- 为工作负载安装APM探针,具体操作如下:
- 登录CCE控制台,单击集群名称进入集群。
- 在左侧导航栏中选择“工作负载 ”,选择需要上报到AOM的工作负载类型。
- 单击工作负载名称,选择“性能管理配置”,单击右下角“编辑”,修改“性能管理配置”相关信息。
- 选择“APM 2.0探针”,设置“探针版本”为“latest-x86”,“APM环境”为“phoenixenv1”,从“APM应用”的下拉列表中选择创建的“phoenixapp1”应用。
- 设置完成后,单击“保存”。
- 安装完成后,请登录安装探针的服务对应的控制台界面,执行操作触发应用层指标的采集。以本实践场景中的商城服务为例,可以在商城操作界面将对应商品添加到购物车。
- 登录AOM 2.0控制台。
- 在左侧导航栏选择“指标浏览”。在右侧区域通过选择指标的方式查看接入的应用层指标。
- 为工作负载安装APM探针,具体操作如下:
- 接入中间件指标。
- 将数据上传到ECS服务器。
- 下载mysqld_exporter-0.14.0.linux-amd64.tar.gz软件包,下载地址:https://prometheus.io/download/。
- 以root用户登录ECS服务器,将下载的Exporter软件包上传到ECS服务器并解压。
- 登录RDS 控制台,在“实例管理”界面实例列表中单击一个RDS实例名。在“基本信息”界面查看RDS安全组。
图3 查看RDS安全组
- 检查RDS的安全组是否已开放3306端口。
图4 检查RDS端口是否开放
- 执行以下命令,进入解压文件夹,并在ECS服务器上配置mysql.cnf文件。
cd mysqld_exporter-0.14.0.linux-amd64 vi mysql.cnf
例如,在mysql.cnf文件中添加如下内容:
[client]
user=root(rds用户名)
password=****(rds密码)
host=192.168.0.198(rds公网IP)
port=3306(端口)
- 执行以下命令,启动mysqld_exporter工具。
nohup ./mysqld_exporter --config.my-cnf="mysql.cnf" --collect.global_status --collect.global_variables &
- 执行以下命令,确认工具是否正常启动。
curl http://127.0.0.1:9104/metrics
如果回显信息如图5所示,能够查看到指标则说明工具启动正常。
- 通过虚机接入方式接入中间件指标。
- 登录AOM 2.0控制台。
- 在“虚机接入”界面为ECS服务器安装UniAgent采集工具,具体操作请参见手动安装UniAgent。
- 在左侧导航栏中选择“接入中心”,在右侧“Prometheus 中间件”面板单击需要接入的指标卡片。
- 在弹框中配置采集任务和安装Exporter,详细操作请参见虚机场景Exporter接入。
- 完成后,单击“立即创建”。
- 接入完成后,在左侧导航栏,选择“指标浏览”。在右侧区域通过选择指标的方式查看接入的中间件指标。
- 将数据上传到ECS服务器。
- 接入基础设施层指标。
- 登录AOM 2.0控制台。
- 在左侧导航栏中选择“接入中心”。
- 在右侧“Prometheus 运行环境”与“Prometheus 云服务”面板单击需要接入的指标卡片。
- 选择容器指标卡片:
- 选择云服务监控指标卡片:
- 在弹出的“云服务接入”对话框中选择需要监控的云服务。例如RDS或DCS服务。
- 单击“确定”完成接入。
接入完成后,系统自动跳转至“云服务监控”页面,即可查看已选择的云服务运行状态等信息。
- 接入完成后,在左侧导航栏选择“指标浏览”。在右侧区域通过选择指标的方式查看接入的基础设施层指标。
步骤二:配置统一监控大盘
- 创建指标告警规则。
通过指标告警规则可对资源的指标设置阈值条件。当指标数据满足阈值条件时产生阈值告警,当没有指标数据上报时产生数据不足事件。
按照配置方式的不同,创建指标告警规则可分为两种:按全量指标创建和按Prometheus命令创建。下面的操作以按全量指标创建为例说明。
- 登录AOM 2.0控制台。
- 在左侧导航栏中选择“告警管理 > 告警规则”。
- 在“指标或事件”页签单击“创建”。
- 设置告警规则的规则名称等基本信息。
- 告警规则设置。规则类型选择“指标告警规则”,配置方式选择“全量指标”,并在下拉列表中选择Prometheus实例。
- 设置告警规则详情。
指标的详细设置由统计周期、条件、检测规则、触发条件以及告警级别组成。指标告警的检测规则,由统计方式(平均值、最小值、最大值、总计、样本个数)、判断条件(>=、<=、>、<)和阈值组成。例如,统计周期为“1分钟”,检测规则设置为“平均值>1”,触发条件为连续周期“3”,告警级别为“紧急”,表示连续三个统计周期,指标的平均值大于已设置的阈值1时,生成紧急告警。
- 单击“高级设置”,设置检查频率、告警恢复等信息。
- 设置告警通知策略。告警通知策略有两种方式,如图6所示,此处选择直接告警方式。
直接告警:满足告警条件,直接发送告警。选择直接告警方式,需要设置通知频率和是否启用告警行动规则。
- 设置发送告警通知的频率,请根据需要从下拉列表中选择。
- 设置是否启用告警行动规则。启用告警行动规则后,系统根据关联SMN主题与消息模板来发送告警通知。
- 单击“立即创建”,完成创建。创建完成后,单击“返回告警规则列表”可查看已创建的告警规则。
如图7所示,单击规则名称前的,可查看该告警规则的详细信息。
在展开的列表中,只要监控对象满足设置的告警条件时,在告警界面就会生成一条指标类告警,您可在左侧导航栏中选择“告警管理 > 告警列表”,在告警列表中查看该告警。只要某个主机满足已设的通知策略,系统就会以邮件、短信或企业微信等方式发送告警通知给指定人员。
- 创建仪表盘。
- 新建仪表盘。
- 登录AOM 2.0控制台。
- 在左侧导航栏选择“仪表盘”。
- 单击列表左上角的“创建仪表盘”。
- 在弹出的“新建仪表盘”对话框中,设置相关参数。
- 设置完成,单击“创建”。
- 为仪表盘添加可视化图表。
- 在仪表盘列表中,单击已创建的仪表盘。
- 进入对应仪表盘页面,单击页面右上角的,为该仪表盘添加图表。请根据需要,选择合适的图表。
表2 添加图表 添加图表类型
数据来源
使用场景
请添加指标图表
指标数据
业务层、应用层、Prometheus 中间件等指标。
请添加日志图表
日志数据
监控业务指标或其他日志指标,如基于ELB日志清洗出来的接口黄金指标(时延、吞吐和错误)。
- 可重复上面的操作为仪表盘添加多个可视化图表。添加完成后,单击,保存仪表盘,如图13所示。
- 新建仪表盘。