pssh进行并行批量操作

pssh是一个python编写可以在多台服务器上批量执行命令的工具

前提必须每台服务器添加管理服务器的的密钥认证访问

安装

sudo apt-get install pssh

创建需要管理的服务器的用户和IP文件

root@ubuntu:/home/hu# cat lvs.txt 
root@10.10.100.51
root@10.10.100.53

pssh 多主机并行运行命令

hu@ubuntu:~$ pssh -h lvs.txt -i 'pwd'
[1] 21:03:51 [SUCCESS] root@10.10.100.51
/root
[2] 21:03:51 [SUCCESS] root@10.10.100.53
/root

或者

hu@ubuntu:~$ pssh -H root@10.10.100.51 -i 'pwd'
[1] 21:04:26 [SUCCESS] root@10.10.100.51
/root

pscp 把文件并行地复制到多个主机上

hu@ubuntu:~$ touch  /tmp/a1
hu@ubuntu:~$ pscp -h lvs.txt /tmp/a1 /tmp/
[1] 21:06:44 [SUCCESS] root@10.10.100.51
[2] 21:06:44 [SUCCESS] root@10.10.100.53
hu@ubuntu:~$ pssh -h lvs.txt -i 'ls /tmp/a1'
[1] 21:07:21 [SUCCESS] root@10.10.100.51
/tmp/a1
[2] 21:07:21 [SUCCESS] root@10.10.100.53
/tmp/a1

pslurp 将文件从远程主机复制到本地,和pscp方向相反

hu@ubuntu:~$ pslurp -h lvs.txt   -L /tmp/ -l root /tmp/a1 a2
[1] 21:10:46 [SUCCESS] 10.10.100.51
[2] 21:10:46 [SUCCESS] 10.10.100.53

标示将目标服务器的/tmp/a1文件复制到本地的/tmp/目录下,并更名为a2

hu@ubuntu:~$ ll /tmp/10.10.100.*
/tmp/10.10.100.51:
总用量 24
drwxrwxr-x  2 hu   hu    4096  213 21:10 ./
drwxrwxrwt 12 root root 20480  213 21:10 ../
-rw-r--r--  1 hu   hu       0  213 21:10 a2

/tmp/10.10.100.53:
总用量 24
drwxrwxr-x  2 hu   hu    4096  213 21:10 ./
drwxrwxrwt 12 root root 20480  213 21:10 ../
-rw-r--r--  1 hu   hu       0  213 21:10 a2

pnuke 并行在远程主机杀进程

hu@ubuntu:~$ pnuke -h lvs.txt nginx
[1] 21:12:22 [SUCCESS] root@10.10.100.51
[2] 21:12:22 [SUCCESS] root@10.10.100.53

杀死目标服务器的nginx进程,只要ps进程中出现相关词语

你可能感兴趣的:(pssh进行并行批量操作)