硬件信息采集系统知识点整理

1、资产采集涉及的技术点:
– 线程池

– 兼容三种方式:Agent 、SSH 、Slat

– 可插拔式插件:basic 、board 、nic 、memory 、disk

– 配置文件

– request 模块:

发送:requests.post(url = ‘ ‘ ,data = , json = )

requests.get()

Django接受:request.POST , content-type:

– traceback:错误详细信息
– paramiko模块,基于SSH链接远程主机并执行命令
– SaltStack
– API验证
key,time|time 时间验证、规则验证、是否已存在

2、常见问题
a. 服务器资产采集系统流程?
ssh:中控机,
salt:master,
agent:每台服务器都需要

b. 代码如何部署到服务器上?
– git
– 代码打成:rpm包,运维
yum install xxxxx

c. 什么时候安装到服务器上的?
服务器装完系统后,自动做环境初始化:c1.com
使用puppet 模板

c1.com 文件:
yum install python
yum isntall requests
create file a1.py
cp xx xxx
yum install xxxxx
加入到定时任务中

saltstack 模块
c1.com 文件:
yum install python
yum isntall requests
create file a1.py
cp xx xxx
yum install xxxxx
d. 如何运行:
Salt和SSH:
Linux写定时任务,执行bin目录下可执行文件
– 获取未采集主机名(用户手动通过后台管理录入)
– 采集数据
– 汇报API
Agent:
Linux写定时任务,执行bin目录下可执行文件
– Agent上执行,采集资产并自动汇报
– 数据库有:更新
– 数据库无:增加【自动发现】

**** 主机名不能重复 ****

梳理:

a. 程序开发完成

b. 部署:

Agent模式,部署到每台机器上,当装机完成环境初始化的时候,使用rpm包安装。每天执行定时任务。

SSH 和 Salt模式,部署到中控机或者master上。前提是装机前登陆服务器管理系统,找到指定的机器,修改设置主机名。每次通过API 进行HTTP请求获取未采集主机列表,再进行资产采集,并提交数据。

e. 临时修改主机名,可能造成资产重复汇报
1. salt和SSH不会出现资产重复汇报,因为首先获取了未采集的主机名,再进行数据采集,可能会找不到主机名。

2. Agent模式可能会出现这种情况。如何避免:

系统安装完成后,立即执行资产采集任务;

获取当前主机名,将主机名写入到本地cert文件。

old_hostname = cert文件内容(空或主机名)

new_hostname = 获取当前主机名

如果 old_hostname为空,使用new_hostname进行汇报并且写入到cert文件中

如果 old_hostname不为空,且new_hostname和old_hostname不相同,使用old_hostname进行汇报。

3、流程
SSH 和 Salt 模式:

1、购买服务器,厂商提供 SN 号、硬盘等网卡进本信息。服务器组装放置到机房机柜上,统计好相关信息,通过Excel录入到数据库中。

2、手动装机情况:找到指定机器,安装系统,设置主机名,安装相关软件。

自动装机情况:cobbler 装机+saltstack / puppet进行初始化环境

都需要通过后台管理——跟新主机名

3、唯一标示:主机名

Agent 模式:

只有物理机算资产:

1、购买服务器,厂商提供 SN 号、硬盘等网卡进本信息。服务器组装放置到机房机柜上,统计好相关信息,通过Excel录入到数据库中。

2、手动装机情况:找到指定机器,安装系统,设置主机名,安装相关软件。

自动装机情况:cobbler 装机+saltstack / puppet进行初始化环境

3、唯一标示:SN号

物理机+虚拟机都算资产:

1、购买服务器,厂商提供 SN 号、硬盘等网卡进本信息。

2、手动装机情况:找到指定机器,安装系统,设置主机名,安装相关软件。

自动装机情况:cobbler 装机+saltstack / puppet进行初始化环境

3、 采集资产:

– 自动发现:自动收集硬件信息(管理员、业务线、机房等信息需手动录入)

– 已经存在:更新硬件信息

4.代码流程

1168194-20171010230401574-72648479

5. 代码结构

1168194-20171010230519605-542523592

本文来自投稿,不代表微擎百科立场,如若转载,请注明出处:https://www.w7.wiki/develop/4485.html

发表评论

登录后才能评论