pssh 是一个python写的批量执行工具,非常适合30台服务器以内的一些重复性的操作
安装很简单,只要python版本2.4 以上的都行
用这个工作最好把机器做做好ssh信任关系,不然很麻烦 每次执行 都需要输入密码 

[root@localhost ~]# wget https://pypi.python.org/packages/source/p/pssh/pssh-2.3.1.tar.gz
---- ::-- https://pypi.python.org/packages/source/p/pssh/pssh-2.3.1.tar.gz
Resolving pypi.python.org... failed: Name or service not known.
wget: unable to resolve host address “pypi.python.org”
[root@localhost ~]# wget https://pypi.python.org/packages/source/p/pssh/pssh-2.3.1.tar.gz
---- ::-- https://pypi.python.org/packages/source/p/pssh/pssh-2.3.1.tar.gz
Resolving pypi.python.org... 103.245.222.175
Connecting to pypi.python.org|103.245.222.175|:... connected.
HTTP request sent, awaiting response... OK
Length: (23K) [application/octet-stream]
Saving to: “pssh-2.3..tar.gz”
%[========================================================================================================================================================================>] , 124K/s in .2s
-- :: ( KB/s) - “pssh-2.3..tar.gz” saved [/]
[root@localhost ~]# tar zxf pssh-2.3..tar.gz
[root@localhost ~]# cd pssh-2.3.
[root@localhost pssh-2.3.]# python setup.py install
安装完毕后会有如下提示
copying build/scripts-2.6/pslurp -> /usr/bin
copying build/scripts-2.6/pssh -> /usr/bin
copying build/scripts-2.6/pnuke -> /usr/bin
copying build/scripts-2.6/pscp -> /usr/bin
copying build/scripts-2.6/prsync -> /usr/bin
copying build/scripts-2.6/pssh-askpass -> /usr/bin
这几个就是他的命令,命令也相对来说很简单,不明白的可以看help,英文说明简单到我个文盲都能看懂
pssh   多主机并行运行命令
pscp   传输文件到多个hosts,他的特性和scp差不多
pslurp   从多台远程机器拷贝文件
pnuke    kill远程机器的进程
pslurp   从远程主机考本文件到本地
prsync   使用rsync协议从本地计算机同步到远程主机
 
pssh:
-h 执行命令的远程主机列表  或者 -H user@ip:port  文件内容格式[user@]host[:port]
-l 远程机器的用户名
-p 一次最大允许多少连接
-o 输出内容重定向到一个文件
-e 执行错误重定向到一个文件
-t 设置命令执行的超时时间
-A 提示输入密码并且把密码传递给ssh
-O 设置ssh参数的具体配置,参照ssh_config配置文件
-x 传递多个SSH 命令,多个命令用空格分开,用引号括起来
-X 同-x 但是一次只能传递一个命令
-i 显示标准输出和标准错误在每台host执行完毕后
-I 读取每个输入命令,并传递给ssh进程 允许命令脚本传送到标准输入
-P 打印输出
[root@localhost ~]# pssh -H 192.168.1.100 -i ls  #单台机器 -H 参数
[] :: [SUCCESS] 192.168.1.100
anaconda-ks.cfg
hellotest
install.log
install.log.syslog
nginx
ocaml-4.01..tar.gz
password
rsync-3.0.
rsync-3.0..tar.gz
rsync_install.sh
test.sh
zabbix-2.0.
zabbix-2.0..tar.gz
[root@localhost ~]# cat ip.txt #多台机器的话可以把IP写进一个文件里面 用-h参数指定文件
192.168.1.91
192.168.1.92
192.168.1.100
192.168.1.101
192.168.1.102
192.168.1.130
192.168.1.131
192.168.1.132
[root@localhost ~]# pssh -h ip.txt -i date #-i表示执行完毕后显示标准输出和标准错误
[] :: [SUCCESS] 192.168.1.92
Sun Jul :: EDT
[] :: [SUCCESS] 192.168.1.101
Sun Aug :: EDT
[] :: [SUCCESS] 192.168.1.100
Sun Aug :: EDT
[] :: [SUCCESS] 192.168.1.130
Sun Aug :: EDT
[] :: [SUCCESS] 192.168.1.131
Sun Aug :: EDT
[] :: [SUCCESS] 192.168.1.132
Sun Aug :: EDT
[] :: [SUCCESS] 192.168.1.91
Thu May :: EDT
[] :: [SUCCESS] 192.168.1.102
Sun Aug :: EDT
[root@localhost ~]#
 

pssh 批量管理执行的更多相关文章

  1. pssh批量管理

    因为公司金融项目正式上线,有等保的要求,所有的线上服务器对操作过历史命令都要记录下来,需要修改一部分的配制文件.总共有300多台Linux服务器,总不能一台一台去改吧.首先想到是ansble,salt ...

  2. pssh批量管理服务器

    pssh命令是一个python编写可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的,类似pdsh,个人认为相对pdsh更为简便,使用必须在各个服务器上配置好密钥认证访问. 1. ...

  3. PSSH 批量管理服务器

    pssh命令是一个python编写可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的,类似pdsh,个人认为相对pdsh更为简便,使用必须在各个服务器上配置好密钥认证访问. 1. ...

  4. Linux下批量管理工具pssh安装和使用

    Linux下批量管理工具pssh安装和使用 pssh工具包 安装:yum -y install pssh pssh:在多个主机上并行地运行命令 pscp:把文件并行地复制到多个主机上 prsync:通 ...

  5. pssh批量远程管理工具

    Linux下批量管理工具pssh使用记录   pssh是一款开源的软件,使用python实现,用于批量ssh操作大批量机器:pssh是一个可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具 ...

  6. 轻量级批量管理工具pssh

    pssh工具 pssh工具是个轻量级的批量管理工具,相比同类型的开源工具 Ansible,Saltstack,他比较轻量级,需要对管理的主机做秘钥认证 Ansible是可以做秘钥认证,也可以通过配置文 ...

  7. 批量管理工具:pssh/ansible

    ssh 免密码 批量管理1.创建用户useradd user1echo “123456”| passwd --stdin user12.创建秘钥ssh-keygen -t dsa然后一直回车 非交互式 ...

  8. 自动化批量管理工具pssh - 运维小结

    pssh提供OpenSSH和相关工具的并行版本.包括pssh,pscp,prsync,pnuke和pslurp.该项目包括psshlib,可以在自定义应用程序中使用.pssh是python写的可以并发 ...

  9. Linux下批量管理工具pssh使用记录

    pssh是一款开源的软件,使用python实现,用于批量ssh操作大批量机器:pssh是一个可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的:比起for循环的做法,我更推荐使用 ...

随机推荐

  1. server中intersect的用法

    intersect 就像数学中的交集一样, select nam from  tb_table1 intersect select name from  tb_table2  查询的是两个数据集的交集 ...

  2. poj1470 Closest Common Ancestors [ 离线LCA tarjan ]

    传送门 Closest Common Ancestors Time Limit: 2000MS   Memory Limit: 10000K Total Submissions: 14915   Ac ...

  3. CodeForces 592A PawnChess

    简单暴力模拟. #include<cstdio> #include<cstring> #include<cmath> #include<algorithm&g ...

  4. Mysql数据库的事物

    一 .事物的特性:ACID 数据库的事务必须具备ACID特性,ACID是指 Atomicity(原子性).Consistensy(一致性).Isolation(隔离型)和Durability(持久性) ...

  5. hexo博客搭建及其美化

    ###1.GitHub创建个人仓库 登录到GitHub,如果没有GitHub帐号,使用你的邮箱注册GitHub帐号:Build software better, together 点击GitHub中的 ...

  6. redis连接数据库进行操作

    该项目需要的类目录 1.首先我们需要创建我们的实体类 2.放置我们的dao层,在里面写入方法 3.配置类Appconfig需要加入我们的JdbcTemplate方法,因为我们用的是spring,所以需 ...

  7. sql 语句哪里添加单引号问题

    1.sql 语句哪里添加单引号问题,哪些地方必须加双引号,否则sql语句会报错? :涉及varchar的值的时候,必须有单引号包括varchar值.int等其他字段类型,则不需要加单引号包括. 如: ...

  8. struts2 input file多文件同时通过ajax提交

    <input type="file" name="files" multiple="multiple">必须是multiple才 ...

  9. Excel小tips - 如何实现多列成绩统一排名

    本文参考:http://mp.weixin.qq.com/s/XR49hyG9Cods7rOcsM-tRg 如果有以下数据文件,需要进行成绩排名. 第一步:先在成绩列后边添加一列,用来显示名次.如下: ...

  10. SD/MMC的Commands和Responses的总结

    SD总线通信是基于指令和数据比特流,起始位開始和停止位结束. SD总线通信有三个元素:1.Command:由host发送到卡设备.使用CMD线发送. 2.Response:从card端发送到host端 ...