简介

服务器多了,有一个问题就是如何批量快速操作多台服务器,在网上搜到了PSSH工具,试用了一下发现挺好用,推荐给大家。

pssh是一个python编写的可以在多台服务器上执行命令的轻量级管理工具,同时支持拷贝文件,python版本大于2.4即可,项目地址:parallel-ssh。

安装

$ wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz

$ tar -xzvf pssh-2.3..tar.gz

$ cd pssh-2.3.

$ python setup.py install

PSSH相关参数

  • -h 执行命令的远程主机列表文件,文件内容格式[user@]host[:port]

    • 如 test@127.0.0.2:229
  • -H 执行命令主机,主机格式 user@ip:port
  • -l 远程机器的用户名
  • -p 一次最大允许多少连接
  • -P 执行时输出执行信息
  • -o 输出内容重定向到一个文件
  • -e 执行错误重定向到一个文件
  • -t 设置命令执行超时时间
  • -A 提示输入密码并且把密码传递给ssh(如果机器都是ssh key打通的则无需加-A)
  • -O 设置ssh一些选项
  • -x 设置ssh额外的一些参数,可以多个,不同参数间空格分开
  • -X 同-x,但是只能设置一个参数
  • -i 显示标准输出和标准错误在每台host执行完毕后

用法示例

先创建一个文本文件hosts.txt,存放要操作的机器列表,格式为[user@]host[:port]:

user1@127.0.0.1:
user2@127.0.0.2
127.0.0.3

用pssh查看所有服务器的uptime:

$ pssh -i -h hosts.txt 'uptime'

可根据需要把 update 换为别的命令

附加工具

pssh安装后附加了一些很好用的工具,主要有:

1、pscp

作用:传输文件到多个hosts,类似scp

示例:

$ pscp -h hosts.txt foo.txt /home/foo.txt

2、pslurp

作用:从多台远程机器拷贝文件到本地

示例:

$ pslurp -h hosts.txt /etc/hosts local_dir

3、pnuke

作用:并行在远程主机杀进程

示例:

$ pnuke -h hosts.txt -l root java

4、prsync

作用:使用rsync协议从本地计算机同步到远程主机

示例:

$ prsync -r -h hosts.txt foo /home/foo

参考文档

http://www.opstool.com/article/266

http://linux.die.net/man/1/pssh

使用PSSH批量操作Linux服务器的更多相关文章

  1. python批量操作Linux服务器脚本,ssh密码登录(执行命令、上传、下载)(一)

     -*-          paramiko.util.log_to_file(         ssh = paramiko.SSHClient()          ssh.set_missing ...

  2. python批量操作Linux服务器脚本,key登录(执行命令、上传、下载)(二)

       -*-   2 #批量操作linux服务器(执行命令,上传,下载)   3 #!/usr/bin/python   4 import paramiko   5 import datetime   ...

  3. Python批量操作Linux服务器执行命令

    #-*- coding: utf-8 -*- #!/usr/bin/python import paramiko import threading def ssh2(ip,username,passw ...

  4. 使用PSSH批量SSH操作Linux服务器

    http://www.opstool.com/article/266 服务器多了,有一个烦恼就是如何批量快速操作一堆服务器.这里我推荐一下经常使用利器pssh.这个工具给我的工作带来了莫大的帮助. 简 ...

  5. Linux服务器安全配置

    众所周知,网络安全是一个非常重要的课题,而服务器是网络安全中最关键的环节.Linux被认为是一个比较安全的Internet服务器,作为一种开放源代码操作系统,一旦Linux系统中发现有安全漏洞,Int ...

  6. .NET跨平台之旅:将QPS 100左右的ASP.NET Core站点部署到Linux服务器上

    今天下午我们将生产环境中一个单台服务器 QPS(每秒请求数)在100左右的 ASP.NET Core 站点部署到了 Linux 服务器上,这是我们解决了在 .NET Core 上使用 EnyimMem ...

  7. 如何使用Linux命令行查看Linux服务器内存使用情况?

    一个服务器,最重要的资源之一就是内存,内存够不够用,是直接关系到系统性能的关键所在. 本文介绍如何查看Linux服务器内存使用情况, 1.free命令 free -m [root@localhost ...

  8. 检查Linux服务器性能

    如果你的Linux服务器突然负载暴增,告警短信快发爆你的手机,如何在最短时间内找出Linux性能问题所在? 概述通过执行以下命令,可以在1分钟内对系统资源使用情况有个大致的了解. • uptime• ...

  9. linux下的ssh工具之,本地上传到linux服务器and Linux服务器文件另存为本地。非sftp工具。

    首先,当你只有一个ssh工具可以连接linux,但你有想把文件在 linux 和windows(本地)直接的切换.其实可以的: 本文参考 1.将本地的文件,放到ssh远程的linux服务器上: 首先要 ...

随机推荐

  1. BZOJ4415:[SHOI2013]发牌(线段树)

    Description 假设一开始,荷官拿出了一副新牌,这副牌有N张不同的牌,编号依次为1到N.由于是新牌,所以牌是按照顺序排好的,从牌库顶开始,依次为1, 2,……直到N,N号牌在牌库底.为了发完所 ...

  2. 【JeeSite】角色分配

    主要是(roleAssign.jsp , selectUserToRole.jsp )2个jsp页面的JS方法调用比较复杂,主页面要获取弹窗页面的数据 var pre_ids = h.find(&qu ...

  3. MVC学习三:Razor视图引擎

    1.Razor视图引擎,主要是把View的HTML代码编译到View视图类对象中

  4. asp.net 过滤器

    asp.net 制作过滤器原理:重写ASP.net管道事件 1.通过HttpApplicationFactory创建一个HttpApplication对象,负责处理整个请求. 2.调用ProcessR ...

  5. neo4j 安装步骤 转自:http://blog.csdn.net/luoluowushengmimi/article/details/19987995

    1. Neo4j简介 Neo4j是一个用Java实现的.高性能的.NoSQL图形数据库.Neo4j 使用图(graph)相关的概念来描述数据模型,通过图中的节点和节点的关系来建模.Neo4j完全兼容A ...

  6. <<学会提问>>第一章学习笔记

    中国应不应该现在取消死刑? 中医是不是伪科学? 读书无用论? 集体主义和团队精神? 欧洲难民危机,你是支持接收难民,还是反对? 欧洲白左是不是幼稚圣母,抑或是右派种族歧视,顽固保守? 如何看待&quo ...

  7. Vmware+CentOs7+共享目录

    首先下载VMware和CentOs7的镜像 安装VMware我是参考的https://www.cnblogs.com/wuyx/p/7246675.html,已经非常详细了 然后需要配置网络了 参考 ...

  8. Markdown基本使用

    最近在写毕业论文,打算列个提纲,觉得有条理的搜集资料规划布局很重要,用Markdown写即有利于增强我的编写接口文档能力,也便于查看. markdown编写软件很多,markdownpad不错(mar ...

  9. Docker运行Nginx服务器

    一.获取Docker容器的Nginx镜像 二.创建Docker容器宿主机挂载目录 # 创建挂载目录,-v 显示创建的目录名 [root@idclooknet ~]# mkdir -vp /opt/do ...

  10. 使用CSS3制作首页登录界面实例

    响应式设计 在这个页面中,使用下面3点来完成响应式设计 1.最大宽度 .设定了一个 max-width 的最大宽度,以便在大屏幕时兼容.: 2.margin : 30px auto; 使其保持时刻居中 ...