运维前线:一线运维专家的运维方法、技巧与实践2.1 CMDB简介

简介:
+关注继续查看

2章

利用Facter和Django快速构建CMDB

作者简介

陈立军,金山西山居DevOps,原新浪研发系统开发。

刘宇,网名守住每一天,金山西山居架构师,《Puppet实战》一书作者,《Puppet实战手册》译者之一,《Python高级进阶》译者之一,InfoQ社区编辑,自动化运维专家。

CMDB(Configuration Management Database),又称配置管理数据库,更多的时候我们习惯将其称为资产管理系统。它既是ITIL标准体系的核心,又是运维的基础核心系统。它通常位于整个运维自动架构的底层,但在运维自动化体系中,它又起到了极其关键性的作用。据我个人了解目前很多中小型企业,乃至一些中大型互联网公司,都还在采用传统的Excel来管理资产。

采用Excel维护资产时,需要耗费大量的人力和精力,这些工作包括:数据的采集、整合、记录、维护、检验和更新,每一项都比较繁琐。而采用开源CMDB系统却又不够灵活,无法和公司的其他系统相结合。面对这些问题,自行研发一套适用于公司的CMDB系统,是当务之急。

本章将会详细讲解,如何利用开源软件Facter和Django快速构建一个小型的CMDB系统。界面与功能不算复杂,这也是它轻量的体现,本章更多的是提供一种思路,以达到抛砖引玉的作用,仅供大家参考。

本章的所有代码都托管在Github网站上https://github.com/oysterclub/open-cmdb。其中脚本集中在CMDB目录中。

2.1 CMDB简介


CMDB用于存储和管理企业IT架构中各种设备的配置信息,其中包括主机、项目、用户、机房、网络等。其被认为是ITIL服务管理的核心,所有流程所需要使用的配置信息都将通过CMDB来进行获取,例如监控、Dashboard、自动化、流程等。CMDB在企业IT架构中的核心地位如图2-1所示。

 

图2-1 CMDB的核心地位

CMDB特性如下:

设备信息统一化、标准化。

设备信息可维护性更强。

设备信息关系清晰化、可视化。

设备信息的查询、更新更快。

当然,在实际生产中,会对上述特性和涵盖范围有轻重大小的区分,为了能够更加合理、更加准确地设计出适合自有业务模式的CMDB,下面我们来看下几大主流开源CMDB是如何设计的。

相关文章
|
2月前
|
存储 运维 Shell
运维/powershell:Powershell面向对象编程简介
本文介绍Powershell语言中对面向对象编程的支持。
46 0
|
运维 JavaScript 前端开发
Django 搭建CMDB系统完整[14](运维记录)
templates/search_yunweijilu.html {% extends 'base.html' %} {% block title %} (function($) { $(function() { $.
1927 0
|
运维 安全 .NET
Django 搭建CMDB系统完整[13](运维记录)
models.py 添加表 class Yunweijilu(models.Model): machinaroom= models.ForeignKey(Machinaroom) id =models.
1326 0
|
Web App开发 运维 API
Cmdb、Saltstack、Web化,莉莉丝游戏云上运维心得分享
在2017游戏行业全球同服和安全攻防技术沙龙上,来自莉莉丝游戏的蒋海洋分享了《莉莉丝游戏云上运维之路》。他通过介绍莉莉丝游戏的概况、进化历程,引出了莉莉丝游戏使用的cmdb,Saltstack以及Web化技术,并且分享了莉莉丝游戏在运维方面的心得。
9161 0
热门文章
最新文章
推荐文章
更多