UNPKG

3.1 kBMarkdownView Raw
1pssh
2===
3
4批量管理执行
5
6## 补充说明
7
8**pssh命令** 是一个python编写可以在多台服务器上执行命令的工具,同时支持拷贝文件,是同类工具中很出色的,类似pdsh,个人认为相对pdsh更为简便,使用必须在各个服务器上配置好密钥认证访问。
9
10### 安装pssh
11
12在CentOS系统环境下,介绍yum的安装和源码安装的方式:
13
14 **yum方法**
15
16```shell
17yum install pssh
18```
19
20 **编译安装**
21
22```shell
23wget http://parallel-ssh.googlecode.com/files/pssh-2.3.1.tar.gz
24tar xf pssh-2.3.1.tar.gz
25cd pssh-2.3.1/
26python setup.py install
27```
28
29### 选项
30
31```shell
32--version:查看版本
33--help:查看帮助,即此信息
34-h:主机文件列表,内容格式”[user@]host[:port]”
35-H:主机字符串,内容格式”[user@]host[:port]”
36-:登录使用的用户名
37-p:并发的线程数【可选】
38-o:输出的文件目录【可选】
39-e:错误输入文件【可选】
40-t:TIMEOUT 超时时间设置,0无限制【可选】
41-O:SSH的选项
42-v:详细模式
43-A:手动输入密码模式
44-x:额外的命令行参数使用空白符号,引号,反斜线处理
45-X:额外的命令行参数,单个参数模式,同-x
46-i:每个服务器内部处理信息输出
47-P:打印出服务器返回信息
48```
49
50### 实例
51
52获取每台服务器的uptime:
53
54```shell
55# pssh -h ip.txt -i uptime
56[1] 11:15:03 [SUCCESS] Mar.mars.he
5711:15:11 up 4 days, 16:25, 1 user, load average: 0.00, 0.00, 0.00
58[2] 11:15:03 [SUCCESS] Jan.mars.he
5911:15:12 up 3 days, 23:26, 0 users, load average: 0.00, 0.00, 0.00
60[3] 11:15:03 [SUCCESS] Feb.mars.he
6111:15:12 up 4 days, 16:26, 2 users, load average: 0.08, 0.02, 0.01
62```
63
64查看每台服务器上mysql复制IO/SQL线程运行状态信息:
65
66```shell
67# pssh -h IP.txt -i "/usr/local/mysql/bin/mysql -e 'show slave status \G'"|grep Running:
68 Slave_IO_Running: yes
69 Slave_SQL_Running: Yes
70 Slave_IO_Running: Yes
71 Slave_SQL_Running: Yes
72 Slave_IO_Running: Yes
73 Slave_SQL_Running: Yes
74```
75
76保存每台服务器运行的结果:
77
78```shell
79# pssh -h IP.txt -i -o /tmp/pssh/ uptime
80[1] 11:19:47 [SUCCESS] Feb.mars.he
8111:19:55 up 4 days, 16:31, 2 users, load average: 0.02, 0.03, 0.00
82[2] 11:19:47 [SUCCESS] Jan.mars.he
8311:19:56 up 3 days, 23:30, 0 users, load average: 0.01, 0.00, 0.00
84[3] 11:19:47 [SUCCESS] Mar.mars.he
8511:19:56 up 4 days, 16:30, 1 user, load average: 0.00, 0.00, 0.00
86```
87
88我们来看一下/tmp/pssh/下的文件及其内容
89
90```shell
91# ll /tmp/pssh/
92总用量 12
93-rw-r--r--. 1 root root 70 12月 1 11:19 Feb.mars.he
94-rw-r--r--. 1 root root 70 12月 1 11:19 Jan.mars.he
95-rw-r--r--. 1 root root 69 12月 1 11:19 Mar.mars.he
96
97# cat /tmp/pssh/*
9811:19:55 up 4 days, 16:31, 2 users, load average: 0.02, 0.03, 0.00
9911:19:56 up 3 days, 23:30, 0 users, load average: 0.01, 0.00, 0.00
10011:19:56 up 4 days, 16:30, 1 user, load average: 0.00, 0.00, 0.00
101```
102
103上面介绍的是pssh命令很少的一部分,大家可以将其用到适合自己的场景,发挥它的最大功效。
104
105