美文网首页
轻量级运维利器:pssh

轻量级运维利器:pssh

作者: w也不知道 | 来源:发表于2018-04-18 15:01 被阅读0次

  pssh命令是一个python编写可以在多台服务器上执行命令的工具,同时文件的并行复制,杀掉远程主机上的进程等。要使用pssh工具包,必须配置本地主机和被管理的远程主机之间ssh单向的免秘钥认证。

一、安装pssh工具包(ssh免秘钥认证不做操作说明)

# 安装好 epel 源
yum install -y epel-release
# 安装 pssh 工具包
yum install -y pssh  

安装完成后的 pssh 工具包包含以下5个命令

  • pssh:在多台远程主机上并行执行命令
  • pscp:把文件并行复制到多台远程主机上
  • pslurp:把文件从多台远程主机上复制到本地
  • pnuke:在多台远程主机上并行杀掉某一进程(类似于killall命令)
  • prsync:使用rsync协议将文件从本地主机同步到多台远程主机上
# pssh 命令常用参数
-h host_file :host_file 为远程主机列表文件,内容格式如下:test@192.168.1.1:2222
-H host_info :操作单个远程主机
-o :将输出的内容保持到指定文件中
-O :指定ssh参数的具体配置,具体参照ssh服务的配置文件,例如:pssh -O StrictHostKeyChecking=no
-P :显示命令结果
-i :显示命令执行的标准输出和错误输出

二、实际应用

  1. 操作单台远程主机执行命令
pssh -H root@node2 -P date
pssh -H root@node2 -i date
  1. 操作多台远程主机执行命令
# host 文件内容
root@node2:22
root@node3:22

# pssh 命令
pssh -h host -P date
  1. 在远程主机上使用sudo权限安装软件
pssh -P -h host "sudo " yum install -y install nginx" "
  1. pscp 和 pslurp 应用实例
# 同步单个文件到多台远程主机
pscp -h host /etc/hosts /tmp
# 同步目录到多台远程主机
pscp -h host -r /usr/src/sc  /tmp 
# 同步远程文件到本地,同步完成后会在本地创建以远程主机名命令的目录
pslurp -h host -L /tmp/remote /etc/hosts hosts

相关文章

网友评论

      本文标题:轻量级运维利器:pssh

      本文链接:https://www.haomeiwen.com/subject/thkvkftx.html