运维自动化轻量级工具pssh

1pssh介绍

pssh是python写的可以并发在多台机器上批量执行命令的工具,它的用法可以媲美ansible的一些简单用法,执行起来速度比ansible快它支持文件并行复制,远程命令执行,杀掉远程主机上的进程等等。杀手锏是文件并行复制,,当进行再远程主机批量上传下载的时候,最好使用它。

2pssh的使用

在使用pssh之前,必须要保证管理主机和本地主机进行过密钥的认证,或者是在进行批量时,没有做过密钥认证,但是必须保证被管理的多台主机的密码相同。关于如何做密钥认证,这里就不多说了,可以自行百度。

2.1安装

官网地址:https://code.google.com/archive/p/parallel-ssh/downloads(需要能打开谷歌)

或者是yum 来安装

wget https://storage.googleapis.com/google-code-archive-downloads/v2/code.google.com/parallel-ssh/pssh-2.3.1.tar.gz
tar -zxvf pssh-2.3.1.tar.gz
cd pssh-2.3.1
python setup.py install
或者
yum install -y pssh

使用yum安装后,只能使用pssh,但是编译安装后会包括其他命令也安装了(pscp  prsync  pnuke  pslurp)

pssh:在远程多台主机上并行运行命令

pscp :把文件并行复制到多台远程主机上

prsync:使用rsync协议本地文件同步到远程多台主机上。

pnuke:在远程多台主机上并行killall某一进程

pslurp:把文件从远程多台主机上复制到本地主机上

2.2 pssh常用参数

 1 pssh  --help
 2
 3 Usage: pssh [OPTIONS] command [...]
 4
 5 Options:
 6   --version             show program‘s version number and exit
 7   --help                show this help message and exit
 8   -h HOST_FILE, --hosts=HOST_FILE
 9                         hosts file (each line "[[email protected]]host[:port]")
10   -H HOST_STRING, --host=HOST_STRING
11                         additional host entries ("[[email protected]]host[:port]")
12   -l USER, --user=USER  username (OPTIONAL)
13   -p PAR, --par=PAR     max number of parallel threads (OPTIONAL)
14   -o OUTDIR, --outdir=OUTDIR
15                         output directory for stdout files (OPTIONAL)
16   -e ERRDIR, --errdir=ERRDIR
17                         output directory for stderr files (OPTIONAL)
18   -t TIMEOUT, --timeout=TIMEOUT
19                         timeout (secs) (0 = no timeout) per host (OPTIONAL)
20   -O OPTION, --option=OPTION
21                         SSH option (OPTIONAL)
22   -v, --verbose         turn on warning and diagnostic messages (OPTIONAL)
23   -A, --askpass         Ask for a password (OPTIONAL)
24   -x ARGS, --extra-args=ARGS
25                         Extra command-line arguments, with processing for
26                         spaces, quotes, and backslashes
27   -X ARG, --extra-arg=ARG
28                         Extra command-line argument
29   -i, --inline          inline aggregated output and error for each server
30   --inline-stdout       inline standard output for each server
31   -I, --send-input      read from standard input and send as input to ssh
32   -P, --print           print output as we get it
33
34 Example: pssh -h hosts.txt -l irb2 -o /tmp/foo uptime

具体常用介绍:

-h   HOST_FILE   后边跟远程主机列表(ip)

-H   HOST_STRING   后边跟远程主机名或者ip地址

-l   USER  指定远程主机的用户名

-p  PAR   指定pssh最大的并行线程数。

-o  将输出的内容重定向到一个指定的文件中

-O 指定ssh参数的具体配置

-e  将执行错误重定向到一个指定的文件中

-t  设定命令执行超时时间

-x  传递ssh命令的一些参数

-i  在远程主机上执行命令完成后显示标准输出和标准错误

-P  在执行远程命令时,输出执行结果

用法实例:

pssh -P  -i   -h  sz_vpc.txt  "w" 

3pscp拷贝文件到远程主机

pscp  -h  ip.txt /etc/wenjian.txt   /tmp/

4pnuke杀掉某一进程

这个命令类似yu  killall命令

pnuke  -h  iplist.txt   httpd

上边的意思是在远程主机上批量关闭httpd服务

能通过killall关闭的服务,都可以通过pnuke来批量完成

5 pslurp 远程主机拷贝文件到本地主机

pslurp -h iplist.txt -L /home/ /hose/wenjian/yuanc.conf open.conf

上边是,将所有远程主机/hose/wenjian/yuanc.conf复制到本地主机/home/目录下,并且重新命名为open.conf  -L 来指定本地文件路径

下面这个是拷贝目录

 pslurp -h iplist.txt -r -L /home/ /hose/wenjian/ open

ps:建议分发文件,执行命令,批量杀死进程,使用pssh,pscp,pnuke,速度很快的

时间: 2024-10-04 08:55:41

运维自动化轻量级工具pssh的相关文章

<zz>Ansible 运维自动化 ( 配置管理工具 )

from http://www.cnblogs.com/wangxiaoqiangs/p/5685239.html 简介: 当下有许多的运维自动化工具( 配置管理 ),例如:Ansible.SaltStack.Puppet.Fabric 等. Ansible 一种集成 IT 系统的配置管理.应用部署.执行特定任务的开源平台,是 AnsibleWorks 公司名下的项目,该公司由 Cobbler 及 Func 的作者于 2012 年创建成立. Ansible 基于 Python 语言实现,由 Pa

运维自动化之salt笔记

1:saltstack的基本介绍 2:salt的安装 1:服务端1:安装2:配置文件3:运行4:注意事项2:客户端1:安装2:配置文件3:运行4:注意事项 3:salt的使用: 1:基础知识1:targeting2:nodegroup3:grains4:pillar2:状态管理1:state1:state语法2:state的逻辑关系2:highstate3:salt schedule3:实时管理1:cmd.run2:module4:其他1:无master2:peer3:runner4:react

运维自动化工具Cobbler之——安装实践

运维自动化工具--Cobbler实践 第1章 About Cobbler 1.1 Cobbler Introduction Cobbler是一个Linux服务器安装的服务,可以通过网络启动(PXE)的方式来快速安装.重装物理服务器和虚拟机,同时还可以管理DHCP,DNS等. Cobbler可以使用命令行方式管理,也提供了基于Web的界面管理工具(cobbler-web),还提供了API接口,可以方便二次开发使用.Cobbler是较早前的kickstart的升级版,优点是比较容易配置,还自带web

运维自动化之ansible

项目场景: 公司计划在年底做一次大型市场促销活动,全面冲刺下交易额,为明年的上市做准备.公司要求各业务组对年底大促做准备,运维部要求所有业务容量进行三倍的扩容,并搭建出多套环境可以共开发和测试人员做测试. 技术说明: ansible聚集以上部署和命令执行于一身,能够完整轻易的实现应用部署和批量命令功能,适用于主机数量中型规模,再大的规模用puppet. ansible是基于 paramiko 开发的,并且基于模块化工作,本身没有批量部署的能力.真正具有批量部署的是ansible所运行的模块,an

运维自动化好帮手:ansible软件入门篇

一:关于自动化我们要知道的 1.自动化是什么? IT运维自动化是一组将静态的设备结构转化为根据IT服务需求动态弹性响应的策略,目的就是实现IT运维的质量,降低成本.可以说自动化运维一定是IT运维高层面的重要属性之一. 2.为什么要使用自动化技术? 当公司规模扩大,从初期的几台服务器发展到庞大的数据中心时,自然而然的单靠人工就无法满足在技术.业务.管理等方面的要求,那么标准化.自动化.架构优化.过程优化等降低IT服务成本的因素越来越被人们所重视. 3.自动化的目的是什么? 自动化作为其重要属性之一

第19章,运维自动化之系统安装

更多内容请点击: Linux学习从入门到打死也不放弃,完全笔记整理(持续更新,求收藏,求点赞~~~~) http://blog.51cto.com/13683480/2095439 本章内容: 系统安装过程 配置anaconda 自动化安装系统 制作引导光盘和U盘 DHCP服务 PXE安装系统 cobbler企业级应用 运维自动化发展历程及技术应用: 全人工阶段----> 工具化阶段----> 平台化阶段----> 自驱动阶段 无流程规范----> 制定规范----> 完善规

运维自动化之 - ansible 批量主机管理

2000 - 2016 年,维护的小型机.linux刚开始的2台增加到上千台,手工检查.日常版本升级需要管理太多设备,必须通过运维自动化实现 特别是版本升级,需要到同类机器部署代码.起停设备,必须在一台主控机上完成代码分发.远程服务起停.服务验证验证 2016年开始使用 pssh ,后改用 ansible ,ansible 配置如下 一.配置ssh免密码登录 #cd /root/.ssh 免交互生成密钥 #echo -e "\n" |ssh-keygen -t rsa -N "

[运维] 第三篇:漫谈数据中心运维自动化

运维自动化是从2010年以后起来的一个运维需求,10年之前,运维项目主要集中在监控和ITIL流程上,当时也有BMC Control-M等产品在推,但是客户接受程度和影响力不如监控和流程.10年之后,运维自动化提上日程,建行开始招运维自动化的标,IBM.BMC.HP都纷纷参与,测了三轮,最后HP opsware中标,只能说一句厉害!工商银行也在自己组织服务商做自己特色的运维自动化平台,做了3.4年,基本成型,服务商也做出了自己的运维自动化产品,正式推向市场.当时运维自动化的主要功能是五项:自动化巡

运维自动化之使用Cobbler自动化部署Linux操作系统

1.Cobbler是什么? Cobbler是一个Linux安装服务器,能够快速设置好网络安装环境.它实现了许多与Linux相关的任务的自动化和组合,因此你在部署新的(操作)系统或更改已经存在的操作系统时不需要在繁多的命令和应用程序之间来回切换.Cobbler能帮助(用户.管理者)置备和管理DNS.DHCP.软件包更新.电源管理.配置管理以及更多. "Cobbler is a Linux installation server that allows for rapid setup of netw