polysh安装与使用-同时查看多台机器日志
polysh简介
polysh 是一个交互式命令,可以在一台服务器上批量的对一批服务器进行处理,运行交互式命令。官方的简介如下:
Polysh is a tool to aggregate several remote shells into one. Itis used to launch an interactive remote shellon many machines at once. It is written in Python and requires Python ≥ 2.4.
注: Polysh 是一个由几个远程脚本集合而成的工具,它被用于在许多服务器上运行一个交互式的远程脚本,由 Python 编写,最低要求为 Python 2.4
当需要查看一个服务(部署在多台机器上)的日志的时候,可以使用ploysh在一台机器查看多台机器的日志,而不需要一台机器一台机器的登录查看,方便了问题的排查和定位。
polysh安装
先在一台机器上执行如下命令安装polysh:
1、选择一个目录,下载解压文件:
wget http://guichaz.free.fr/polysh/files/polysh-0.4.tar.gz
tar -zxvf polysh-0.4.tar.gz
2、新建polysh的使用脚本,然后通过 chmod命令 赋予可执行权限:
vim polysh.sh 脚本内容如下:将需要访问的机器列表填写在最后
python /home/安装目录.../polysh-0.4/polysh.py {name1, name2, name3}
{}大括号里填写的是机器的名称,以逗号 "," 分隔。polysh也支持多种机器名的格式,假如机器很多的话,也可以写为:name<1-3>
3、如果出现如下提示信息:机器's passpord,则需要配置机器之间无密码访问。
① 通过 ssh-keygen -t rsa 生成本机器的密钥和公钥
② cat /用户目录.../.ssh/id_rsa.pub 获取公钥
③ 将公钥追加到所需要无密码访问目标机器(例如上面的name<1-3>的3台机器)的授权文件中(授权文件的路径为:/用户目录.../.ssh/authorized_keys)
polysh使用
运行刚刚新建的 ./polysh.sh 脚本
ready (3) 表示 3台机器已经连接完毕,可以执行查询命令。exit或Crtl+z都可以退出。
查看3台机器上面的日志信息:less test.log,如图所示,颜色不同的3行分别是3台机器输出的日志内容:
通过在一台机器上,实现对多个机器进行操作,再也不需要去记复杂的机器名称了,也不需要每个机器来回登录去执行重复指令,解放自己,减少了重复工作。最方便的场景就是查日志、查看机器信息(CPU、磁盘)这些小操作。
如果机器非常多的话(10台以上),就不建议使用了,还有对机器性能有影响的命令也不建议执行。
polysh安装与使用-同时查看多台机器日志的更多相关文章
- Flume 实战,将多台机器日志直接收集到 Kafka
目前我们使用的一个 b 端软件的报错日志分散在集群各处,现在想把它收集到一个地方然后统一丢进 Kafka 提供给下游业务进行消费. 我想到了 flume,之前让同事搭建的这次自己想多了解一些细节于是就 ...
- Jmeter 多台机器产生负载及问题解决方法
JMeter 使用多台机器产生负载的操作步骤如下: 关于linux环境运行jmeter,分布式测试 见 http://www.51testing.com/html/55/383255-847895.h ...
- Jmeter 多台机器产生负载
使用多台机器产生负载的操作步骤如下: (1)在所有期望运行jmeter作为 负载生成器的机器上安装jmeter, 并确定其中一台机器作为 controller ,其他的的机器作为agent .然后运行 ...
- 第四课 Grid Control实验 GC Agent安装(第一台机器部署) 及卸载
3.GC Agent安装(第一台机器部署) 安装Agent 拷贝agent,现在ocm2机器上查找agent.linux 查找文件的方法: find ./ -name agent*linux 把ag ...
- centos 安装redis(一台机器可以安装多个redis)
我在运行时redis版本是2.8 操作前设置以管理员身份: 打开终端输入 su - 安装redis需要确保系统已经安装了(gcc gcc-c++)# yum -y install gcc gcc-c+ ...
- window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法
window下在同一台机器上安装多个版本jdk,修改环境变量不生效问题处理办法 本机已经安装了jdk1.7,而比较早期的项目需要依赖jdk1.6,于是同时在本机安装了jdk1.6和jdk1.7. 安装 ...
- Ubuntu 中软件的安装、卸载以及查看的方法总结
Ubuntu 中软件的安装.卸载以及查看的方法总结 博客分类: Linux UbuntuDebian配置管理CacheF# 说明:由于图形化界面方法(如Add/Remove... 和Synaptic ...
- 第四课 Grid Control实验 GC OMS安装(第二台机器部署)
2.GC OMS安装(第二台机器部署) 1. 配置图形化 [oracle@ocm2 ~]$ xhost + access control disabled, clients can connect f ...
- 如何在同一台机器上安装多个MySQL的实例
转自:'http://www.cnblogs.com/shangzekai/p/4375271.html 最近由于工作的需要,需要在同一台机器上搭建两个MySQL的实例,(注:已经存在了一个3306的 ...
随机推荐
- 毕加索的艺术——Picasso,一个强大的Android图片下载缓存库,OkHttpUtils的使用,二次封装PicassoUtils实现微信精选
毕加索的艺术--Picasso,一个强大的Android图片下载缓存库,OkHttpUtils的使用,二次封装PicassoUtils实现微信精选 官网: http://square.github.i ...
- 【一天一道LeetCode】#89. Gray Code
一天一道LeetCode 本系列文章已全部上传至我的github,地址:ZeeCoder's Github 欢迎大家关注我的新浪微博,我的新浪微博 欢迎转载,转载请注明出处 (一)题目 The gra ...
- 检查app的activity是否在当前
APP开发中经常会遇到这种需求,需要检查当前的APP是不是可见的,比如,如果是可见的就维持一个socket长连接,如果切到后台不可见了,就断开这个连接.Android本来并不允许APP去监听home键 ...
- SQL备份所有数据库脚本
技巧要点:使用游标循环读取所有数据库名,然后定义存放路径,最后备份所有数据库到指定存在的本地文件夹中 脚本如下: declare @fileName varchar(255) --定义备份文件名变量d ...
- pig的limit无效(返回所有记录)sample有效
pig中,limit可以取样少部分数据,但有很多问题,比如数据不能少于10条,否则返回全部. 今天又遇到另一个问题: group后的数据,limit无效:也就是group后的数据,不能用limit,估 ...
- Linux IPC实践(6) --System V消息队列(3)
消息队列综合案例 消息队列实现回射客户/服务器 server进程接收时, 指定msgtyp为0, 从队首不断接收消息 server进程发送时, 将mtype指定为接收到的client进程的pid ...
- OC内存管理-OC笔记
内存管理细节:http://blog.sina.com.cn/s/blog_814ecfa90102vus2.html 学习目标 1.[理解]内存管理 2.[掌握]第一个MRC程序 3.[掌握]内存管 ...
- Linux进程实践(5) --守护进程
概述 守护进程是在需要在后台长期运行不受终端控制的进程,通常情况下守护进程在系统启动时自动运行,在服务器关闭的时候自动关闭:守护进程的名称通常以d结尾,比如sshd.xinetd.crond.atd等 ...
- (NO.00001)iOS游戏SpeedBoy Lite成形记(二十七)
切换回Xcode,在GameScene.m中添加新的实例变量:_winLayer. 接下来在第一个选手到达终点时,我们可以完成选手胜利的动画特效了. 首先,在GameScene.m中添加一个新方法pl ...
- python3爬虫 - cookie登录实战
http://blog.csdn.net/pipisorry/article/details/47948065 实战1:使用cookie登录哈工大ACM网站 获取网站登录地址 http://acm.h ...