暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

日常巡检自动化

IT那活儿 2021-09-17
2347

主题

作为运维人员,其中最基本一项职能职责针对网络、服务器等进行服务周期内的维护。
维护过程中,巡检是一项必不可缺少的工作。看似简单的巡检动作,在日常工作中尤为重要。
“日常巡检”是对相关设备进行日常的巡视和检查,发现隐患及时尽可能的去进行安全处理,尽可能的将该隐患处理在萌芽状态,就可以最大限度的减少该隐患带来不必要的损失。

背景

本文主要介绍基于智慧运维平台(AMP)将日常巡检以及简单故障恢复实现自动化处理,并可在流程图上直观地看到是哪一步流程出错,从而进一步快速精准定位问题。

实际场景

日常巡检之微服务和组件状态巡检以及故障恢复

日常巡检自动化前:

对于平台的各个微服务状态进行巡检需要登录服务器,进入指定目录,执行命令,查看各个微服务状态:
如果发现有服务状态时 No running状态还需要人工执行重启脚本进行针对性启动。
对于平台使用的组件状态进行巡检,例如kafka:
平台的kafka部署在三台服务器中,如果想要巡检三个kafka的状态时,最基础的方法是登录到每一个服务器上查看kafka的进程是否存在:
另外方法可以通过查看kafka组件信息和消费信息来确认三台kafka是否都属于正常状态:

1. 查看kafka组信息

./bin/kafka-consumer-groups.sh --bootstrap-server ip:prot --list

2. 查看消费信息

./bin/kafka-consumer-groups.sh --describe --bootstrap-server ip:prot --group 7a4f66af-a983-4a10-9a0c-19424ffcab3d

如果发现某一个kafka进程挂掉,需要登录到该服务器上执行重启脚本进行进程启动。
同时平台部署依赖的组件还有zookeeper、redis、Elasticsearch、nginx等。他们巡检的操作都和kafka 的巡检步骤相同或者类似。
如果按照最原始的巡检步骤进行巡检,那么将上述的所有微服务、组件巡检完成,费时费力。且是由于人工操作,会出现巡检漏掉、或者未注意等等问题。
所以为了减轻人工巡检时间,提高巡检效率,减少由人工巡检带来的问题。于是使用到了平台的调度功能来实现自动化巡检。
自动巡检结果流程图:
需要做到上述的流程图的过程为:
  1. 将微服务、组件所在服务器安装Agent并且纳入运维由平台进行管理;
  2. 将各个微服务、组件的启动、查看状态等脚本分别配置在平台的操作中,即将服务器上的脚本复制到平台上一份,由平台来进行执行脚本;
  3. 通过平台的调度功能进行将各个操作,通过逻辑关系串联在一起,即可形成上图的结构。
从该流程图上可以很明确清晰的看到在巡检过程中Elasticsearch、nginx两个组件进程异常,并通过了人工审核的步骤,再执行重启,重启完毕之后再次执行集群巡检,指导正常才通过。

日常巡检自动化后:

在巡检过程中不需要人工登陆服务器,完全在平台进行操作,避免巡检人员巡检不到位、误操作等问题,解决了传统巡检方式的弊端,在此优势之上,自动化巡检更能将每次巡检记录进行导出,为巡检人员制作巡检报告提供了可视化数据,使巡检报告脱离了繁琐单一的文字描述的层次。

END

更多精彩干货分享

点击下方名片关注

IT那活儿

文章转载自IT那活儿,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论