标签:开发 代码 网页 硬件 信息收集 tps 变更 公司 网络架构
概念很重要:CMDB(Configuration Management Database-配置管理数据库),存储与管理企业IT架构硬件设备和软件资源等信息.
硬件CMDB针对硬件设备资源维护管理,统辖域内超融合基本设施的计算(CPU和内存)、存储、网络、IO、虚拟化等资源.
软件CMDB针对'系统(os/vm/docker)<->服务<->应用'资源链维护管理.
会分为两章节进行陈述,分别为<1.4 运维平台之硬件CMDB> 和 <1.5 运维平台之软件CMDB>.
需求:
1.机房和机架信息收集、机架机管理使用.
2.网络设备基本信息和接线(交换机等)、线路资源(专线等)、网络架构和硬件设备拓扑如何维护.
3.服务器基本信息收集更新,涉及CPU、内存、磁盘、网络、RAID等部件.
4.IP地址规则、DNS域名管理、VIP地址、客户经销商等扩展资源.
5.运维成本统计(针对费用),包括产品类型和运维成本.
6.IT资源分布和消耗使用,以便进行IT规则和架构调整.
难点:
1.A公司(大量小型机,X86服务器,刀箱服务器等,自建机房;使用FusionSphere、kvm、vmware exsi等私有云);
B公司(拥有不小X86服务器,租用机房;内部使用docker容器云,对接阿里云、腾讯云等);
反正每个公司业务场景不一致,需要调整CMDB数据结构模型,以适应相关需求.
2.某同事维护大量小型机,使用excel进行维护更新,接入到CMDB系统是否简单和方便查找,最后他拒绝了.
用户体验第一,在保证功能强壮的基础下, 如何提高CMDB系统易用性.
3.数据入库和更新自动化探索, 如何做到架构调整和数据同步一致.
4.基于状态机的设备生命周期生态系统建设, 变更操作通过workflow系统(有迹可寻),状态改变推送到monitor系统.
为何需要CMDB:
1.之前某台设备宕机,某块扩展磁盘(后续添加)损坏,厂商需要找到对应order_id才提供更换服务;
2.去机房接条网线,结果弄错了,郁闷.
3.双11到来,需要快速上线大量vm,需要确认资源是否充足.
4.部门内部沟通,项目上线架构规则(需要开发和DBA),需要了解资源现状.
机架机柜图
需要将机器和机架设备在平台模拟展现出来, 见识过以前公司的机柜图, 也参考过实现真实的机柜模拟图(http://blog.liuts.com/post/206/),运维平台化之IDC机房机柜服务器拓扑图实现思路(http://xiaorui.cc/?s=%E6%9C%BA%E6%9F%9C&submit=), 最终我是找到一个基于js/css实例, 通过webapi读取json数据, 然后通过jquery对数据进行绘图.
网络架构拓扑和硬件设备拓扑
感觉需要大量的前端知识, 暂时使用软件(https://www.processon.com/)画图,再投放到网页上.
太难了, 现在还在(抄代码)开发过程中. 哈哈.
服务器基本信息收集更新
主要抄袭alex君的项目https://github.com/triaquae/MadKing, 对django model进行大量修改.
hwcheck(rvadmin工具)对DELL物理机非常好,不但可以进行设备监控, 友好支持部件检测.
由于修改大量字段,所以重构数据接入和更新共用模块(core.py), 函数比较多,可以参考一下.
查询列表
详细页面1
详细页面2
数据变动会接入到报警系统
网络资源和基本盘存放杂七杂八的信息, 类似表单.
IP资源: IP地址规划, IP使用情况, 有时vm下线,需要回收资源,以便下次分配.
虚拟地址: VIP/IP映射情况, 有时可能记录硬防映射; 有时记录lvs映射; 其它应用vip情况.(很有用的)
域名使用: 域名和详细域等等, 对接到dnspod更新信息, 对接软件CMDB.
IDC管理: 故障有问题, 提供地点和紧急电话.
客户经销商: 这个必须有.
运维成本统计
类似(https://cloud.tencent.com/product/sms)产品列表,
例如域名过期续费、机房服务器续费等等, 否则出问题才知道又欠费了.
数据链接:
alex君 https://github.com/triaquae/MadKing
这个也不错 https://github.com/voilet/cmdb
标签:开发 代码 网页 硬件 信息收集 tps 变更 公司 网络架构
原文地址:http://blog.51cto.com/teemomo/2059101