上期为大家分享了《如何用Python脚本来监控服务器——自动化监控Agent方式》,今天为大家带来《如何用Python脚本来监控服务器——自运化监控方式之SSH》
API就是一个Django程序,这个程序以get post传参
通过requests模块展开,前题是requests模块要进行安装,安装方法如下:
C:\WINDOWS\System32>python -m pip install --upgrade pip C:\WINDOWS\System32>pip install requests >>> import requests >>>ret = requests.get('http://www.baidu.com') >>>ret.text
ssh模式:
优点:无agent端,使用方便
缺点:速度慢
说明:而ansible,fabic就是基于paramiko来做的。
自动化监控SSH方式实战
# 基于paramiko模块, pip3 install paramiko import requests import paramiko # ################## 获取今日未采集主机名 ################## #result = requests.get('http://www.127.0.0.1:8000/assets.html') # result = ['c1.com','c2.com'] # ################## 通过paramiko连接远程服务器,执行命令 ################## # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接服务器 ssh.connect(hostname='192.168.14.36', port=22, username='wupeiqi', password='123') # 执行命令 stdin, stdout, stderr = ssh.exec_command('df') # 获取命令结果 result = stdout.read() # 关闭连接 ssh.close() print(result) # data_dict = {result} # ################## 发送数据 ################## # requests.post('http://www.127.0.0.1:8000/assets.html',data=data_dict)
好啦,今天的分享就到这儿了,下期为大家分享《如何用Python脚本来监控服务器——自动化监控方式之Saltstack》,更多干货内容,请关注官方公众号【汇智知了堂】