当前位置: 首页 > 科技观察

Linux运维工具详解:运维流程管理、运维版本变更、运维监控告警

时间:2023-03-11 23:49:21 科技观察

概述应用上线后,运维工作才刚刚开始。具体工作可能包括:升级版本上线工作、服务监控、应用状态统计、日常服务状态巡检、紧急故障处理、日常服务变更调整、集群管理、服务性能评估优化、数据库管理优化、应用架构伸缩、安全,运维开发随着应用PV的增减。今天重点介绍运维流程管理、运维发布变更、运维监控告警三个方面需要的工具。一、运维流程管理工具1、发布变更流程管理工具作为系统接口与其他角色的连接。并提供审批链接,控制发布变更的风险。流程管理工具不负责具体业务操作的执行,仅作为文档系统跟踪流程,确保闭环。2、告警与应急管理工具体现了对业务损害告警的自动化管理。人工确认后升级为爆单。通过创建订单管理告警和突发事件,保证流程的闭环,并对每次故障进行经验总结,提供衡量服务可用性的KPI。二、运维发布变更工具1、版本管理工具(数据库)所有发布都要从版本管理开始。开发好的版本包先进入版本管理工具,然后从版本管理工具分发到现网发布。结束同步一台服务器以发布另一台服务器的做法。2、配置管理工具(数据库)的版本加配置等于现网每台机器的状态。最粗粒度的配置管理在IP层,相当于机器的资产管理,分组到业务模块、地域等不同的业务概念。更细粒度的点会管理进程和进程的相关配置。3、配置和版本下发工具将指定的版本和配置好的配置下发到现网的机器上。不同的版本和配置方式需要完全不同的交付方式。以ssh/fabric为代表的分发方式是以脚本为中心的。以puppet/chef为代表的分发方式是以配置为中心的。4、现网状态同步工具与管理工具中的记录不一致,避免现网状态漂移。需要一个工具来定期报告现网的实际状态。5、服务调度工具的发布和变更,往往需要一个串行的过程,先做A模块,再做B模块。当机器较多时,需要并发执行并发操作,保证非并发操作串行执行。同时,很多发布和变更过程需要运行和管理范围之外的服务,比如云端的DNS服务器记录。这就需要一个服务调度工具,一个统一的调度配置和版本下发工具,一个流程文档工具,以及其他系统的API接口,组装成一个流程。6、资源管理和隔离工具以xen/kvm为代表的工具让运维更加灵活的切割资源。比如虚拟机的快速启停,ip在idc中的漂移等。以lxc/docker为代表的工具让运维进一步将资源切到进程层面。资源隔离代理的细粒度资源控制可以实现更好的资源利用率,并使可扩展的资源配置更加容易。7、发布变更统一接口,对所有下层工具进行封装,提供简单的接口完成标准化的发布变更操作。三、运维监控告警工具1、采集工具一般是采集日志文件,也可以定时轮询DB或者其他系统接口。一个流行的开源解决方案是logstash。2.采集工具采集工具向采集工具汇报。或者开发者直接修改代码,将指标上报给采集工具。该进程的开源解决方案仍然是logstash。3、统计存储工具每次调用可上报一次,统计工具负责统计一分钟内的次数。上报也可以是每5秒上报一次值,统计工具负责统计一分钟内的最大值。统计工具的存在是为了方便报告。流行的开源方案是statsd,一些大公司基于storm做二次开发。4、时序数据库的所有时序指标都会落地到数据库中。监控告警所需的数据库需要能够支持非常大的数据量,但是没有严格的ACID要求。5、运维事件数据库记录所有告警。包括获取其他系统的告警,记录现网的所有变化。这些数据用于支持报警原因的定位。6.指标异常检测工具根据数学模型找出指标是否偏离以往的稳定模式,推测网络状态会发生变化。7、拨号测试工具定时PING或HTTPGET,模拟实际用户检测服务是否中断,并产生告警。同时也生成指标并上报给采集系统。拨号测试又分为本地拨号测试和远程拨号测试。本地拨号可用于发现磁盘只读等本地告警。远程拨号测试可以模拟用户的地域分布,将网络的链路状态包含在拨号测试覆盖范围内。8.告警收敛工具整合所有来源的告警,进行频率收敛和根因分析。统一汇总成报告督促人工修复。9、告警自动修复工具接受告警进行自动处理。帮助运维完成固定故障机下架、退库等操作。或者当业务本身不具备高可用时,可以进行故障机器更换、IP漂移等修复操作,一定程度上提高服务可用性。10.报警通知工具重要报警需要升级为电话。需要电话、短信、微信等高可用的通知接口。11、监控告警统一接口,屏蔽下层各种工具,提供统一的代理安装、指标采集设置、指标曲线展示、告警查询接口。您可以从一个地方了解现网的所有问题。篇幅有限,这里先介绍一下关于linux运维管理工具的内容。其实基本上只有甲方做到比较完整才有可能,你也可以做有针对性的了解。