用python登录远程salt,并执行命令】的更多相关文章

用python操作saltstack,如果是在本地,则可以用python的salt模块,但如果要操作远程saltstack,则不行,今天就来看看怎么操作. 用python操作远程的saltstack,需要远程saltstack安装并开启salt-api,然后用python登录salt-api获取token,再执行命令,具体代码如下: #! coding:utf-8 import urllib import urllib2 from op_site.settings import salt_htt…
paramiko 远程控制介绍 Python paramiko是一个相当好用的远程登录模块,采用ssh协议,可以实现linux服务器的ssh远程登录.首先来看一个简单的例子 import paramiko #实例化ssh客户端 ssh = paramiko.SSHClient() #创建默认的白名单 policy = paramiko.AutoAddPolicy() #设置白名单 ssh.set_missing_host_key_policy(policy) #链接服务器 ssh.connect…
之前写过一个python远程执行命令的脚本,但在一个性能测试中,要将程序批量分发到不同服务器,程序无法使用,再将之前的脚本更新,加入批量上传的功能.之前脚本地址:http://www.cnblogs.com/landhu/p/4961##coding:utf-8 #------------------ #Author:Hu #Created:2016-02-29 #------------------ import paramiko,os,time,sys from optparse impor…
一.前言 在日常运维的过程中,经常需要登录主机去执行一些命令,有时候需要登录一批主机执行相同的命,手动登录执行的化效率太慢, 所以可以通过Python的paramiko模块批量执行,本篇文章基于python2.7. 二.同步执行 根据ip列表按顺序执行,缺点是如果命令耗时长,主机很多的话,执行效率较慢 # -*- encoding: utf-8 -*- import paramiko import traceback def ssh(sys_ip, username, password, cmd…
利用saltstack的salt.client模块可以在python的命令行下或者python脚本里执行相应的salt命令 master端想要执行类似 salt '*' cmd.run 'uptime' 在saltclient里可以这么写 import salt.client local = salt.client.LocalClient() local.cmd('*', 'cmd.run', ['uptime']) 也可以放到后台执行只返回一个jid cmd_async('*', 'cmd.r…
昨天下班前,老板给了一批LOG数据库IP地址,需要统计LOG表里Message字段top 10的结果,并输出到一个excel文件里.抽查看了下,有两种格式的以当天日期结尾的表名.由于数量太多,时间紧迫,只好写批量脚本解决问题.并以此扩展,解析其中的几个常用shell程序,主体脚本写在文章后半部分.学习shell重在灵活运用命令,形成自己的思维方式,和书写习惯,脚本参考即可. 解题过程步骤:1.梳理IP地址及对应表名2.确定查询SQL3.批量查询数据 完整脚本附在文章最后 解析下常用到的知识点:…
前面介绍过在LoadRunner的Java协议实现“使用SSH连接Linux”,当然连接之后的故事由你主导. 今天要讲的,是一个非Java版本.是对“在LoadRunner中执行命令行程序之:popen()取代system()”的一个升华. 下面的脚本,是在LoadRunner里连接Linux/Unix远程服务器,收集其磁盘IO的负载到测试结果中. 涉及到三个知识点: 1.LoadRunner自带“PuTTY Link”的使用,路径为“%LR_PATH%\bin\plink.exe”: 2.Li…
python脚本和shell脚本一样可以获取命令行的参数,根据不同的参数,执行不同的逻辑处理. 通常我们可以通过getopt模块获得不同的执行命令和参数. 下面我通过新建一个test.py的脚本解释下这个模块的的使用 #!/usr/bin/python # -*- coding: utf-8 -*- import sys import getopt if __name__=='__main__': print sys.argv opts, args = getopt.getopt(sys.arg…
一.概述 WebSocket WebSocket的工作流程:浏览器通过JavaScript向服务端发出建立WebSocket连接的请求,在WebSocket连接建立成功后,客户端和服务端就可以通过 TCP连接传输数据.因为WebSocket连接本质上是TCP连接,不需要每次传输都带上重复的头部数据,所以它的数据传输量比轮询和Comet技术小很多. paramiko paramiko模块,基于SSH用于连接远程服务器并执行相关操作. shell脚本 /opt/test.sh #!/bin/bash…
前面介绍过在LoadRunner的Java协议实现“使用SSH连接Linux”,当然连接之后的故事由你主导. 今天要讲的,是一个非Java版本.是对“在LoadRunner中执行命令行程序之:popen()取代system()”的一个升华. 下面的脚本,是在LoadRunner里连接Linux/Unix远程服务器,收集其磁盘IO的负载到测试结果中. 涉及到三个知识点: 1.LoadRunner自带“PuTTY Link”的使用,路径为“%LR_PATH%\bin\plink.exe”: 2.Li…