CMDB源码使用须知

概述

一、CMDB开发流程图

二、依赖

1、后台管理

  • 录入资产
  • 定义接口
    -- 返回主机列表:/api/untreated_server/
    -- 获取主机信息:/api/serverinfo/
  • 配置API验证的Key(settings.py文件中)

2、中控机

  • 配置接口
    -- 配置文件中设置后台管理IP:127.0.0.1
    -- 配置文件中设置后台管理端口:8000
    -- 配置文件中设置获取主机列表:/api/untreated_server/
    -- 配置文件中设置发送主机信息:/api/serverinfo/
  • 配置paramko
    -- 创建一对密钥,将私钥保存至程序根目录(将公钥保存至服务器A、服务器B...)
    -- 配置文件中设置私钥路径
  • 配置错误日志文件
    -- 配置文件中设置错误日志文件(默认:程序根目录下error.log)
  • 配置API验证使用的Key
    -- -- 配置文件中设置API验证Key

3、服务器 

  • 将公钥保存至服务器A、服务器B...
  • 服务器上安装
    -- dmidecode  用于采集内存信息
    -- MegaCli       用于采集硬盘信息猛击下载,解压将MegaCli文件放置 /usr/sbin/目录即可)

运行

一、下载源码(已发送至群共享)

源码中有两个程序:

  • cmdb,中控机程序
  • cmdbdemo,管理程序(管理+API)

二、部署(Demo默认将中控机和后台管理部署在同一台服务器上)

第一步:

运行cmdbdemo程序
Python manage.py runserver 127.0.0.1:8000

第二步:

1、登陆后台管理

  • 后台管理页面登陆:    http://0.0.0.0:8000/account/login/         默认用户名:wupeiqi     密码:cmdb
  • Django Admin 登陆:http://0.0.0.0:8000/admin/                   默认用户名:root      密码:123

2、登陆Django admin 初始化数据库数据(Demo中已初始化)

 标题    代码
汇报端    1000
基础运维    1001
应用运维    1002
业务人员    2000
管理员    3000
用户类型表
用户类型   名字            邮箱          座机        手机        
汇报端口  reporter    test@qq.com              ...          ...   用于中控机汇报
 管理员    武沛齐       xxx@qq.com              ...           ...  用于后台管理登陆
用户信息表
用户信息      用户名        密码
武沛齐          wupeiqi     123     用于设置登陆用户名和密码
用户登陆账号表
 标题            代码
服务区       1000     创建资产时,目前默认创建的是服务器
设备类型表
创建用户组
用户组表
区域        机房        楼层         display
北京        兆维         9            北京|兆维|9层
机房表
创建一条合同数据
合同表

第三步:

录入资产

管理IP 
主机名 -- 必须,paramiko使用主机名采集硬件信息
SN号  -- 必须,中控机汇报数据时,根据SN号更新服务器中的资产
...

第四步:

运行中控机 Python index.py
-- 获取【在线】状态的主机列表
-- 根据主机通过paramiko采集硬件信息
-- 将硬件信息提交给API接口(API负责更新数据库中硬件信息)

查看结果:

posted @ 2015-09-06 18:22  武沛齐  阅读(...)  评论(... 编辑 收藏