CMDB 自动采集服务器信息方法介绍:subprocess.getoutput、paramiko
1、自动采集服务器信息
CMDB
自动采集服务器信息:
agent 方法: 服务器本地执行命令 适用于机器量多
subprocess.getoutput('ls') 然后上传到指定url
paramiko 方法: 用于远程连接服务器并执行命令(缺点是慢) 适用于机器量少
pip3 install paramiko
# 基于用户名密码连接:
import paramiko
# 创建 SSH 对象
ssh = paramiko.SSHClient()
# 允许连接不在know_hosts 文件中的主机
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())
# 连接服务器
ssh.connect(hostname='49',port=120,username='02',password='@#')
# 执行命令
stdin,stdout,stderr = ssh.exec_command('df -h')
# 获取命令结果
result = stdout.read()
# 关闭连接
ssh.close()
print(result)
# saltstack 方法:
import requests
requests.post("127.0.0.1:8000/asset.html",data={1:'1'})

浙公网安备 33010602011771号