申请上线后,运营和维护工作才刚刚开始。具体工作可能包括:升级版在线工作,服务监控,应用状态统计,日常服务状态检查,突发故障处理,服务日变化调整,集群管理,服务性能评估优化。 ,数据库管理优化,应用程序扩展,安全性,运维维护开发与PV的应用增减。
今天,我们将专注于操作和维护过程管理,操作和维护版本更改以及操作和维护监视警报所需的工具。
一,操作和维护流程管理工具
1.发布变更流程管理工具
作为与其他角色一起工作的系统界面。它还提供了一个批准链接来控制发布更改的风险。流程管理工具不负责特定业务操作的执行,而只是作为跟踪流程和确保闭环的文档系统。
2.报警和应急管理工具
针对反映业务损坏的警报的自动警报管理。手动确认后升级为突然订单。通过构建单个订单来管理报警和突发保证流程的闭环,并能够总结每个故障的经验并提供用于衡量业务可用性的KPI。
二,操作和维护发布更改工具
1.版本管理工具(数据库)
所有版本都应从版本管理开始。公司开发的版本包首先导入版本管理工具,然后从版本管理工具分发到当前网络。消除rsync一个服务器释放另一个服务器的做法。
2.配置管理工具(数据库)
版本加配置等于实时网络上每台计算机的状态。最粗粒度的配置管理是IP级别,相当于机器的资产管理,分组为不同的业务概念,如服务,模块和区域。细粒度的流程管理和流程的相关配置。
3.配置和版本交付工具
将指定版本和配置的配置交付到实时网络上的计算机。不同的版本和配置需要不同的交付方法。 ssh/fabric表示的传递方法是以脚本为中心的。由木偶/厨师代表的交付方法是以配置为中心的。
4.当前网络状态同步工具
为了避免状态网络漂移,它与管理工具中的记录不一致。需要一个工具来定期报告实时网络的实际状态。5.服务调度工具
发布更改通常需要一个串行进程,首先执行A模块,然后执行B模块。在许多机器中,并发操作需要同时执行,并发操作不能并行执行。同时,许多发布更改流程需要在运营管理范围之外的服务,例如云中的云服务器记录。这需要将服务调度工具统一调度配置和版本交付工具,流程文档工具以及其他系统API接口组装到流程中。
6.资源管理和隔离工具
由xen/kvm表示的工具允许操作和维护更灵活地削减资源。例如,虚拟机快速启动和停止,并且ip在idc中漂移。 lxc/docker表示的工具允许操作和维护进一步将资源切割到流程级别。资源隔离代理的细粒度资源控制允许更好的资源利用和更容易的资源配置可伸缩性。
7.发布更改统一界面
包装所有底层工具并提供简单的界面来完成标准化的版本更改。
三是运行维护监控和报警工具
1.收集工具
通常,会收集日志文件,或者可以定期轮询DB或其他系统的接口。流行的开源解决方案是logstash。
2.收集工具
收集工具将报告给收集工具。或者通过开发直接将代码报告指标修改为收集工具。该过程的开源解决方案仍然是logstash。
3.统计仓储工具
每次呼叫可以报告一次升级,统计工具负责计算一分钟内的次数。报告还可以每5秒报告一次值,统计工具负责在一分钟内计算最大值。统计工具的存在是为了方便报告。流行的开源解决方案是statsd,也有大型公司根据风暴进行二次开发。
4.时间序列数据库
所有时间指标都将落入数据库。监控警报所需的数据库需要能够支持非常大量的数据,但没有严格的ACID要求。
5.操作和维护事件数据库
记录所有警报。这包括从其他系统获取警报并记录对实时网络的所有更改。这些数据用于支持警报的原因。
6.指示异常检测工具
基于该数学模型,发现指示符是否偏离过去的稳定模式,并且推测网络的状态发生变化。
7.拨打测试工具
定时PING或HTTP GET模拟实际用户是否发现服务中断并生成警报。同时,还向收集系统报告指标。拨号测试分为本地拨号测试和远程拨号测试。本地拨号测试可用于发现本地警报,例如磁盘只读。远程拨号测试可以模拟用户的地理分布,并且网络的链路状态也包括在拨号测试覆盖范围内。