当前位置: 移动技术网 > IT编程>脚本编程>Python > 简易的CMDB服务端

简易的CMDB服务端

2020年04月06日  | 移动技术网IT编程  | 我要评论

万千师奶贺台庆,阿榕软件园,14264-16-5

前言

本文仅是对以前写的小示例进行一次梳理,由于本人菜鸟一枚,后端代码写的很渣,前端页面也不好看,还请大家多多海涵。

一、程序简介

程序分为cmdb_server,cmdb_client两部分,以运维为核心开发的简易框架,cmdb_client主要负责资产信息采集,采集到数据后将数据进行清洗,汇总.使用post的方式将数据发给cmdb_server,cmdb_server将接收到的数据写入数据库。通过前端展现给用户。

cmdb_server实现的主要功能如下(目前部分功能仅支持centos 7):

1、用户登录认证。’

2、将采集到的资产信息以前端页面展示给用户,并可以将资产信息以excel的形式导出。

3、机房信息维护。

4、业务线信息维护。

5、记录主机资产信息的变更记录。

6、执行用户任务(批量执行命令,执行脚本,文件下发。提取客户端文件到本地)

7、实时监控主机硬件资源。

8、webssh。

9、docker服务器管理。

cmdb_client主要实现了通过agent或者ssh的方式对windows7以上版本,centos7版本的资产信息采集。

程序目前主要针对centos 7进行的开发

二、程序目录简介

[root@localhost cmdb]# tree -l 1 cmdb_server/
cmdb_server/
├── asset_api          # 负责接送cmdb_client发来的资产信息,并将资产信息写入数据库
├── assetrepository    # 数据库
├── cmdb_server        # 程序主目录
├── data_dir           # 存放日志,下载文件的目录
├── db.sqlite3
├── manage.py
├── plugin             # 插件库:处理ssh连接,发送报警邮件,日志,主机存活扫描,分页处理,excel处理
├── __pycache__
├── requirements.txt
├── show_page          # 实现用户功能的目录
├── templates
├── test.py


[root@localhost cmdb_server]# tree -l 1 show_page/
show_page/
├── client_manage     # 用于展示资产信息
├── docker_manage     # docker服务器管理 
├── host_monitor      # 主机监控
├── __init__.py
├── login_register    # 用户登录认证
├── __pycache__
├── user_task         # 执行用户任务
├── web               # 功能app
└── web_ssh           # webssh

三、程序开发平台

操作系统:centos 7     

软件版本:python 3.6   django 1.11.20   mariadb 5.5.64    

主要用到的技术:python,django,ssh,websocket,ajax,需要用到的运维命令。

四、功能演示

1、登录认证

2、获取资产信息

2.1资产信息的其它操作

3、机房信息和业务线

4、主机变更记录

5、执行用户任务

5.1 执行批量安装命令

5.2 批量执行shell脚本

5.3 批量文件下发

5.4 文件提取

6、主机监控

7、webssh

8、docker管理

8.1 批量安装docker

8.2 统一镜像源

8.3 镜像搜索和批量下载

8.4 批量创建容器

8.5 docker服务,容器,镜像相关操作

8.6 使用dockerfile创建镜像

 

 ----------------------------------------------------------    待续    -----------------------------------------------------------------

 

如对本文有疑问,请在下面进行留言讨论,广大热心网友会与你互动!! 点击进行留言回复

相关文章:

验证码:
移动技术网