首页 Linux网维 并行分布式运维工具pdsh-2.26.tar.bz2下载

并行分布式运维工具pdsh-2.26.tar.bz2下载

pdsh的全称是parallel distributed shell,与pssh类似,pdsh可并行执行对远程目标主机的操作,在有批量执行命令或分发任务的运维需求时,使用这个命令可…

pdsh的全称是parallel distributed shell,与pssh类似,pdsh可并行执行对远程目标主机的操作,在有批量执行命令或分发任务的运维需求时,使用这个命令可达到事半功倍的效果同时,pdsh还支持交互模式,当要执行的命令不确定时,可直接进入pdsh命令行,非常方便。

一、 pdsh应用场景pdsh的应用场景基本上与pssh相同,都用于大批量服务器的配置、部署、文件复制等运维操作在使用pdsh时,仍需要配置本地主机和远程主机间的单向ssh信任另外,pdsh还附带了pdcp命令,此命令可以将本地文件批量复制到远程的多台主机上,这在大规模的文件分发环境下是非常有用的。

pdsh可以通过多种方式在远程主机上运行命令,默认是rsh方式,另外也支持ssh、mrsh、qsh、mqsh、krb4、xcpu等多种rcmd模块,这个可以在运行命令时通过参数指定二、pdsh的安装与语法。

1、pdsh的安装过程pdsh的安装非常简单,有rpm包和源码包两种方式,大家可根据自己的喜好选择适合自己的安装方式可以在http://code.google.com/p/pdsh/ 下载最新的源码包进行编译安装,目前最新版本为pdsh-2.29,这里下载的源码包为pdsh-2.29.tar.bz2。

编译安装过程如下:[root@server ~]# tar jxvf pdsh-2.29.tar.bz2[root@server ~]# cd pdsh-2.29[root@server pdsh-2.29]#./configure –with-ssh –with-rsh –with-mrsh –with-mqshell  \

> –with-qshell  –with-dshgroups –with-machines=/etc/pdsh/machines[root@server pdsh-2.29]# make[root@server pdsh-2.29]# make install

在执行configure阶段,“–with-ssh”参数表示启用ssh模块,其他参数都有类似的含义,而“–with-dshgroups”表示启用主机组支持,启用此参数后,就可以将一组主机列表写入一个文件并放到~/.dsh/group或/etc/dsh/group目录下,然后通过pdsh的“-g”参数进行调用。

最后的参数“–with-machines”是“–with-dshgroups”参数的扩展,通过将所有要管理的主机列表都写入指定的/etc/pdsh/machines文件中,接着通过pdsh的“-a”参数调用,最终完成所有主机的便捷管理。

完成安装后,可以通过“pdsh –V”查看pdsh的版本号以及可使用的模块信息,操作如下:[opsuser@server ~]$ pdsh -Vpdsh-2.29rcmd modules: ssh,rsh,exec (default: rsh)

misc modules: machines,dshgroup此外,也可以通过“pdsh -L”来显示当前所有加载的模块信息在pdsh安装完成后,还有一个可用的工具pdcp,后面将详细讲述pdsh和pdcp两个命令的用法。

2、pdsh的语法介绍安装pdsh完成后,通过执行“pdsh –h”和“pdcp –h”即可得到两个命令的完整用法,由于两个命令的参数大同小异,因此这里以pdsh命令为主介绍一些常用的参数及含义下表是pdsh常用的参数及其含义。

-w host,host 指定远程主机,可以指定多个,每个主机用逗号隔开,host可以是主机名也可以是IP地址此参数非常灵活,常用的形式有:pdsh -w ssh:user001,ssh:user002,ssh:user003 “date”。

此命令用来查看user001、user002、user003主机上的时间,其中ssh表示在远程主机上执行命令的形式,默认是rshpdsh -w ssh:user00[1-10] “date”此命令用于在user001到user0010上执行date命令。

pdsh -w ssh:user0[10-31],/1$/ “uptime”此命令在选择远程主机时使用了正则表达式,表示在user010到user031中选择以1结尾的主机名,即在user011、user021、user031上执行uptime命令

-R 指定使用rcmd的模块名,默认是rsh如果要选择ssh,可以通过如下方式指定:pdsh -R ssh -w user00[1-10] “date”-l 指定在远程主机上使用的用户名称例如:pdsh -R ssh -l opsuser -w user00[1-9] “date”。

-x 此参数用来排除某些或某个主机,例如:pdsh -R ssh -l opsuser -w user00[1-9] -x user005,user007 “date”-t 指定连接远程主机的超时时间,以秒为单位,默认是10秒,可以通过此参数修改默认值,例如:pdsh -R ssh -w slave000[1-9]  -t 15  “date”

-u 设置远程命令执行的超时时间,以秒为单位,以ssh方式连接时,默认时间为无限-f 设置同时连接到远程主机的个数-N 此参数用来关闭远程主机所返回结果中的主机名显示-a 通过此参数可以指定所有的远程主机,设置此参数后,pdsh默认会查看/etc/machines文件中的主机列表,要改变此路径,在编译pdsh时通过“–with-machines”参数指定即可

-g 此参数用来指定一组远程主机,在编译pdsh时可以通过“–with-dshgroups”参数来激活此选项,默认可以将一组主机列表写入一个文件中并放到本地主机的~/.dsh/group或/etc/dsh/group目录下,这样就可以通过“-g”参数调用了。

例如:pdsh -R ssh -g userhosts “date”,其中“userhosts”是一个主机列表文件,可以将此文件放在~/.dsh/group或/etc/dsh/group目录下-X 此参数用来排除指定组内的所有主机,经常与“-a”参数一起使用。

例如:pdsh -R ssh -a -X userhosts  “date”-q 此参数可以列出pdsh执行时的一些配置信息-V 此参数可以查看软件的版本信息以及可用的模块信息

免责声明:文章内容不代表本站立场,本站不对其内容的真实性、完整性、准确性给予任何担保、暗示和承诺,仅供读者参考,文章版权归原作者所有。如本文内容影响到您的合法权益(内容、图片等),请及时联系本站,我们会及时删除处理。

作者: 3182235786a

为您推荐

linux文件命令

linux文件命令

在 Linux 中,我们可以使用 `with open()` 语句和 `write()` 函数来写入文件。以下是一个简单...
linux的命令

linux的命令

以下是一个简单的 Linux 命令示例,该命令将显示当前日期和时间: “`c #include <st...
linux 命令

linux 命令

由于 Linux 命令是由 C 语言编写的,因此下面是一个简单的用中文编写的 Linux 命令示例,它将输出“Hello...
linux命令tar

linux命令tar

这个问题看起来有些模糊,我不确定您是想了解如何在 Linux 系统中使用 tar 命令,还是如何编写一个名为 tar 的...
linux压缩命令

linux压缩命令

Linux压缩命令:高效管理文件和目录 Linux操作系统提供了一系列强大的压缩命令,使您能够高效地管理文件和目录。无论...

发表回复

返回顶部