导读 pssh是由python编写,可以在多台服务器执行命令的工具。在服务器越来越多的企业这种自动化运维工具越来越火。

下载pssh安装包
[root@localhost ~]# wget https://files.pythonhosted.org/packages/60/9a/8035af3a7d3d1617ae2c7c174efa4f154e5bf9c24b36b623413b38be8e4a/pssh-2.3.1.tar.gz
安装依赖包
[root@localhost ~]# yum install -y make gcc gcc++ python-devel python-pip
安装pssh
[root@localhost ~]# tar xf pssh-2.3.1.tar.gz
[root@localhost ~]# cd pssh-2.3.1
[root@localhost ~]# python setup.py install
配置免密登录
[root@localhost ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:3antaxjGw+hdgfSlrXLYhUe5vgHe9b0ehh/gUY9E8Eg root@localhost.localdomain
The key's randomart image is:
+---[RSA 2048]----+
|            E... |
|          .. ++  |
|         . o.*oo |
|         ...*o*.o|
|        S+.+o@..+|
|        . OoB B o|
|       . o.B.o *.|
|        . o.. +.o|
|           .o..o |
+----[SHA256]-----+
[root@localhost ~]# cd /root/.ssh/
[root@localhost .ssh]# ls
id_rsa  id_rsa.pub
[root@localhost .ssh]# ssh-copy-id 172.16.1.112
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '172.16.1.112 (172.16.1.112)' can't be established.
ECDSA key fingerprint is SHA256:yFvaxR1x5YDhhe+6xR/Ou6Sm+YPYvPAoiLVKt9mAnXA.
ECDSA key fingerprint is MD5:0d:c4:79:bc:36:7a:a4:82:95:4f:d5:d0:a3:c8:7d:2e.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@172.16.1.112's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '172.16.1.112'"
and check to make sure that only the key(s) you wanted were added.
[root@localhost .ssh]# ssh-copy-id 172.16.1.16
/usr/bin/ssh-copy-id: INFO: Source of key(s) to be installed: "/root/.ssh/id_rsa.pub"
The authenticity of host '172.16.1.16 (172.16.1.16)' can't be established.
ECDSA key fingerprint is SHA256:ANzlXzrGA87YLI2vzkPJ/iNPiSQ5JStJc95948jE8aw.
ECDSA key fingerprint is MD5:f9:f1:1b:5a:99:64:d8:d8:e9:9b:e6:bb:c3:d5:bd:e7.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@172.16.1.16's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh '172.16.1.16'"
and check to make sure that only the key(s) you wanted were added.
测试免密登录
[root@localhost ~]# ssh 172.16.1.112
Last login: Tue Jun  2 09:44:24 2020 from 172.16.1.16
[root@localhost ~]# ssh 172.16.1.16
Last login: Tue Jun  2 09:30:47 2020 from 172.16.1.100
测试pssh
创建aaa文件存放ip地址
[root@localhost ~]# cat aaa
172.16.1.16
172.16.1.112
批量执行date命令
[root@localhost ~]# pssh -h aaa -l root -P "date"
172.16.1.16: 2020年 06月 02日 星期二 09:59:48 CST
[1] 09:59:48 [SUCCESS] 172.16.1.16
172.16.1.112: 2020年 06月 02日 星期二 09:59:48 CST
[2] 09:59:48 [SUCCESS] 172.16.1.112
查看磁盘
[root@localhost ~]# pssh -h aaa -l root -P "lsblk"
172.16.1.16: NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sr0              11:0    1  4.2G  0 rom  
[1] 10:13:02 [SUCCESS] 172.16.1.16
172.16.1.112: NAME            MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
sda               8:0    0   20G  0 disk 
├─sda1            8:1    0    1G  0 part /boot
└─sda2            8:2    0   19G  0 part 
  ├─centos-root 253:0    0   17G  0 lvm  /
  └─centos-swap 253:1    0    2G  0 lvm  [SWAP]
sr0              11:0    1  4.2G  0 rom  
[2] 10:13:03 [SUCCESS] 172.16.1.112

pssh部署完毕!

本文原创地址:https://www.linuxprobe.com/centos-pssh.html编辑:王华超,审核员:逄增宝