当前位置: 首页 > 科技观察

分享一个自动化运维工具--PSSH工具

时间:2023-03-14 17:56:56 科技观察

概述我已经介绍了如何使用脚本实现对部分服务器的远程控制和文件传输,那么有没有什么工具可以实现类似的功能呢?一、PSSH简介PSSH提供了OpenSSH及相关工具的并行版本。包括pssh、pscp、prsync、pnuke和pslurp。该项目包括psshlib,可用于自定义应用程序。pssh是python写的一个工具,可以在多台机器上并发批量执行命令。它的用法可以类比ansible的一些简单用法,执行速度比ansible要快。它支持文件的并行复制、远程命令执行、杀死远程主机进程等。杀手级功能是并行复制文件。最好在远程主机上执行批量上传和下载时使用它。项目地址:https://code.google.com/archive/p/parallel-ssh/2。安装PSSH前提条件:注意需要安装python2.4以上===========yum安装===========yuminstallpssh===========源码安装===========wgethttp://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gztar-xvfpssh-2.3.1.tar.gzcdpssh-2.3.1/pythonsetup.pybuild&&pythonsetup.pyinstall3,pssh语法pssh[OPTIONS]command[…]options:--version:查看版本-h:hosts文件列表,内容格式"[user@]host[:port]"-H:hoststring,内容格式"[user@]host[:port]"-l:用于登录的用户名-p:并发线程数[可选]-o:输出文件目录[可选]-e:错误输入文件[可选]]-t:TIMEOUT超时设置,0无限制[可选]-O:SSH选项-v:详细模式-A:手动进入密码模式-x:额外的命令行参数用空白符号、引号和反斜杠处理-X:附加命令行参数,单参数方式,同-x-i:每个服务器内部处理informationoutput-P:打印出服务器返回的信息。常用选项:-H,-h,-i,4.常用用法用yum安装后,只能用pssh,但编译安装后,其他命令也会安装(pscpprsyncpnukepslurp)pssh:runcommandsin在多个远程主机上并行示例:pssh-hhosts.txt-Adatepscp:将文件并行复制到多个远程主机示例:pscp-hhosts.txt-lirb2foo.txt/home/irb2/foo.txtprsync:使用rsync协议进行同步本地文件到多个远程主机。示例:prsync-r-hhosts.txt-lirb2foo/home/irb2/foopnuke:parallelkillallaprocessonmultipleremotehosts示例:pnuke-hhosts.txt-lirb2javapslurp:Copyfilesfrommultipleremotehoststothelocalhost示例:pslurp-hhosts.txt-L/tmp/outdir-lirb2/home/irb2/foo.txtfoo.txt