服务器多了,有一个问题就是如何批量快速操作多台服务器,在网上搜到了PSSH工具,试用了一下发现挺好用,推荐给大家。
pssh是一个python编写的可以在多台服务器上执行命令的轻量级管理工具,同时支持拷贝文件,python版本大于2.4即可,项目地址:parallel-ssh。
$ wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz $ tar -xzvf pssh-2.3.1.tar.gz $ cd pssh-2.3.1 $ python setup.py install
先创建一个文本文件hosts.txt,存放要操作的机器列表,格式为[user@]host[:port]:
user1@127.0.0.1:1254 user2@127.0.0.2 127.0.0.3
用pssh查看所有服务器的uptime:
$ pssh -i -h hosts.txt 'uptime'
可根据需要把 update 换为别的命令
pssh安装后附加了一些很好用的工具,主要有:
作用:传输文件到多个hosts,类似scp
示例:
$ pscp -h hosts.txt foo.txt /home/foo.txt
作用:从多台远程机器拷贝文件到本地
示例:
$ pslurp -h hosts.txt /etc/hosts local_dir
作用:并行在远程主机杀进程
示例:
$ pnuke -h hosts.txt -l root java
作用:使用rsync协议从本地计算机同步到远程主机
示例:
$ prsync -r -h hosts.txt foo /home/foo