并行管理的方式有很多种:

  • 命令行 一般是for循环
  • 脚本 一般是expect+ssh等自编辑脚本
  • 工具 pssh,pdsh,mussh,cexec等
  • 平台 ansible,pupet等

本篇博客介绍pdsh工具的安装和使用

1. pdsh安装

下载pdsh最新版:pdsh-2.26.tar.bz2,下载地址:https://sourceforge.net/projects/pdsh/

下载之后,执行命令:tar -jxvf pdsh-2.26.tar.bz2 -C /tmp,解压至/tmp/pdsh-2.26

执行命令:cd /tmp/pdsh-2.26/;进入目录

执行configure命令,如下:

./configure \
--prefix=/usr/local/globle/softs/tools/pdsh/2.26/ \
--with-timeout=60 \
--with-ssh \
--with-exec \
--with-nodeupdown \
--with-readline \
--with-rcmd-rank-list=ssh

解释如下:

选项 解释
--prefix 指定安装目录
--with-timeout=60 指定pdsh默认执行超时时间
--with-ssh 编译ssh模块
--with-exec 编译exec模块
--with-nodeupdown 编译节点宕机功能
--with-readline 编译readline功能
--with-rcmd-rank-list 指定默认模式为ssh
--with-machines 指定默认主机列表

【错误提示】:configure: error: Cannot find libreadline!

【解决方式】:执行命令:yum -y install readline-devel

./configure执行通过之后,执行make && make install,进行编译和安装。完成之后,将命令路径添加至环境变量

2. pdsh常规使用

2.1 pdsh

在上过过程中,已经通过--with-machines,指定可以使用/usr/local/globle/softs/tools/pdsh/2.26/machines来定义默认的主机列表

内容如下:

node11
node12
node13
node14
node15

控制台执行:pdsh -a hostname



通过执行:pdsh -a date,发现各节点时间不同,且与时间服务器不同,执行pdsh -a ntpdate 192.168.80.8进行同步

在《NTP服务部署和测试.md》(博客园链接:https://www.cnblogs.com/liwanliangblog/p/9194004.html)中介绍说,同步各个节点之间的时间,可以通过定时任务的方式。

2.2 pdcp

pdcp用于把文件拷贝。指定主机的方式和pdsh一样。使用方法如下图所示:



更加复杂的用法, 使用pdcp -h获取帮助

并行管理工具——pdsh的更多相关文章

  1. Linux海王 之 pdsh (并行管理工具)

    文章目录 安装 使用 示例 -w 指定主机 -l 指定用户 -g指定用户组 主机列表 交互式界面 pdsh是一个多线程远程shell客户机,它在多个远程主机上并行执行命令 pdsh可以使用几种不同的远 ...

  2. 小团队开发管理工具:gitlab+redmine+testlink+jenkins

    由于工作需要,需要为团队搭建一个高效可用的开发管理平台.现在可用的开发管理工具很多开源的.商业的,网上也有很多博客和文章.经过2周的学习比较,再结合自己的项目特点,最后选定工具集:gitlab+red ...

  3. iOS核心笔记—源代码管理工具-SVN

    源代码管理工具-SVN 一. 源代码管理工具概述 1. 源代码管理工具的作用? > 能追踪一个项目从诞生一直到定案的过程 > 记录一个项目的所有内容变化,无限制返回 > 查看特定版本 ...

  4. node的包管理工具:yarn和npm

    arn是Facebook发布的一款依赖管理工具,它比npm更快.更高效. NPM是随同NodeJS一起安装的包管理工具,能解决NodeJS代码部署上的很多问题. 一.yarn官方网站: 英文官网:ht ...

  5. Linux下批量管理工具pssh安装和使用

    Linux下批量管理工具pssh安装和使用 pssh工具包 安装:yum -y install pssh pssh:在多个主机上并行地运行命令 pscp:把文件并行地复制到多个主机上 prsync:通 ...

  6. Linux磁盘概念及其管理工具fdisk

    Linux磁盘概念及其管理工具fdisk [日期:2016-08-27] 来源:Linux社区  作者:chawan [字体:大 中 小]   引言:冯诺依曼体系中的数据存储器就是我们常说的磁盘或硬盘 ...

  7. yarn的学习-1-包管理工具

    https://yarn.bootcss.com 使用yarn的原因: 1.速度超快 Yarn 缓存了每个下载过的包,所以再次使用时无需重复下载. 同时利用并行下载以最大化资源利用率,因此安装速度更快 ...

  8. python版本管理工具pyenv和包管理工具pipenv

    一.pyenv版本管理工具 pyenv是一个python版本管理工具,可以实现轻松切换多个python版本 它可根据每个用户更改全局python版本,也可以为每个项目指定python版本,还可以管理v ...

  9. Golang包管理工具glide简介

    Golang包管理工具glide简介 前言 Golang是一个十分有趣,简洁而有力的开发语言,用来开发并发/并行程序是一件很愉快的事情.在这里我感受到了其中一些好处: 没有少了许多代码格式风格的争论, ...

随机推荐

  1. Python创建空DataFrame及添加行数据

    # 创建空DataFrame df = pd.DataFrame(columns = ['YJML','EJML','SJML','WZLB','GGXHPZ','CGMS']) # 插入数据(忽略索 ...

  2. python第六十八天--第十二周作业

    主题: 需求: 用户角色,讲师\学员, 用户登陆后根据角色不同,能做的事情不同,分别如下讲师视图 管理班级,可创建班级,根据学员qq号把学员加入班级 可创建指定班级的上课纪录,注意一节上课纪录对应多条 ...

  3. AD域自定义属性《完整》

    1.安装Active Directory 架构,下载:adminpak.msi安装. 2.以管理员运行cmd,执行:regsvr32 schmmgmt.dll(该命令将在计算机上注册“schmmgmt ...

  4. js判断元素是否是disable状态

    js判断元素是否是disable状态 jquery判断元素状态用$(select).prop(属性值) == true js判断button是否可以点击: //判断button是否为不可点击状态 if ...

  5. 使用Jenkins+gitlab自动化构建时排除分支

    我们的目的是gitlab上的代码有变动时会自动向Jenkins发送web钩子请求,触发指定的动作: 但默认情况下,所有分支(如测试环境和预生产)的代码有变动时都会触发,此时可以在Jenkins的项目设 ...

  6. vue_02 开发过程中的问题记载

    1.package.json 运行 npm start 执行的是npm run  dev 实际上执行的是“dev” : node build/dev-server.js这一条 跑的是build目录下d ...

  7. Reflection 反射

    版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/A__17/article/details/30571923 1.概念:所谓的反射.能够理解为在运行时 ...

  8. CF848C:Goodbye Souvenir(CDQ分治)

    Description 给定长度为$n$的数组, 定义数字$X$在$[l,r]$内的值为数字$X$在$[l,r]$内最后一次出现位置的下标减去第一次出现位置的下标给定$m$次询问, 每次询问有三个整数 ...

  9. 2018 湖南网络比赛题 HDU - 6286 (容斥)

    题意:不说了. 更加偏向于数学不好的小可爱来理解的. 这篇博客更加偏重于容斥的讲解.用最直观的数学方法介绍这个题. 思路: 在a<=x<=b. c<=y<=d 中满足  x*y ...

  10. Arduino IDE for ESP8266教程(四)网页控制灯 简单页面

    修改ssid和passwd,将程序烧写到8266上,等待串口返回连接成功的消息,连接成功之后可以看到返回有一个ip地址,使用浏览器方位这个ip地址就可以看到这个消息: 连接路由器后,返回IP地址 19 ...