我们平时管理几台服务器,我们可以用 ssh 这个简单高效的管理工具远程登陆进行管理,让我们的工作变的简便,快捷,然而,如果要管理成百上千台呢?即使拥有 ssh 这种简便快捷的工具,也会让人大感 头疼,那么有没有一款可以同时管理 N 台服务器的管理工具呢?
答案当然是肯定的,接下来我们就介绍一款与 ssh 有着近亲血脉的批量管理工具
PSSH
PSSH 是一个可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中比较出色的一款管理软件。
*注意:要使用 PSSH 时,必须在各个服务器上配置好密钥认证访问!!!
接下来我们就来部署这个环境,一起来体验一下吧!!!
下载安装:
wget http://www.theether.org/pssh/pssh-1.4.3.tar.gz ; cd pssh-1.4.3
python setup.py install
安装完成,很简单吧?
如果 python setup.py install 出现以下错误
请不要担心,这个错误是由于 Python 没有安装 setuptools 这个模块,这是一个第三方模块,只要下载安装即可
若出现如图错误,只要将 --no-check-certificate 加上即可,如下
wget http://pypi.python.org/packages/source/s/setuptools/setuptools-0.6c11.tar.gz --no-check-certificate
tar zxvf setuptools-0.6c11.tar.gz
cd setuptools-0.6c11
python setup.py build
python setup.py install
然后再跳回到 pssh-1.4.3 执行 python setup.py install ,完成
环境部署完成,接下来我们就要学习怎样使用了
pssh 包安装5个实用程序:
pssh 在多个主机上并行地运行命令。
pscp 把文件并行地复制到多个主机上。
prsync 通过rsync 协议把文件高效地并行复制到多个主机上。
pslurp 把文件并行地从多个远程主机复制到中心主机上。
pnuke 并行地在多个远程主机上杀死进程
PSSH相关参数:
pssh在多个主机上并行地运行命令
-h 执行命令的远程主机列表,文件内容格式[user@]host[:port]
如 test@172.16.10.10:229
-H 执行命令主机,主机格式 user@ip:port
-l 远程机器的用户名
-p 一次最大允许多少连接
-P 执行时输出执行信息
-o 输出内容重定向到一个文件
-e 执行错误重定向到一个文件
-t 设置命令执行超时时间
-A 提示输入密码并且把密码传递给ssh(如果私钥也有密码也用这个参数)
-O 设置ssh一些选项
-x 设置ssh额外的一些参数,可以多个,不同参数间空格分开
-X 同-x,但是只能设置一个参数
-i 显示标准输出和标准错误在每台host执行完毕后
远程执行:
pssh -i -h list.txt ‘df -h’
本文转自 菜鸟的征程 51CTO博客,原文链接:http://blog.51cto.com/songqinglong/1693236