pssh是python写的可以并发在多台机器上批量执行命令的工具,用法可以媲美ansible的一些简单用法,执行起来速度比ansible快,且支持文件并行复制,远程命令执行,杀掉远程主机上的进程等等。(注意需要安装 python 2.4 或以上版本)。
(1) 安装:#yum install -y pssh.noarch
(2) pssh指令执行语句示例:
pssh -A -x “-o StrictHostKeyChecking=no” -h iplist.txt -i 命令语句 此方式需手动输入1次密码
示例:
pssh -A -x “-o StrictHostKeyChecking=no” -h iplist.txt -i date
若命令语句不是连续的语句,需要加单引号,如下所示:
pssh -A -x “-o StrictHostKeyChecking=no” -h iplist.txt -i ‘systemctl status firewalld’
注意:
1) 执行如上示例语句,需在界面提示输入密码处输入1次密码;
2) 执行指令中的iplist文件如果不在当前路径,则需要写出iplist文件的绝对路径;
3) 其中iplist文件格式如下:
gbase@target_ip1
gbase@target_ip2
......
gbase@target_ipn
或者
root@target_ip1
root@target_ip2
......
root@target_ipn
该文件需注意1点:
所有节点登录用户的登录密码必须一致,即为同一密码。
参数说明:
-h主机文件列表,内容格式:[user@]host[:port]([]为可选项)
-H主机字符串,内容格式:[user@]host[:port]([]为可选项)
-l 远程机器的用户名-p一次最大允许多少连接-o输出内容重定向到一个文件-e执行错误重定向到一个文件-t设置命令执行的超时时间,0表示无限制(可选项,单位:s 秒)-A手动输入密码模式,提示输入密码并且把密码传递给ssh(注意这个参数添加后只
是提示作用,随便输入或者不输入直接回车都可以)
-O设置ssh参数的具体配置,参照ssh_config配置文件
-v详细模式-x 传递多个SSH 命令,多个命令用空格分开,用引号括起来-X同-x 但是一次只能传递一个命令-i 显示标准输出和标准错误在每台host执行完毕后-I 每个输入命令,并传递给ssh进程允许命令脚本传送到标准输入
-P打印出服务器返回信息
指令中参数 -x “-o StrictHostKeyChecking=no”的作用是忽略对于Host Key的检查
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。