浅谈运维自动化的那些事儿

前言

运维管理兜兜转转十几余载,大家的运维管理再也不是小米加×××、人工费力拉线扛服务器的传统时代,如你所知,这些年大家张口闭口谈的都是运维自动化如何如何。一千个读者就有一千个哈姆雷特,一千个运维就有一千种运维自动化想法或构建思路,小生不才,今日斗胆来聊聊我眼中“运维自动化”的那些事儿!如有不妥,还请大家给出相应的意见......

运维自动化到底干个啥?

据度娘之意,IT运维自动化是将日常IT运维中大量的重复性工作,小到简单的日常检查、配置变更和软件安装,大到整个变更流程的组织调度等,由过去的手工执行转为自动化操作,从而减少乃至消除运维中的延迟,实现"零延时"的IT运维。其本质是运维方式的转变,由手动逐渐演变为自动化操作!那运维自动化应该包含哪几个层面?鉴于IT运维五个维度”效率、稳定、安全、体验、成本”范畴,运维自动化统筹起来就有监控自动化、服务流程自动化、运维操作自动化......

IT监控自动化

监控自动化是运维自动化的起点之一,利用监控自动化平台对各类IT资源(包括服务器、数据库、中间件、存储备份、网络、安全、机房、业务应用、操作系统、虚拟化等)进行实时监控,再做故障根源告警归并处理,以解决特殊情况下告警泛滥的问题,例如机房断网造成的批量服务器报警。当然,监控自动化的范畴很广,除了监控告警响应,系统各个服务如Nginx、Java、PHP、DB或网络等的性能优化、资产关系的梳理以及业务系统的实时健康评估监测也是应该包含在里面。

服务流程自动化

监控自动化发现了问题就应该接入相应的流程进行处理,这时候故障事件自动触发问题处理跟踪流程,并在自动化工单式流程的指引下通知到相关责任人,并利用知识库自动化完成整个故障处理协调过程。

运维操作自动化

这个层面的自动化运维工具,主要是把运维一系列的手工执行繁琐的工作,按照日常正确的维护流程分步编写成脚本,然后由自动化运维工具按流程编排成作业自动化执行。简单来说,就是把多个Shell、python、PowerShell、Bat等脚本串在一起执行实现某个特定的操作目的,以此来替代一些日常需要批量或者大量重复性的操作,比如变更、部署、配置下发等操作!

以前,传统的运维方式是由监控系统监控,根据阈值设置产生告警,走工单方式人工处理。现在,使用自动化运维平台,可以让产生的告警和知识关联,自动化处理故障。也就是说,IT运维自动化工具是监控自动化和流程自动化工具的完善和补充,三者结合相得益彰!

总体来说,运维自动化不是写写脚本,再用开源软件东拼西凑就完了,这只能叫辅助运维,不叫自动化。据我所知,真正的自动化应该是让运维平台工具帮你’监测——发现——处理——解决问题”,集”自我修复、自我维护”为一体,各模块之间尽量低耦合、可扩展、可插拔,最终实现运维智能化;也应该是真正能帮企业降低IT运成本,使运维管理可视化、可测量、可对比,进而真正将运维人员从繁琐的、例行、容易发生人为事故的工作中脱离出来,做更有价值的运维工作。

运维自动化怎么做?

很多运维人员在筹建IT运维自动化架构体系时,妄图一口吃个大胖子,谋求一个完整的系统来自动化完成所有的运维工作,殊不知自动化是一个循序渐进持续发展的过程。我觉得在思考如何做运维自动化之前应该认识到几个根本的原则问题:

标准必备

正所谓无规矩不成方圆,实施自动化前提需要标准规范与流程化。这包括资源标准化、OS的基础配置标准化、基础软件(如Tomcat、JVM)配置标准化、应用配置标准化、流程规范标准化......比如,如Ngnix/JAVA/PHP/MySQL这些常见服务的应用初始化流程、部署更新流程等,可以提前固化下来,做到了标准化,消除了各种差异,才能为后续的自动化开发铺平前进的道路。

与此同时,随着ISO20000、ITIL v3.0的持续推广,它们已成为实际的某种标准,尤其是ISO20000的认证要求,也是企业的普遍需求,而ITIL v3.0包含了对IT运维从战略、设计到转换、运营、改进的服务全生命周期的管理,也为企业的服务流程管理自动化提供了更多思路!

实用为先

大家常说,“公司的系统架构不是设计,而是演变而来的。”一般而言,企业要做运维自动化都不是一蹴而就,也不太可能一次性建好,都是分阶段来做以解决自身实际问题:首先应该明确自身处于“手动支撑 —— 线上标准规范化——运维工具化——平台自动化”的哪个阶段,然后先找准现阶段的痛点,对症下药。

说到实用,不得不提到——CMDB。关于“CMDB是不是运维自动化的基石“,不少运维还在疑惑,到底要不要建立CMDB呢? CMDB即配置管理数据库,一般用于统一管理IT数据、服务器数据资产等。它不仅是硬件和资源的信息记录,更重要是要建立起应用与资源之间的对应关系,并以此为基础,配套着应用配置管理、监控、发布、稳定性等系统的建设,才能最终形成体系化的运维平台,否则只是碎片化的运维模式。当然,这里只是让CMDB只提供最基础的资源信息和应用资源的关联关系,不期望把基础的CMDB做得过重,不然后期会不堪重负!

安全为重

运维安全是企业安全保障的基石,不同于Web安全、移动安全、业务安全,随着自动化运维管理体系的不断融合与统一,运维安全环节任何一个代码、一次部署出现问题往往会比较严重,很多时候说”牵一发而动全身“都不为过。此外,运维自动化平台关联的资源越来越多且复杂,甚至都涉及到了root权限,为广大黑客朋友创造更多空间,所以加强自身安全防御势在必行。最基本的是加强权限和基线控制,是否针对运维自动化平台的服务器账号做了特殊限制?是否做了超限检查?是否做了关键操作的双保险?是否做了作业执行脚本、数据传输的加密控制?通通都得考虑,而堡垒机、安全审计、防火墙控制等措施更是不在话下了。

运维自动化安全建设牵扯面广,这里就不一一赘述了。还得提醒一点,在运维自动化操作层面,如何缓解自动化操作条件的变化而引发的巨大运维压力,也应该认真考虑。

时间: 2024-11-06 00:04:05

浅谈运维自动化的那些事儿的相关文章

浅谈运维规模化可持续构建实战

如今的互联网时代,运维早已不再是被动的那一方.过去的运维,由于种种限制,工作繁重.复杂,效率低下,很难适应目前互联网产品快速的迭代节奏.而如今,随着虚拟化.容器技术以及持续构建技术的成熟,运维工作的模式有了很大的变化,通过自动化技术的应用使得更少的人为参与,有更高的效率.为了确保项目高质量的快速迭代,必须构建一套高效的可持续构建的运维管理体系. 互联网项目最大的特点是版本迭代节奏快(同一个系统一天上线数次都有可能),需求变化频繁,且每天可能都有项目新增.服务维护.运维架构调整等需求.而常见的运维

心情笔记——从一次黑客攻击事件浅谈运维技术学习

昨天分享了一篇文章,是关于如何搭建Openvpn服务器实现免流上网,由于文章中的内容使用的是自己真实的服务器环境,文章分享出去以后得到了很多的浏览与搭建细节的咨询,但同时IP地址也遭到了泄露.随后就迎来了一轮又一轮的DDOS攻击,还好使用的并不是特大流量攻击,而且每次的攻击都是很短的时间,直到DDOS封堵后还继续有DDOS的攻击. 以前只接触过网络安全类问题,但并没有真正遇到过.这次的攻击事故给我提了个醒.如今的网络安全环境形式很复杂.身在学校的我们还没有真正接触到真实的生产环境,平时自己搭建的

舍本求末的运维自动化技术热潮

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://caoyameng.blog.51cto.com/4975863/1359732 运维自动化是2010年开始炒得很热的一个概念,也让很多工程师.用人单位瞎激动了很久,我也跟风学过puppet和python,求职双方也经常在面试时花大量时间谈运维自动化. 但冷静下来想想,所谓自动化,只是让培训机构赚钱的噱头而已. 一句话概括运维自动化 单说“运维自动化”几个字太抽象容易被主观塞进去

【有感而发】从中华武术谈运维工程师以及运维自动化

从中华武术谈运维工程师以及运维自动化 任何事物都没有完美一说,但是我们可以死磕自己,追求极致... 无论我们现在是搬砖呢,砌墙呢,还是在逗自己混日子,我们需要关注的是自己的方向在哪里,而不是过于在意自己当前的所站的位置,人生不能受限于自己的意识. 平时和小伙伴们聊人生谈理想的时候,我会经常和别人讲我所认为的专业化运维工程师和运维工作的方向,有认可的也有不认可的,认可的多在努力让自己的工作越来越轻松,自己的价值越来越能得到体现,不认可者多属于一天都很忙,而且认为运维就是帮开发人员打打杂,做大量重复

DBA避坑宝典:Oracle运维中的那些事儿

对于Oracle运维中的那些事儿,我的最终目的:不是比谁更惨,而是能够从中吸取经验和教训. 从我的理解来看,我会从下面的几个方面来进行说明DBA运维中的一些事儿. 每个部分都是非常关键的,缺一不可,而且每一部分都有很多的东西可以细化,我会逐一展开来说. (一)环境篇 首先来说说环境篇. DBA的角色及分工 对于DBA的分工,以前的公司对于DBA角色划分粒度还是很细的. 大体是按照核心和客户化定制层来划分的,核心层主要负责产品化,客户化层面主要负责定制.属于不同的产品线但又彼此紧密关联. Phys

[转载]运维自动化201009

运维趋势 第 0 期 运维自动化 [人物]基于开源服务的运维自动化实现 [国际前沿]什么是 DevOps ? [运维漫画阁]正则表达式有什么用? [命令行 & 工具]面向 Linux 系统管理员的开源工具链 [命令行 & 工具]自动化开源工具一览 [实战] Kickstart 无人值守安装搭建 RHCE 实验室 [实战]戏说 Cobbler : Linux 网络安装的革命 1  [人物]运维专家李洋:漫谈基于开源服务的运维自动化实现 随着各种业务对 IT 的依赖性渐重以及云计算技术的普及,

运维自动化工具Cobbler之——安装实践

运维自动化工具--Cobbler实践 第1章 About Cobbler 1.1 Cobbler Introduction Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等. Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用.Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web

浅谈二维中的树状数组与线段树

一般来说,树状数组可以实现的东西线段树均可胜任,实际应用中也是如此.但是在二维中,线段树的操作变得太过复杂,更新子矩阵时第一维的lazy标记更是麻烦到不行. 但是树状数组在某些询问中又无法胜任,如最值等不符合区间减法的询问.此时就需要根据线段树与树状数组的优缺点来选择了. 做一下基本操作的对比,如下图. 因为线段树为自上向下更新,从而可以使用lazy标记使得矩阵的更新变的高校起来,几个不足就是代码长,代码长和代码长. 对于将将矩阵内元素变为某个值,因为树状数组自下向上更新,且要满足区间加法等限制

[运维] 第三篇:漫谈数据中心运维自动化

运维自动化是从2010年以后起来的一个运维需求,10年之前,运维项目主要集中在监控和ITIL流程上,当时也有BMC Control-M等产品在推,但是客户接受程度和影响力不如监控和流程.10年之后,运维自动化提上日程,建行开始招运维自动化的标,IBM.BMC.HP都纷纷参与,测了三轮,最后HP opsware中标,只能说一句厉害!工商银行也在自己组织服务商做自己特色的运维自动化平台,做了3.4年,基本成型,服务商也做出了自己的运维自动化产品,正式推向市场.当时运维自动化的主要功能是五项:自动化巡