PYTHON实战技术之CMDB系统开发三
资产主机模块
资产主机模型设计
主机展示信息表
常规性的收集:
主机模型:IP地址、连接端口、操作系统(Linux,Windows,Mac)、机器类型(虚拟机,物理机)、主机名、CPU型号、CPU物理个数、内存信息、系统平台、系统平台位数、UUID、SN、探测状态、创建主机时间、更新主机时间
还要收集硬盘信息,网卡信息,注意一台主机,硬盘可能有多个,网卡也会有多个。所以要单独把硬盘和网卡各单独设计成一张表,然后使用一对多跟主机模型连接起来。
硬盘模型:硬盘名、硬盘大小、外键关联(server)
网卡模型:网卡名、Ip地址、外键关联(server)
还需要一张探测表,把探测时候的一些信息记录下来,比如在探测的时候,要输入主机IP,端口,要把这些信息收集下来,并且跟主机表进行关联。
①创建模型



②迁移数据库

资产主机展示列表
路由

视图

模板


没有数据,后期通过检查脚本推送服务器的信息到cmdb系统中,然后就添加到资产主机数据表中。
资产主机探测功能设计
常规的信息收集,有两种方式,一种是主动采集,一种是客户端收集。
主动探测:一般是通过,SNMP/SSH/TELNET等手段进行远程收集。

客户端采集:需要在每一个要部署的主机中部署一个客户端进行数据采集并且发送到远程服务端进行接收。

数据收集API和客户端编写
①使用客户端收集到主机信息

②cmdb编写一个接收数据的API
路由

视图

③修改请求API的地址 scan_file.py

④查看可以获取到数据

添加资产主机
简单修改模型

视图

在收集主机上执行

显示效果

- 点赞
- 收藏
- 关注作者
评论(0)