企业在实际运维工作中,70%左右的运维相关工作和环境变更有着直接关联,实施变更管理的难点不是工具,而是使用过程中的流程管理。如发布平台,监控平台,配置中心等相关数据孤立,单独维护重复操作量巨大。从业务角度触发,把物理关系和业务逻辑关系的信息作为资源在系统进行管理,结合devops理念,从而开发了结合自身业务需求的CMDB系统。
CDMB通过维护各类信息,通过API接口方式提供子系统或其他平台调用,当信息变更时能及时联动。再结合数据展示,让相关人员了解项目信息,使用资源,项目成本,可用容量。
信息分层
CMDB的基础是各种信息作为元数据,已知信息种类繁多,关注的角度不同,大致可分为固定信息,可变信息。这里必须要确保CMDB数据的准确性,必须制定数据的录入流程。
固定信息可分为机房位置,厂家信息,机柜信息,进程端口信息,维护信息,硬件信息,网络信息等。此类信息可通过自动化手段去获取,如IPMI接口调用,Ansible等工具辅助等。
让信息资源真正的生效的是可变信息,在此我们结合项目上线步骤拆分
构建:运行环境/应用信息/git信息
测试:监控检测/自动化测试JOB
包管理:版本号/端口信息
部署:Nginx配置/程序目录/启动脚本
评估:监控配置/日志推送/链路监控
目前使用项目模板录入关键信息后自动调用API完成环境初始化如git仓库,Jenkins Job,Nginx,logstash agent,应用监控等配置创建。
CMDB设计中重要的就是和自动化结合,当一台设备上架后通过录入网卡,SN号等信息选择操作系统,RAID分区等,完成自动装机后将自动更新到CMDB和虚拟化池中。后续在项目资源领用时通过自动化接口生成标准化环境,加入项目服务中。同时其他系统平台也知晓变更信息,保证了后续操作的可靠性。
提供服务
CMDB通过API开放能力将数据输出,实现了虚拟化管理,自动化管理,设备维保等子服务。
业务扩缩容
虚拟化管理
CMDB中的信息最大价值体现应结合业务场景,作为其他平台的入口,当CMDB发生数据变更时推送到redis,其他平台及时感知并及时应用到具体业务场景上,相互依存。
在IDC如一台交换机端口故障,导致有部分虚拟化宿主机网络不可用,宿主机分别运行了几十个虚拟化节点,相关人员会收到了几十条上百条XX节点无法访问的告警异常。此时运维的内心是奔溃的,需要人为的依靠经验在大量告警中过滤出并找到root case,虽有监控,但故障期间取决于人员的排错效率。
告警平台通过监控数据,再接入CMDB后结合信息分层,可获知当交换机端口故障时会影响那些服务器,知晓该服务器上运行了那些虚拟化节点,分别运行什么应用服务。最终经过事件压缩收敛,得到的告警信息是 XX交换机端口故障,影响A,B,C…项目。
成本效率
成本控制是运维建设的核心部分之一,也是极其繁琐的。我们要知道每个月费用支出在哪里,每月项目所使用的资源是多少?
CMDB中记录了每个机柜,网络专线,设备采购,其它第三方服务等费用。通过每月的硬件设备折旧,机柜容量&网络专线分摊为参考,项目分别使用的虚拟化或硬件资源加上专属服务采购费用,计算出相应项目每月环境运营成本。
结合每月的调用量趋势图,对项目的扩容缩容提供有效的依据。硬件采购历史价格对日后预算费用提供参考。
未来规划
1. CMDB建设成功带来的另一个未来价值是作为元数据的价值,可以为运维大数据分析提供可信基础,促进运维走向大数据分析、智能决策阶段。如我们在做变更的时候,需要去看该变更的影响范围是多大? 变更是否将引起什么样的情况?
2. 网络拓扑关系没有在CMDB中显示,计划将基于SNMP协议自动生成网络拓扑。
拍拍信数据服务(上海)有限公司(简称“拍拍信”)作为一家以技术为核心、典型的数据科技企业需要具备数据、算法和计算三大关键能力。基于行业应用场景及痛点,致力于通过数据技术应用助力风控,三大关键能力、机器学习技术开发出解决方案,灵活满足不同场景下信贷客户的不同需求,促进数据科技在各个行业的普惠价值落地,提升企业各个环节的决策效能。
领取专属 10元无门槛券
私享最新 技术干货