pssh远程套件工具
pssh远程套件工具
案例5:pssh远程套件工具
5.1问题
本案例要求使用pssh套件工具并发远程其他主机,具体要求如下:
使用密码批量、多并发远程其他主机
使用密钥批量、多并发远程其他主机
批量、多并发拷贝数据到其他主机
批量、多并发从其他主机下载数据到本机
批量、多并发杀死其他主机的进程
5.2方案
准备实验所需的虚拟机环境,实验环境所需要的主机及对应的IP设置列表如表-5所示,正确配置IP地址、主机名称,并且为每台主机配置YUM源。

表-5主机列表
安装pssh后会提供如下命令:
/usr/bin/pnuke
/usr/bin/prsync
/usr/bin/pscp.pssh
/usr/bin/pslurp
/usr/bin/pssh
5.3步骤
实现此案例需要按照如下步骤进行。
步骤一:准备工作
1)安装软件包
[root@proxy~]#rpm -ivh pssh-2.3.1-5.el7.noarch.rpm
2)修改/etc/hosts本地解析文件
cat/etc/hosts
……
192.168.2.100 host1
192.168.2.200 host2
192.168.4.100 host3
……
3)创建主机列表文件
[root@proxy~]#cat /root/host.txt//每行一个用户名、IP或域名
……
root@host1
host2
host3
……
步骤二:使用密码批量、多并发远程其他主机
1)语法格式
[root@proxy~]#man pssh
//通过man帮助查看工具选项的作用
pssh提供并发远程连接功能
-A使用密码远程其他主机(默认使用密钥)
-i将输出显示在屏幕
-H设置需要连接的主机
-h设置主机列表文件
-p设置并发数量
-t设置超时时间
-o dir设置标准输出信息保存的目录
-e dir设置错误输出信息保存的目录
-x传递参数给ssh
2)使用密码远程多台主机执行命令,屏幕显示标准和错误输出信息
[root@proxy~]#pssh -i -A -H 'host1 host2 host3' \
>-x '-o StrictHostKeyChecking=no' echo hello
3)使用密码远程多台主机执行命令,不显示标准和错误输出信息,通过读取host.txt读取主机信息
[root@proxy~]#pssh -A -h host.txt\
>-x '-o StrictHostKeyChecking=no' echo hello
步骤三:使用密钥批量、多并发远程其他主机
1)生成密钥并发送密钥到其他主机
[root@proxy~]#ssh-keygen -N '' -f /root/.ssh/id_rsa
//非交互生成密钥文件
[root@proxy~]#ssh-copy-id -i /root/.ssh/id_rsa.pub host1
[root@proxy~]#ssh-copy-id -i /root/.ssh/id_rsa.pub host2
[root@proxy~]#ssh-copy-id -i /root/.ssh/id_rsa.pub host3
2)使用密钥远程其他主机
[root@proxy~]#pssh -h host.txt -x '-o StrictHostKeyChecking=no' echo hello
3)使用密钥远程其他主机,将标准输出信息写入到/tmp目录
[root@proxy~]#pssh -h host.txt -o /tmp/ -x '-o StrictHostKeyChecking=no' echo hello
步骤四:批量、多并发拷贝数据到其他主机
1)语法格式
[root@proxy~]#man pscp.pssh//通过man帮助查看工具选项的作用
pscp.pssh提供并发拷贝文件功能
-r递归拷贝目录
其他选项基本与pssh一致
2)将本地的etc.tar.gz拷贝到远程主机的根目录下
[root@proxy~]#pscp.pssh -h host.txt\
>-x '-o StrictHostKeyChecking=no' etc.tar.gz/
3)递归将本地的/etc目录拷贝到远程主机的/tmp目录下
[root@proxy~]#pscp.pssh -r -h host.txt\
>-x '-o StrictHostKeyChecking=no' /etc/tmp
步骤五:批量、多并发从其他主机下载数据到本机
1)语法格式
[root@proxy~]#man pslurp//通过man帮助查看工具选项的作用
pslurp提供远程下载功能
选项与pscp.pssh基本一致
2)将远程主机的/etc/目录,拷贝到当前目录下,存放在对
应IP下的tmp目录
[root@proxy~]#pslurp -r -h host.txt -x '-o
StrictHostKeyChecking=no' /etc/tmp
3)将远程主机的/etc/目录,拷贝到media下,
存放在对应IP下的tmp目录
[root@proxy~]#pslurp -r -h host.txt-x '-o
StrictHostKeyChecking=no' \
>-L /media/etc/tmp
步骤六:批量、多并发杀死其他主机的进程
1)语法格式
[root@proxy~]#man pnuke
//通过man帮助查看工具选项的作用
pnuke提供远程杀死进程的功能
选项与pssh基本一致
2)将远程主机上的sleep进程杀死
[root@proxy~]#pnuke -h host.txt -x '-o StrictHostKeyChecking=no' sleep
3)将远程主机上的test相关脚本都杀死(如:test1,testtt,test2等等)
[root@proxy~]#pnuke -h host.txt -x '-o StrictHostKeyChecking=no' test
4)将远程主机上的test.sh脚本杀死
[root@proxy~]#pnuke -h host.txt -x '-o StrictHostKeyChecking=no' test.sh
pssh远程套件工具的更多相关文章
- 小型自动化运维工具pssh和传输工具rsync
一.简单介绍 1.pssh全称是parallel-ssh,基于Python编写的并发在多台服务器上批量执行命令的工具.包括pssh,pscp,prsync,pnuke和pslurp.该项目包括pssh ...
- Linux系统管理远程登录工具PUTTY
PuTTY 简介 PuTTY是一个Telnet.SSH.rlogin.纯TCP以及串行接口连线软件.较早的版本仅支持Windows平台,在最近的版本中开始支持各类Unix平台,并打算移植 ...
- linux远程管理工具
一.常见的远程管理控制方式主要有以下几种 ①RDP(remote desktop protocol)协议 远程桌面协议,我们常用的windows操作系统就是的远程桌面管理就是基于该协议的. ②teln ...
- Linux网络管理——远程登录工具
4. 远程登录工具 .note-content {font-family: "Helvetica Neue",Arial,"Hiragino Sans GB", ...
- curl远程传输工具
/** * curl远程传输工具 */ public function post_curl($url,$body,$header,$type='POST'){ $ch = curl_init(); c ...
- xshell远程登录工具的星号密码查看方法
当我们在使用ftp,或者xshell等远程登录工具的时候,连接的密码是用星号*处理的,无法查看到,该如何查看到原始的密码呢? 推荐一款星号密码查看器,可以查看一些软件的带星号的密码,非常好用. 下载地 ...
- Linux远程批量工具mooon_ssh和mooon_upload使用示例
目录 目录 1 1. 前言 1 2. 批量执行命令工具:mooon_ssh 2 3. 批量上传文件工具:mooon_upload 2 4. 使用示例 3 4.1. 使用示例1:上传/etc/hosts ...
- 强大的安卓手机远程管理工具 – Droidjack
免责声明:本站提供安全工具.程序(方法)可能带有攻击性,仅供安全研究与教学之用,风险自负! Droidjack是一款针对安卓手机远程管理工具,你可以利用它在PC上对手机进行远程操控,不仅功能强大,使用 ...
- Mac 10.12安装Windows远程桌面工具Microsoft Remote Desktop
说明:之前Office自带的Windows远程桌面工具虽然简便,但是保存的服务器列表有限.而这个微软推出的自家工具可以完美解决这些问题. 下载: (链接:https://pan.baidu.com/s ...
随机推荐
- 修改webserver站点用户组权限
例如webserver站点目录为webtest 搭建nginxwebserver服务器的时候,默认的用户和用户组权限为nginx:nginx, 即nginx.conf 和php-frm.conf 中默 ...
- JVM笔记-Java技术体系与JVM概述
1. 简述 Java 不仅仅是一门编程语言,还是一个由一系列计算机软件和规范组成的技术体系. Java 的广告词为 "一次编写,到处运行",之所以能够做到"跨平台&quo ...
- VsCode从零开始配置一个属于自己的Vue开发环境
vscode vue VsCode算是比较热门的一个代码编辑器了,全名Visual Studio Code下载地址:点我去下载插件众多,功能齐全,我在平常开发过程中都是用的它,整理了些自认好用的插件, ...
- JavaScript中的内存释放
C.C++语言需要手动管理内存的分配与释放(常用方法:malloc(), calloc(), realloc()和free()等).而JavaScript与Java.C#相似,内置了垃圾回收器,能自动 ...
- linux redis安装 5.0.2
参看:https://www.cnblogs.com/limit1/p/9045183.html 1.获取redis资源 wget http://download.redis.io/releases/ ...
- WSGI标准、MVC和MTC框架
WSGI服务: wsgiref模块其实就是将整个请求信息给封装了起来,就不需要你自己处理了,假如它将所有请求信息封装成了一个叫做request的对象,那么你直接request.path就能获取到用户这 ...
- VS2019 C++动态链接库的创建使用(4) - C语言客户端
前面提到过C++具有函数重载功能,所以引出的函数名会有变化,即名称改编,如果是C语言编写的客户端则无法正确识别. 处理方法: ①只需在宏定义中间增加 extern "C",但这种使 ...
- Mycat的简介及安装
Mycat简介: 1.1Mycat含义 简单的说,MyCAT就是: 一个彻底开源的,面向企业应用开发的“大数据库集群” 支持事务.ACID.可以替代Mysql的加强版数据库 一个可以视为“Mysql” ...
- MySQL笔记(7)-- 事务和实现
一.背景 前面有说到InnoDB是事务型引擎,那什么是事务?事务的特性是什么?它所对应的隔离级别是哪些?是怎么实现的?下面来详细讨论下. 二.事务的理解 事务就是一组原子性的SQL查询,或者说一个独立 ...
- [剑指offer]6.从尾到头打印链表+18.删除链表节点
链表 6.从尾到头打印链表 输入一个链表的头节点,从尾到头反过来返回每个节点的值(用数组返回). 方法一 迭代 创建空列表res,将链表值head.val依次存进res,返回翻转后的res 代码 cl ...