实践场景

某电商平台客服人员接到用户反馈,商品购买出现问题,一般会交由技术人员排查解决。而微服务分布式架构中的一个业务请求通常要经过多个服务/节点后返回结果。一旦请求出现错误,往往需要在多台机器上反复翻看日志才能初步定位问题,对简单问题的排查也常常涉及多个团队。而且很难从代码层面确认某个应用依赖了哪些下游服务(数据库、HTTP API、缓存),以及被哪些外部调用所依赖。

解决方案

AOM构建基于CMDB的可观测性分析,通过CMDB构建应用与资源的关系,并基于原始数据(指标、调用链、日志、事件等)实现异常检测、历史数据分析、性能分析、关联性和场景化分析的可观测性分析的能力,从而帮助运维人员高效处理定位问题。

可观测分析步骤

步骤一:建设四层指标体系

具体操作请参见建设四层指标体系。

步骤二:配置统一监控大盘

具体操作请参见配置统一监控大盘。

步骤三:创建全量指标告警规则

通过指标告警规则可对资源的指标设置阈值条件。当指标数据满足阈值条件时产生阈值告警,当没有指标数据上报时产生数据不足事件。

按照配置方式的不同,创建指标告警规则可分为三种:按资源类型创建、按全量指标创建和按Prometheus命令创建。下面的操作以按全量指标创建为例说明。

说明:如果需要将上报的告警数据在应用监控页面显示,则创建指标告警规则时,只能选择按全量指标创建。

登录AOM 2.0控制台。

在菜单栏选择“监控中心”,进入“监控中心”界面。

在左侧导航栏中选择“告警管理 > 告警规则”。

在“规则列表”页签下单击 “创建告警规则”。

设置告警规则的规则名称等基本信息。

设置告警规则的详细信息。

选择“规则类型”为“指标告警规则”,“配置方式”为“按全量指标”。

设置指标、环境、检查频率等告警条件参数。

根据需要设置告警标签和告警标注信息,为告警匹配分组,后续可关联告警降噪策略来发送告警通知。b选择的是业务层指标,所以此处标签设置为“aom_monitor_level:business”。

设置告警通知策略。告警通知策略有两种方式,此处选择直接告警方式。

直接告警:满足告警条件,直接发送告警。

设置是否启用告警行动规则。启用告警行动规则后,系统根据关联SMN主题与消息模板来发送告警通知。

启用告警行动规则后,需要设置是否开启告警恢复通知。开启告警恢复通知后,当满足告警条件中设置的告警恢复条件,则按照选择的告警行动规则发送告警恢复通知。

单击“立即创建”,完成创建。创建完成后,单击“返回告警规则列表”可查看已创建的告警规则。

在展开的列表中,只要指标数据满足设置的告警条件时,在告警界面就会生成一条指标类告警,您可在左侧导航栏中选择“告警管理 > 告警列表”,在告警列表中查看该告警。只要该告警满足已设的通知策略,系统就会以邮件、短信或企业微信等方式发送告警通知给指定人员。

步骤四:分析业务异常:

下面的操作以分析处理步骤三:创建全量指标告警规则产生的APM事务监控异常为例说明。

将CMDB纳管CCE的工作负载和集群后,可通过CMDB整体观测CCE工作负载及依赖资源。

登录AOM 2.0控制台。

在菜单栏选择“监控中心”,进入“监控中心”界面。

在左侧导航栏中选择“应用洞察 > 应用监控”。

在“应用监控”页面左侧的应用搜索区域,按应用、区域、标签、关键字等搜索并找到需要监控的“phoenixapp1”应用。

在右侧区域查看业务层资源的健康状态。

健康时该资源层显示为绿色,当出现告警信息时,该资源层显示为红色。如下图所示,当前业务层资源存在异常。

单击告警信息,查看当前告警的详细信息和处理建议信息

单击“告警分析”,进入“调用链”页签,查看URL、调用方法等信息请求成功、请求失败、响应时间、产生时间记录。

单击某条调用链信息,在详情页面页面单击“查看”可详细追踪告警的原因,分析得出该业务层指标告警的原因是请求失败。

详细流程参考基于CMDB的可观测性分析

应用运维管理AOM 常见问题

应用运维管理AOM 常见问题

  • Agent安装失败相关类

    Agent安装机和目标机器网络不通,报错提示“[warn] ssh connect failed, 1.2.1.2:22”如何解决?

    答:安装之前先在安装页面单击连接测试,选择网络能通的安装机。

    Agent安装成功后,后续的心跳和注册都失败,代理机网络不通,如何解决?

    答:在目标机器上执行“telnet 代理机ip”,检查代理机和目标机器间的网络连通性。


  • 如何处理界面“ICAgent状态”为“离线”的问题?

    ICAgent安装完成后,界面“ICAgent状态”为“离线”。

    问题分析

    原因:AK/SK配置不正确或30200、30201端口未连通。

    影响:ICAgent无法正常使用。

    解决办法

    以root用户登录安装ICAgent的服务器。

    执行以下命令,检查AK/SK配置是否正确。

    配置AK/SK后,重新安装ICAgent。如果仍未安装成功,请执行4。

    查询端口连通性。


  • 编排好的作业,能否在执行时再选择执行机,填入脚本参数等内容?

    在创建作业时,如需在每次执行作业时填入脚本参数,确认执行目标实例等,则需要配置全局参数,并在作业步骤中引用。

    操作步骤

    1、登录AOM 2.0控制台,在菜单栏单击“自动化运维”,进入“自动化运维”界面。

    2、在左侧导航栏中选择“作业管理”,单击右上角的“新建作业”。

    设置“添加全局参数”,创建参数类型为“字符串”的参数 param1, 创建参数类型为“主机列表”的参数param2,并保存。

    3、创建作业步骤,如创建脚本执行步骤时,可在“脚本参数”中通过 ${param1} 引用字符串参数,可在选择“目标实例”时选择“全局参数”,并通过下拉框选择 param2,保存作业步骤即可生效。

    4、作业创建完成后,可以在每次执行时填入 param1 的值,并选择执行目标实例,即确定 param2 的值。


  • 安装文件包提示没有OBS权限怎么办?

    自动化运维需要访问凭证授权访问OBS,用来获取OBS中的文件包。请在“设置 > 访问凭证”页面检查是否已创建访问凭证,如果没有创建访问凭证,请参考访问凭证新建凭证;

    如果已创建访问凭证依然提示没有OBS权限,请参考如何对OBS进行访问权限控制,添加OBS访问权限。