标签:hosts 执行 log 简单 put from abr img else
a. Agent方式
api - URL - 发送数据格式 - 返回值 agent - 采集数据,发送数据 好处: - 简单 - 采集速度快,响应速度快 坏处: - 每台agent装的插件多,性能损耗严重 - 更新需要更新每台agent服务器
####server from django.shortcuts import render,HttpResponse # Create your views here. def asset(request): if request.method == "POST": print(request.POST) # 写入到数据 return HttpResponse(‘1002‘) else: return HttpResponse(‘姿势不对‘) ####agent import subprocess import requests v1 = subprocess.getoutput("ifconfig") value1 = (v1[51:55]) v2 = subprocess.getoutput("dir") value2 = (v2[14:20]) url = "http://127.0.0.1:8000/asset.html" response = requests.post(url,data={"k1":value1,"k2":value2}) print(response.text)
b. ssh方式
#ssh方式 - fabric(本质是Paramiko) - ansible(本质是Paramiko) - Paramiko #Paramiko模块 原理: Paramiko中控机远程连接服务器,执行命令,获取结果,将结果发送Api 应用场景:服务器少,ssh可以忽略 好处 - 无需Agent 坏处 - 连接客户机时每次需要ssh连接,速度慢 http://www.cnblogs.com/wupeiqi/articles/5095821.html
##server from django.shortcuts import render,HttpResponse # Create your views here. def asset(request): if request.method == "POST": print(request.POST) # 写入到数据 return HttpResponse(‘1002‘) else: return HttpResponse(‘姿势不对‘) ##Paramiko中控机 import paramiko import requests # 创建SSH对象 ssh = paramiko.SSHClient() # 允许连接不在know_hosts文件中的主机 ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # 连接服务器 ssh.connect(hostname=‘10.37.129.3‘, port=22, username=‘root‘, password="123456") # 执行命令 stdin, stdout, stderr = ssh.exec_command(‘ifconfig‘) # 获取命令结果 result = stdout.read()[0:20] # 关闭连接 ssh.close() url = "http://127.0.0.1:8000/asset.html" response = requests.post(url,data={"k1":result}) print(response.text)
标签:hosts 执行 log 简单 put from abr img else
原文地址:http://www.cnblogs.com/oyoui/p/7239892.html