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'})

 

posted @ 2018-06-14 11:01  G500  阅读(307)  评论(0)    收藏  举报