CMDB
本项目停止更新
本项目已停止开发!因长时间未对代码进行维护,可能会造成项目在不同环境上无法部署、运行BUG等问题,请知晓!项目仅供参考!
架构
DEMO
部署说明
-
环境 python3.6.1 django1.11.4
-
服务器请yum 安装
sshpass
,不然无法获取资产信息。
git clone [email protected]:hequan2017/cmdb.git
cd cmdb/
pip install -r requirements.txt
pip install https://github.com/darklow/django-suit/tarball/v2
需要从这里下载 必须用这个版本,其他版本的suit不支持1.11版本django
配置 celery 异步任务
- 执行
install_redis.sh
supervisor
安装 supervisor
只支持python2
,不影响启动python3
pip2 install supervisor
- 生成配置文件,且放在
/etc
目录下
echo_supervisord_conf > /etc/supervisord.conf
- 为了不将所有新增配置信息全写在一个配置文件里,这里新建一个文件夹,每个程序设置一个配置文件,相互隔离
mkdir /etc/supervisord.d/
- 修改配置文件
vim /etc/supervisord.conf
- 加入以下配置信息
[include]
files = /etc/supervisord.d/*.conf
- 在supervisord.conf中设置通过web可以查看管理的进程,加入以下代码(默认即有,取消注释修改即可)
[inet_http_server]
port=0.0.0.0:9001
username=user
password=123
-
将
supervisor.conf
拷贝到/etc/supervisord.d/
下面 -
执行
install_webssh.sh
脚本, 安装webconsole
模块。 需要修改的内容,可以看脚本。根据自己的情况修改。 -
/usr/bin/python2.7 /usr/bin/supervisord -c /etc/supervisord.conf
-
登陆
0.0.0.0:9001
账号user
密码123
就可以登陆进程管理界面 -
python manage.py runserver 0.0.0.0:8001
##启动服务
版本
版本2.4
- 进程管理 supervisor
版本2.3
版本2.2
版本2.1
-
利用SSH 获取CPU和内存使用率
-
利用django-crontab 做定时任务,每分钟获取一遍使用率,保存到monitor表里面,与host做关联。
版本2.0
-
第一版版本功能基本定型。 分为3块。 基础资源 主机(执行命令) 脚本(shell/python/yml)
-
接下来主要开发 利用zabbix api 调取数据 出图(暂未实现)
后台
历史
版本更新1.7.5
- 批量执行shell/yml
版本更新 1.7
-
版本小优化
-
更新后台admin模块 为suit v2版本
版本更新 1.6
- 批量执行命令
版本更新1.5.5
- 版本小优化
版本更新1.5
- 增加资产更新,分别为 添加 查看 修改 更新 删除。 可真实获取到服务器资产
版本更新1.4
-
增加命令行模式
-
增加历史命令记录
版本更新1.3
-
新增主机管理板块,采用模态对话框。
-
增加更新服务器时间板块,采用ansible-playbook ,需要安装 ansible模块。 操作的命令可以看hostinfo/ansible_api/cmd.yml文件
版本更新1.2
- 新增权限模块,采用admin自带的auth ,实现简单的权限管理。
无添加权限的,看不见 添加板块 ,同时对权限进行判断, 无权限 打不可,显示 error界面。 2. 根据权限 判断 是否为 管理员。
版本更新1.1.2
1 .修复了echarts 自适应更改大小。
- 更换了admin,采用django-suit 界面更好看,中文化。 需要安装 django-suit 模块。 admin的 帐号密码是 admin 1qaz.2wsx http://42.62.6.54:8001/admin
版本更新1.1.1
- 新增 图形化展示数据, 采用百度 echart 动态展示 数据。