使用PSSH批量SSH操作Linux服务器

     2014年06月20日       磊磊syh       运维笔记->系统管理       pssh 

服务器多了,有一个烦恼就是如何批量快速操作一堆服务器。这里我推荐一下经常使用利器pssh。这个工具给我的工作带来了莫大的帮助。

简介
pssh是一款开源的软件,使用python实现。用于批量ssh操作大批量机器。pssh的项目地址 https://code.google.com/p/parallel-ssh/

安装
在pssh的项目主页找到相应的版本,下载到我们的服务器上,解压后执行python setup.py安装。下面以pssh-2.3的安装为例

wget 'https://parallel-ssh.googlecode.com/files/pssh-2.3.tar.gz'

#如果上面链接无法下载(被墙)可以换我这个链接
wget 'http://files.opstool.com/files/pssh-2.3.tar.gz' 

tar -xzvf pssh-2.3.tar.gz
cd pssh-2.3
python setup.py install

常用的方法
pssh使用帮助

pssh --help

pssh查看所有服务器的uptime

  • -h list 指定了执行命令的机器列表
  • -A表示提示输入密码(如果机器都是ssh key打通的则无需加-A)
pssh -i -A -h list 'uptime'

使用pscp向一堆机器分发文件

pscp -h list  localfile   remote_dir

从一堆机器中拷贝文件到中心机器

pslurp -h list /etc/hosts local_dir

常见问题
如果你遇到这样的错误:

IOError: [Errno 4] Interrupted system call 

建议升级python版本到python2.7