活动实录 | DevOps落地实践及电力行业案例分享
点击上方蓝字关注“公众号”
6月10日,优维科技与数人云、中生代联合举办了DevOps&SRE超越传统运维之道(北京站)。深圳站已于五月举办,详情可点击:DevOps&SRE深圳站全回顾:DevOps+SRE落地实践+DevOps最后一棒。
点击上方关注优维科技公众号,回复“PPT”即可领取本次演讲资料!
以下为黄星玲@优维科技本次演讲实录:
大家好,非常荣幸跟大家一起学习关于最近比较火的DevOps。今天我的演讲主要分为以下三个部分
★ 第一:DevOps的全局理解
★ 第二:从诸多企业实践中沉淀的DevOps落地经验
★ 第三:电力行业案例分享
一、DevOps的全局理解
其实DevOps就是整个业务服务的生命周期的管理,就是把整个业务交付到各个业务价值流展现出来。分4大块:第一块就是我们所说的敏捷管理,可能大家目前最想做的这一块就是敏捷管理,以及我们要把持续交付跟敏捷做一些流程的对接,然后就是我们的IT运营管理这三块是要落实到本地的工作。
精益管理其实很出名,这个概念火了很多年了,这里的意思是整个DevOps的业务价值流可以通过精益贯穿整个流程的,每个步骤都是可以精益化的。
平台解决方案规划
这张图是产品设计的全局的规划图,但是在所有的公司都适用,以及作为运维自动化也好,devops 门户化也好,我们有统一运维的门户的,其实以前也有,像公司稍微大一点都应该有跳板机有审计的系统,都是统一门户管理的,集中统一门户管理之后有很多平台化的功能。
这个就是所说的下面的运维服务器,可能有这种管理流程,还有IT服务管理,还有运维服务管理、也有研发服务平台、有持续交付平台,有监控平台,就是这里面的IT平台都是可以分模块建设的,这些灰掉的还没有做的,其余的功能都已经做完了。
二、DevOps落地经验
构建元数据基础平台CMDB
下面可以看到这一块其实是最核心的一块东西,这里面写的CMDB统一接口层,其实说CMDB这个词有点夸张了,我一般叫元数据管理平台,我见过人做CMDB失败的在99.99%,目前没有看到一个CMDB做得很成功的。
因为我们做DevOps如果再走传统的CMDB建设的模式肯定是失败的,不可能成功。我们在到元数据CMDB平台前提是自动化的,保证CMDB里面存在的数据的状态是可用的,鲜活的,而且是实时。为什么以前CMDB会失败,人们不愿意用,因为发现以前的CMDB不准确的,不可靠的,最后还是需要人为的梳理一遍,所以就没有存在任何的意义了。
CMDB怎么建设?就是要建设元数据的基础平台,我们应该是自动化的,怎么自动化?我们在这里面首先有应用资源层还有技术资源层,这里面的自动化,比如说进入系统层的一些主机,不管你是云服务器还是物理服务器,通过平台,能够把主机上面所有的信息自动化的上报上来,它就是自动化了。
然后,还有平常发布的动作,我们发布的动作需要工具化、流程化以后。打个比方在做横向扩容的时候,一个关键的时刻就是定点,这个时刻要提前拉100台机器把我的横向扩容丢上去自动化部署,怎么做的?
就是我们要实现一个闭环的功能,肯定是要把元数据基础平台搭建好的,里面涉及到的自动化的能力是没有问题的,但是有时候领导发现CMDB挺好用的.
我经常碰到上面的领导视察,告诉我最大的业务分布在哪些公司,分布到哪个数据中心,哪个数据中心有多少的机器?哪些节点是正常的,哪些节点是代备?这时候问我就蒙了,因为我真不知道,但是如果这个CMDB介绍完了,只是一个拓扑而已,你就把这些关键的拓扑出来,就是一个树状图,很简单的交付了。其实这很有用的,因为每个公司都有大屏展示。
我管这个元数据管理平台叫发动机,因为所有的自动化作业也好,持续交付作业也好,应该是基于CMDB来做的,这一张拓扑图,大家能看到,下面这个二次层面的,不管是包也好,还是主机也好,服务业好,还是人工管理的数据也好.
首先有两个数据来源,一个是自动发现,一个叫人工流程,人工流程就是企业里面的工单流程,整个工单的流程在转的过程中这种数据是有价值的,你要把它发挥出来,这些数据应该是一个回路,能够做到这样子之后不管是基础资源也好,应用资源也好,都是可以做拓扑的。
这张图其实很明显,就是CMDB的概念我们应该从业务到应用往下拓扑的,不管是拓扑中间键层还是拓扑到我们的网络层,还是拓扑到物理层面层还是拓扑到人工数据层,应该是不管是向上还是向下,向左向右是随时可以拓扑出来的,这个是一个重要性,因为你能够看到这种状态我就知道哪些地方不能加了,哪些地方要扩,这个是对运营决策来说是非常重要的报表信息。
DevOps落地经验(二)
工具也是一种文化
1. 作业管理
这个工具怎么理解?我们把它理解成脚本就可以了,平时那么多,每个企业都有很牛逼的人,每个企业都会积累一堆一堆的脚本。但是这个脚本能力施展出来没有?并没有,打个比方,黑龙江他们做了一个国网体系的工具APP,把所有的通用的脚本打成一个包放在APP提供人下载,但是事实上一个企业随便一个人都可以实现,很简单,把脚本前端化就好了。
这个目标是CMDB纳管这些机器而已,因为你都纳管了这些机器,目前都已经拿到了,这里把能力提炼到按钮化,APP化了以后,后面招进来的人不需要知道脚本是怎么写的,只需要脚本干嘛就可以了,好比平常去买东西也好,我知道这个购买按钮就OK了,我在外面休假,突然有故障,我告诉你点完按钮就好了。
2、调度管理
还有调度管理,就是流程是可以把脚本串行化的,形成一个比较复杂的场景,形成一个比较复杂的场景如果把它前端提炼化,这里跟实现工具化是一个概念,不管多复杂,只要知道这个流程干什么事就好了,每天点一下就好了。
这是之前写的痛点的支撑,这个IT部门被动接受需求,就是按需求来进行开发设计,这就是我们所说的部门墙。当我们的开发测试跟运维完全是独立的时候,开发部开始写代码的时候是零基础的,只是拿到基础才知道怎么做,然后运维甚至是要测试完了之后才知道要准备什么样的服务器,准备什么样的中间键。
DevOps落地经验(三)
自动化别人先自动化自己
这个刚才有讲到,就是先从一个小的点切入,把自动化的事情做完之后才会以一点点的影响周围,扩展这个事情。自动化是一个逐步覆盖多个角色的过程,一个意思,我们做完这个事情之后第二件事都是互相影响的,因为他看你闲下来,我也想干这件事,这个是持续交付里最佳实践,版本控制、持续改进,你能看到这里面开发做的事、测试做的事、预发布做的事、生产做的事,里面很多事情都是重复的。
这里只需要做到标准化,开发测试到运维,基础管理是标准化的,应用架构是标准化的,当我们把所有的事情做成标准化、无状态化、微服务化的时候,这些东西就特别的简单,点一下按钮的事情,而且整个的交付过程一定要可视化的,我要知道目前的进度到底是哪个阶段了。
三、电力行业案例分享
给大家分享一下电力方面的运维,这些痛点大家都有。比如说简单的重复问题,事后处理、就是重监控,少处理的模式。还有缺乏高效的IT运维机制,就是缺乏安全运维的工具,这一点都可以细化出来自动化做这件事情,其实没有想像中那么难,因为主要是被救火式的运维压在身上太痛苦了,但是我们要提前把这个痛苦的事情做了,不然的话会出现问题的。
当我们提前把这事情做了,形成良性的循环,我们能做的事情越来越多,所以我们拒绝背锅,背锅很痛苦的,之前不知道背了多少锅。这个是给客户做的DevOps运维平台做的事情。
第一个CMDB平台基础,第二个是平常的自动化的巡检,因为他们有DBA巡检,或者是业务巡检,是可以自动化的,而且自动化之后有CMDB有故障自愈的。然后自动化的部署平台,就是我们的持续交付系统,可以做自动部署或者是一件安装。
然后自动化的作业,IT运维分析,这个很广,涉及到基础的监控信息,也涉及到业务监控信息,就是会把业务相关的信息或者是持续发布的频率,发布失败的信息全部画成多维护的KPI的考核指标,我要知道到底这个业务有多烂,就是IT运营分析是很重要的。
我们还是先做CMDB+自动化的作业,二期做持续交付这块。下面基于一些自动化的动作做持续改善的过程,这里在devops 里面做整体的实施的过程是有先后顺序的,而且有策略的。
打个比方,电网里水很深的,当初做这件事情特别大的质疑,为什么抗拒你做这件事情,大家以为你做这个事情可能会影响到部分工作人员。但是其实并没有,因为你跟上后面会越来越好,只会影响到外面厂商的事故。第一期做完这个是怎么切入的?
先给他们做CMDB,做了之后做自动化的作业,发现平常做的数据库巡检全都自动化特别的闲,别的部门都眼红了,眼红了怎么办?过来学,然后提供接口,CMDB出来可以把CMDB接口暴露给他们,他们也想做。
这是公司产品的功能地图,可以参考一下。以上就是我今天分享的内容,谢谢大家。
★ EasyOps企业版已升级到V_2.26.0,更多最新功能体验,点击阅读原文即可申请试用!
★ 敬请期待下期内容:王一男@百度 演讲实录
★ 关注公众号回复“PPT”即可获取本次演讲资料
相关阅读:
报名最后三天 | DevOps落地,这里有几个案例想和你聊聊!
腾讯大梁:DevOps最后一棒,有效构建海量运营的持续反馈能力
优维科技专注于为企业转型升级实现”互联网+”能力提供IT动能, 我们强调在安全、稳定的前提下,实现企业的精益IT管理能力。为其提供如下服务内容:
交付全栈DevOps运维平台,帮助客户提高服务质量,降低IT运行成本,提升IT组织效率。提供互联网运维最佳实践咨询服务,包括但不限于:组织及人员优化/流程再造/运维规范与标准化等。
提供运维优化及技术架构优化服务,例如性能优化/微服务架构/服务化平台等