Gitlab.com平台因为其某位运维同学误删了数据而导致整个网站下线。经历了千辛万苦,其整个数据恢复过程近两天才完成,期间 Gitlab还在Youtube上直播了整个数据恢复过程。根据官方对整个事情的描述,大概可以推断Gitlab使用的是故障发生前6个小时的备份数据,也就是说这6个小时时间之内的数据最终还是丢失了。
这个事件看似是一个极低级的错误,暴露的却是自动化运维能力弱和流程不规范的大问题。
关注一:让运维自动化
自动化运维所能实现的不仅仅是通过技术和工具减少人工的参与成本,而是将人、流程和运维产品相结合,最终做到提高运维效率,最大限度减少类似Gitlab事件的发生。
在日常的IT运维工作中有大量的重复性工作,小到简单的日常巡检、配置和变更,大到产品的发布、流程的组织调度,都需要自动化操作,从而减少乃至消除运维中的延迟和事故。简单地说,IT运维自动化是将事件与IT流程相关联,一旦被监控对象发生性能超标或故障,会触发相关事件以及事先定义好的流程,可自动启动故障响应和恢复机制。
比如监控易平台(jiankongyi.com)可帮助IT运维人员完成日常的重复性工作,提高IT运维效率。同时,监控易还能预测故障、在故障发生前就发出预警,通过精准有效的告警策略,让IT运维人员把故障消除在发生前。监控易可以根据故障类型和影响级别及时触发工单流程,并可根据SLA进行事件升级,让运维有序高效进行。
关注二:管好服务流程
如果说运维技术能够发现问题、处理事件、保障系统运行,流程管理则是分配资源和人力,优化流程,遇故障时尽快恢复系统,做到未雨绸缪。
在此次Gitlab事件中,最令人不解的是运维人员在故障处置过程中,没有经过变更管理流程,以及必要的授权、评估和测试,就直接在生产环境上进行了实验性的操作,并且执行的还是删除数据库目录这样的高危操作。
正如ITIL所描述的,变更发布管理之所以重要和优秀,是因为其往往会经过多个控制环节,以确保变更的成功,包括对变更申请、授权、评估、测试、审批、发布等一系列流程的管理,以确保生产环境的变更安全有效。
IT运维管体系涉及到多个相互独立又彼此关联的服务流程,如果能将这些现有的应用管理系统以及企业内部、外部系统及流程的接口整合衔接,建立标准的流程体系和统一的管理平台,从而实现服务关系级别的管理。
服务关系管理是一个企业提高运营效率、实现数字化运营的保障,通过对服务关系的优化改进、大数据分析,建立起强大的服务保障体系;通过数据展现业务与经营、收入与支出、效率与效果等各方面、多维度的运营分析,全面为企业决策提供充分可靠的依据。
服务魔方(fuwumofang.com)的服务关系管理,立足于对服务的质量监控、服务流程的优化梳理、服务关系的价值发掘。通过服务魔方的商业价值分析,能够让企业将进销存与各部门、各业务流建立关联,打通信息孤岛、共享数据,时刻掌握业务数据变化,清晰了解发展趋势,为运营决策提供及时准确的数据和方法支撑。