在实际生产环境中,经常会涉及到批量管理linux主机的情况,像主机较多的情况下,可以使用ansible、Saltstack、puppet这些专业的工具,但是pssh的轻便、并行可以适用主机较少的情况下

一、安装前准备
设置主机间的ssh-key秘钥认证访问
1.登录管理机器创建秘钥
ssh-keygen
pssh批量管理linux主机(少量)
2.将公钥拷贝到其他需要管理的主机
ssh-copy-id -i /root/.ssh/id_rsa.pub -p 22 root@192.168.x.x
pssh批量管理linux主机(少量)
3.ssh测试是否需要密码
pssh批量管理linux主机(少量)

二、安装pssh(源码编译)
wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz
tar xf pssh-2.3.1.tar.gz
cd pssh-2.3.1/
python setup.py install

三、使用pssh
1.创建ip.txt 写上主机的“用户名@IP:port”
pssh批量管理linux主机(少量)
2.获取其他主机的时间
pssh批量管理linux主机(少量)

如果没有秘钥认证 可以采用密码访问
sshpass -p [password] pssh -A -i -h ip.txt "date"

后续只要把命令更换就行了,还有其他的pssh命令;例如pscp,prsync,pnuke和pslurp

pscp 传输文件到远端(不能新建目录)
pscp -h /root/test/ip.txt 文件名 对端路径
pssh批量管理linux主机(少量)
pscp -r -h ip.txt 目录名 队端路径 (目录)
pssh批量管理linux主机(少量)

prsync 并行传输文件到远端(若目录不存在可以创建)
prsync -h /root/test/ip.txt 文件名 新对端路径
pssh批量管理linux主机(少量)
prsync -r -h /root/test/ip.txtip.txt 文件名 新对端路径
pssh批量管理linux主机(少量)

pslurp从对端拉去文件至本地,会生产不同IP的文件夹保存文件
pslurp -h ip.txt -L 本地路径 对端路径/文件 本地名
拉取文件
pssh批量管理linux主机(少量)
拉取目录加上-r 即可

pnuke:远程批量killall
pnuke -h ip.txt tomcat