更新时间:2023-02-27 10:23:40

AnyRobot支持对AnyShare Kubernetes平台生产环境产生的事件进行监控及告警,帮助运维管理员第一时间了解到云基础设施及系统服务中存在的运行风险,进而定位风险根源、及时解决故障,保障企业对外业务服务的可用性、稳定性。若故障根源涉及到程序代码问题,可帮助相关开发工程师了解故障根源及影响范围,帮助快速排障。

您可根据在「AnyShare服务可用性监控仪表盘」定位到的异常服务对象,借助AnyRobot「Kubernetes事件监控仪表盘」继续追踪定位异常原因

下文以AnyShare Kubernetes事件监控场景为例,介绍如何使用AnyRobot「Kubernetes事件监控仪表盘」发现异常、溯源异常并定位异常原因:

准备工作:

完成以下准备工作后,方可通过AnyRobot「Kubernetes事件监控仪表盘」及「Kubernetes事件告警模板」实现对AnyShare Kubernetes事件的监控及告警。

  1. 完成数据接入:使用kubernetes-events组件完成AnyShare Kubernetes events数据的采集;
  2. 完成对象导入:导入对应的告警模版、通知模版、仪表盘模版文件;
  3. (根据实际需求选择)完成告警配置:配置SMTP邮件服务及邮件转发配置。

操作详情请参见《AnyRobot Family Kubernetes事件监控及告警实施指导》,详见:AnyShare://产品安装包和补丁库/AnyRobot产品部/AnyRobot 5.0{对应版本}/AR Eyes 5.0.0.4/场景分析模板/云基础设施可观测性{对应子场景实施指导}

1. 筛选查看异常对象相关的监控数据

登入AnyRobot,进入仪表盘后,选择Kubernetes监控>Kubernetes事件监控仪表盘,可查看针对AnyShare Kubernetes事件的监控数据

在仪表盘最上方对象名称筛选框中输入异常服务名称(sharemgnt),在下拉框中选中需要查看的异常Pod的名称,进一步查看与此Pod相关的事件监控数据,如下所示:

提示:AnyRobot仪表盘支持添加自定义过滤器、支持过滤标签筛选等多种过滤操作,详细说明请参见 AnyRobot Eyes 产品使用指导数据应用>仪表盘>数据过滤下钻 的相关章节。

2. 多维度了解异常事件,溯源异常原因

1)了解与异常对象相关的异常事件数

仪表盘最上方区域展示了与此异常对象有关的异常事件(事件等级为Warning)、正常事件(事件等级为Normal)的统计数量及占比信息,如下图所示:

在此区域了解到AnyShare Kubernetes平台发生的异常事件数量后,您可在仪表盘下方的监控面板中继续了解异常事件原因。
2)了解异常原因

下图所示的监控区域展示了Pod及Node层级下各类异常事件的统计数量。

基于此,您可快速了解异常对象的具体异常原因例如:上方“事件数量统计”区域共监控到14个异常事件,您可在此区域明确其中的1个异常事件为AnyShare所属的Kubernetes集群发生的1次Pod调度失败事件)。
3)了解异常事件的发生趋势

下图所示的监控区域从不同维度展示了指定时间段内与此异常对象相关的异常事件数量趋势。

借助此类监控数据,您可进一步明确异常事件最早出现的时间点(如下图所示:2023-01-13 12:50最早监控到异常),从命名空间、异常原因等维度了解指定时间周期内异常事件发生的次数及频率。同时您可以结合服务所支撑的对外业务功能的业务规律(例如:不同时间段不同量级的访问用户、访问行为)更多维度地了解异常事件,还原异常现场。

3. 查看事件详情,定位异常原因

1)查看事件详情列表(Warning事件、Normal事件)

结合以上监控数据了解到异常对象的异常事件原因后,您可借助下图所示的事件详情列表进一步明确异常原因(“详情信息”中展示了异常事件的具体错误描述。例如:原因为“Failed”的异常事件,其错误原因描述为拉取镜像失败,镜像地址错误;原因为“FailedScheduling”的异常事件。其错误原因描述为节点不可用,未满足Pod的反亲和规则)。

详情列表也提供了排序、筛选等功能,您可点击表头列右侧的图标,基于同一维度综合查看Warning事件详情列表和Normal事件详情列表,以更全面地还原异常事件(例如:Pod驱逐事件的发生,可能是该节点某一Pod占用资源猛增或该节点起了过多的Pod导致了该Pod被驱逐,此时可根据同一时间点综合查看两类事件详情,更全面地还原事件异常现场)。

2)查看异常事件原始日志

点击仪表盘监控面板右上角的>编辑按钮,进入搜索>图表页面,切换为事件页面后,即可查看原始日志,更深入了解异常事件的异常原因,如下所示:

您也可以选中所需查看的异常原因,点击 图标后,再点击【搜索】按钮,查看指定异常原因的事件日志,进一步确定排障方向,如下所示:

若需要更及时地追踪AnyShare出现的Kubernetes异常事件,您可同步配置相应的告警功能(配置帮助信息请参见 准备工作),方便您在未登陆AnyRobot的况下也能通过邮件或企业微信的方式收到异常告警通知,第一时间发现系统中存有的运行风险,进而排障修复,以保障AnyShare业务的稳定性,提升对外业务功能的使用体验。Kubernetes事件告警的具体使用介绍如下:

1. 查看告警事件基本信息

当AnyShare系统出现服务、节点等异常情况时,AnyRobot将通过邮件或企业微信的方式为您发送告警通知。收到Kubernetes异常事件的告警通知后,您可登陆AnyRobot,进入告警>告警事件页面,查看触发告警的告警规则及相应的告警描述,了解Pod异常的基本情况,如下所示:

2. 查看告警详情

选择需查看的告警事件,点击【告警详情】可查看触发该告警规则所有告警事件的详细信息,包括告警时间、主机IP、异常对象名称、严重等级等告警记录,以进一步了解异常情况,如下所示:

3. 查看原始日志

点击告警详情列表的【在搜索中打开原始日志】,可跳转至搜索>事件页面查看告警事件的原始日志。在此页面,您也可以点击图标来查看原始日志上下文,更全面地了解此异常事件,如下所示: