CMDB实现的四种方式
第一种(agent):
这种方式是通过向每一台服务器安装agent脚本,然后通过中控机的API,来收集所需要的数据,最后放到数据库中,在通过web的方式显示出来.
实现流程图:

1.录入资产(主机名,SN)
2.本地执行subprocess.getoutput('命令'),获取数据
其本质就是在各个服务器上执行subprocess.getoutput()命令,然后在每台机器上执行,得到执行后的数据,返回给主机的API,然后主机将数据存放入数据库中,用户通过WEB的方式查看资产数据.
优点:速度快
缺点:需要每一台服务器部署一个agent程序
适用范围:大型互联网公司,有着特别多的服务器
第二种(ssh)
这种方式是通过中控机通过ssh的方式类似于shell向每台服务器发送命令,然后得到数据返回给中控机,中控机将数据存放入数据库,以WEB的方式展现给用户
实现流程图:

主要通过Paramiko模块(py)登录服务器获取信息
优点:不需要在服务器安装任何软件
缺点:速度慢
使用范围:服务器较少的公司,因为数量少获取数据不需要花费大量时间
第三种(saltstack)
通过在服务器主控机和服务器安装saltstack,主控机向服务器发送命令来获得数据
实现流程图:

主要是中控机将命令放入队列,服务器执行并返回结果,主控机将数据返回给API存入数据库,以WEB方式显示给用户.
优点:块,开发成本低
缺点:依赖第三方工具
使用范围:在一开始服务器就安装saltstack软件的公司
第四种:Puppt(Ruby语言开发,了解即可)
每隔30分钟,通过RPC队列消息将执行结果返回给用户
CMDB实现的四种方式的更多相关文章
- CMDB资产采集的四种方式
转 https://www.cnblogs.com/guotianbao/p/7703921.html 资产采集的概念 资产采集的四种方式:Agent.SSH.saltstack.puppet 资产采 ...
- C#批量插入数据到Sqlserver中的四种方式
我的新书ASP.NET MVC企业级实战预计明年2月份出版,感谢大家关注! 本篇,我将来讲解一下在Sqlserver中批量插入数据. 先创建一个用来测试的数据库和表,为了让插入数据更快,表中主键采用的 ...
- 【Java EE 学习 80 下】【调用WebService服务的四种方式】【WebService中的注解】
不考虑第三方框架,如果只使用JDK提供的API,那么可以使用三种方式调用WebService服务:另外还可以使用Ajax调用WebService服务. 预备工作:开启WebService服务,使用jd ...
- ASP.NET MVC之下拉框绑定四种方式(十)
前言 上两节我们讲了文件上传的问题,关于这个上传的问题还未结束,我也在花时间做做分割大文件处理以及显示进度的问题,到时完成的话再发表,为了不耽误学习MVC其他内容的计划,我们今天开始好好讲讲关于MVC ...
- SWT组件添加事件的四种方式
在我们CS日常开发过程中会经常去为组件添加事件,我们常用的为AWT与SWT.SWT的事件模型是和标准的AWT基本一样的.下面将按照事件的四种写法来实现它. 一.匿名内部类的写法 new MouseAd ...
- Java实现文件复制的四种方式
背景:有很多的Java初学者对于文件复制的操作总是搞不懂,下面我将用4中方式实现指定文件的复制. 实现方式一:使用FileInputStream/FileOutputStream字节流进行文件的复制操 ...
- C#_批量插入数据到Sqlserver中的四种方式
先创建一个用来测试的数据库和表,为了让插入数据更快,表中主键采用的是GUID,表中没有创建任何索引.GUID必然是比自增长要快的,因为你生成一个GUID算法所花的时间肯定比你从数据表中重新查询上一条记 ...
- java 20 -10 字节流四种方式复制mp3文件,测试效率
电脑太渣,好慢..反正速率是: 高效字节流一次读写一个字节数组 > 基本字节流一次读写一个字节数组 > 高效字节流一次读写一个字节 > 基本字节流一次读写一个字节 前两个远远快过后面 ...
- .NET MVC控制器向视图传递数据的四种方式
.NET MVC控制器向视图传递数据的四种方式: 1.ViewBag ViewBag.Mvc="mvc"; 2.ViewData ViewBag["Mvc"] ...
随机推荐
- js鼠标触发事件集合
转载自:http://blog.sina.com.cn/s/blog_627002d101010yb7.html 事件 浏览器支持 解说 一般事件 onclick IE3.N2 鼠标点击时触发此事件 ...
- 编译hadoop,spark遇到的问题总结
编译hadoop2.6.4 1.JDK8版本过高,换成JDK7: 2.换成命令行mvn package -Pdist,native -DskipTests-Dtar-Dmaven.javadoc.sk ...
- Redis常用命令解析——INFO, MONITOR, SLOWLOG
1. INFO info指令返回服务器相关信息,包括: server: General information about the Redis server clients: Client conne ...
- Btrace的使用方法
本文基于<深入理解Java虚拟机:JVM高级特性与最佳实践 第2版> 写在前面: Btrace有很多用法,比如说性能监视,连接泄露,内存泄漏,多线程竞争,而本文说的只是最基本的应用打印调用 ...
- ubuntu boot空间不足的解决方法
ubuntu boot空间不足的解决方法 2013年12月11日 11:11:39 yypony 阅读数:17000 标签: ubuntu内存boot内核更多 个人分类: linux_usageubu ...
- php -- 魔术方法 之 序列化和反序列化的触发函数:__sleep(),__wakeup()
__sleep():当对象被当做文件保存时会自动触发的方法. 该方法要做的事情,就是返回一个要保存的对象数据的数组 DB.class.php中修改 再次保存效果 读取db对象 因为没有连接数据,不能操 ...
- Android之自己定义checkbox样式
大部分情况下,我们在UI中并不採用android自带的checkbox复选框样式,这时候就须要我们自己定义自己的checkbox. 首先找两张checkbox背景图片.比方下图样子的: 然后在draw ...
- Sublime 插件补充
开启vim模式+autosave+Livereload插件 安装参考:emmmet http://www.cnblogs.com/wuheng1991/p/6144955.html
- 蓝桥杯 历届试题 剪格子(dfs搜索)
历届试题 剪格子 时间限制:1.0s 内存限制:256.0MB 问题描述 如下图所示,3 x 3 的格子中填写了一些整数. +--*--+--+ |* || +--****--+ ||* | ** ...
- matlab判断图像是彩色图还是灰度图
matlab怎样看图像是彩色还是灰度_莹莹_新浪博客 http://blog.sina.com.cn/s/blog_76088a1f0101diq0.html 解决一: isrgb(A) 如果A是RG ...