09_CMDB系统开发三

2023-12-21 02:44
文章标签 系统 开发 09 cmdb

本文主要是介绍09_CMDB系统开发三,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

CMDB系统开发三

一、资产主机模块

1、资产主机模型设计

主机展示信息表

常规性的收集:

==主机模型==:IP地址、连接端口、操作系统(Linux,Windows,Mac)、机器类型(虚拟机,物理机)、主机名、CPU型号、CPU物理个数、内存信息、系统平台、系统平台位数、UUID、SN、探测状态、创建主机时间、更新主机时间

还要收集==硬盘信息,网卡信息==,注意一台主机,硬盘可能有多个,网卡也会有多个。所以要单独把硬盘和网卡各单独设计成一张表,然后使用多对一跟主机模型连接起来。

==硬盘模型==:硬盘名、硬盘大小、外键关联(server)

==网卡模型==:网卡名、ip地址、外键关联(server)

还需要一张探测表,把探测时候的一些信息记录下来,比如在探测的时候,要输入主机IP,端口,要把这些信息收集下来,并且跟主机表进行关联。

①创建模型

②迁移数据库

2、资产主机展示列表

路由

视图

模板

没有数据,后期通过检查脚本推送服务器的信息到cmdb系统中,然后就添加到资产主机数据表中。

3、资产主机探测功能设计

常规的信息收集,有两种方式,一种是主动采集,一种是客户端收集。

主动探测:一般是通过,SNMP/SSH/TELNET等手段进行远程收集。

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

Tip:升级安装Linux平台Python版本3以上

注意:本安装需要使用到CentOS base源 epel源

#!/bin/bash
yum install -y openssl-devel bzip2-devel expat-devel gdbm-devel readline-devel sqlite-devel libffi-devel
if [ ! -f './Python-3.7.3.tgz' ];thenecho "本地没有Python源码包,需要远程下载,请耐心等待\n"wget https://www.python.org/ftp/python/3.7.3/Python-3.7.3.tgz
fi
tar xvf Python-3.7.3.tgz
cd Python-3.7.3
./configure --prefix=/usr/local/python3 --with-ssl && make && make install
echo 'PATH=/usr/local/python3/bin:$PATH' >> /etc/profile
source /etc/profile
===========================================================================================
#执行完成之后查看命令行
[root@localhost ~]# python3 --version
Python 3.7.3
[root@localhost ~]# pip3 --version
pip 19.0.3 from /usr/local/python3/lib/python3.7/site-packages/pip (python 3.7)
===========================================================================================
#配置pip国内源
shell > cd ~
shell > mkdir .pip
shell > cd .pip/
shell > vim pip.conf
#文件内容
[global]
index-url = http://pypi.douban.com/simple/
[install]
trusted-host = pypi.douban.com

4、数据收集API和客户端编写

①使用客户端收集到主机信息

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

路由

视图

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

④查看可以获取到数据

5、添加资产主机

简单修改模型

视图

在收集主机上执行

显示效果

项目这里暂时开发到目前模块。

还可以做其他功能:参考一些开源的cmdb产品 jumpserver

①主动发送检测脚本到被监控机 python sftp传输

②管理主机使用webssh 可以实现一些开源的工具 webssh(后端建立长连接) xtemjs(前端显示命令行)

③web端的ftp

④接入监控的API 获取数据 通过highchart echart 出监控图表

⑤CI CD

这篇关于09_CMDB系统开发三的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/518406

相关文章

基于Qt开发一个简单的OFD阅读器

《基于Qt开发一个简单的OFD阅读器》这篇文章主要为大家详细介绍了如何使用Qt框架开发一个功能强大且性能优异的OFD阅读器,文中的示例代码讲解详细,有需要的小伙伴可以参考一下... 目录摘要引言一、OFD文件格式解析二、文档结构解析三、页面渲染四、用户交互五、性能优化六、示例代码七、未来发展方向八、结论摘要

什么是cron? Linux系统下Cron定时任务使用指南

《什么是cron?Linux系统下Cron定时任务使用指南》在日常的Linux系统管理和维护中,定时执行任务是非常常见的需求,你可能需要每天执行备份任务、清理系统日志或运行特定的脚本,而不想每天... 在管理 linux 服务器的过程中,总有一些任务需要我们定期或重复执行。就比如备份任务,通常会选在服务器资

TP-LINK/水星和hasivo交换机怎么选? 三款网管交换机系统功能对比

《TP-LINK/水星和hasivo交换机怎么选?三款网管交换机系统功能对比》今天选了三款都是”8+1″的2.5G网管交换机,分别是TP-LINK水星和hasivo交换机,该怎么选呢?这些交换机功... TP-LINK、水星和hasivo这三台交换机都是”8+1″的2.5G网管交换机,我手里的China编程has

在 VSCode 中配置 C++ 开发环境的详细教程

《在VSCode中配置C++开发环境的详细教程》本文详细介绍了如何在VisualStudioCode(VSCode)中配置C++开发环境,包括安装必要的工具、配置编译器、设置调试环境等步骤,通... 目录如何在 VSCode 中配置 C++ 开发环境:详细教程1. 什么是 VSCode?2. 安装 VSCo

C#图表开发之Chart详解

《C#图表开发之Chart详解》C#中的Chart控件用于开发图表功能,具有Series和ChartArea两个重要属性,Series属性是SeriesCollection类型,包含多个Series对... 目录OverviChina编程ewSeries类总结OverviewC#中,开发图表功能的控件是Char

基于Qt实现系统主题感知功能

《基于Qt实现系统主题感知功能》在现代桌面应用程序开发中,系统主题感知是一项重要的功能,它使得应用程序能够根据用户的系统主题设置(如深色模式或浅色模式)自动调整其外观,Qt作为一个跨平台的C++图形用... 目录【正文开始】一、使用效果二、系统主题感知助手类(SystemThemeHelper)三、实现细节

鸿蒙开发搭建flutter适配的开发环境

《鸿蒙开发搭建flutter适配的开发环境》文章详细介绍了在Windows系统上如何创建和运行鸿蒙Flutter项目,包括使用flutterdoctor检测环境、创建项目、编译HAP包以及在真机上运... 目录环境搭建创建运行项目打包项目总结环境搭建1.安装 DevEco Studio NEXT IDE

Python开发围棋游戏的实例代码(实现全部功能)

《Python开发围棋游戏的实例代码(实现全部功能)》围棋是一种古老而复杂的策略棋类游戏,起源于中国,已有超过2500年的历史,本文介绍了如何用Python开发一个简单的围棋游戏,实例代码涵盖了游戏的... 目录1. 围棋游戏概述1.1 游戏规则1.2 游戏设计思路2. 环境准备3. 创建棋盘3.1 棋盘类

CentOS系统使用yum命令报错问题及解决

《CentOS系统使用yum命令报错问题及解决》文章主要讲述了在CentOS系统中使用yum命令时遇到的错误,并提供了个人解决方法,希望对大家有所帮助,并鼓励大家支持脚本之家... 目录Centos系统使用yum命令报错找到文件替换源文件为总结CentOS系统使用yum命令报错http://www.cppc

不懂推荐算法也能设计推荐系统

本文以商业化应用推荐为例,告诉我们不懂推荐算法的产品,也能从产品侧出发, 设计出一款不错的推荐系统。 相信很多新手产品,看到算法二字,多是懵圈的。 什么排序算法、最短路径等都是相对传统的算法(注:传统是指科班出身的产品都会接触过)。但对于推荐算法,多数产品对着网上搜到的资源,都会无从下手。特别当某些推荐算法 和 “AI”扯上关系后,更是加大了理解的难度。 但,不了解推荐算法,就无法做推荐系