在實際生產環境中,常常會涉及到批量管理linux主機的狀況,像主機較多的狀況下,能夠使用ansible、Saltstack、puppet這些專業的工具,可是pssh的輕便、並行能夠適用主機較少的狀況下python
1、安裝前準備
設置主機間的ssh-key祕鑰認證訪問
1.登陸管理機器建立祕鑰
ssh-keygen
2.將公鑰拷貝到其餘須要管理的主機
ssh-copy-id -i /root/.ssh/id_rsa.pub -p 22 root@192.168.x.x
3.ssh測試是否須要密碼linux
2、安裝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 installtomcat
3、使用pssh
1.建立ip.txt 寫上主機的「用戶名@IP:port」
2.獲取其餘主機的時間ssh
若是沒有祕鑰認證 能夠採用密碼訪問
sshpass -p [password] pssh -A -i -h ip.txt "date"ide
後續只要把命令更換就好了,還有其餘的pssh命令;例如pscp,prsync,pnuke和pslurp工具
pscp 傳輸文件到遠端(不能新建目錄)
pscp -h /root/test/ip.txt 文件名 對端路徑
pscp -r -h ip.txt 目錄名 隊端路徑 (目錄)測試
prsync 並行傳輸文件到遠端(若目錄不存在能夠建立)
prsync -h /root/test/ip.txt 文件名 新對端路徑
prsync -r -h /root/test/ip.txtip.txt 文件名 新對端路徑google
pslurp從對端拉去文件至本地,會生產不一樣IP的文件夾保存文件
pslurp -h ip.txt -L 本地路徑 對端路徑/文件 本地名
拉取文件
拉取目錄加上-r 便可code
pnuke:遠程批量killall
pnuke -h ip.txt tomcatblog