运维&部署

[工具篇]Polysh的配置与使用

2017-04-10  本文已影响462人  景先生

前言


如今,分布式系统大家已经司空见惯了。但面对那么多台机器同时操作、管理时可能还是处于原始状态。工欲善其事,必先利其器。今天给大家介绍一个工具,可以让我们一次远程操作很多台机器。


1. 介绍

Polysh is a tool to aggregate several remote shells into one. It is used to launch an interactive remote shell on many machines at once.

官方网址:猛戳这里

源码地址:git://repo.or.cz/polysh.git

2. 准备

Polyshis written in Python and requires Python ≥ 2.4.

MacOS操作系统已自带Python环境,核对版本即可。若没有配置,请手工安装:brew install python。(如果你还不知道brew是什么,请移步这里

Windows操作系统,请自行安装、配置。→传送门

对于企业来说,为了生产环境的相对安全,往往需要先登录跳板机(或叫堡垒机),对开发或测试环境可能相对访问自由一些。

3. 安装

选择一台合适的机器进行polysh工具的安装。

wget http://guichaz.free.fr/polysh/files/polysh-0.4.tar.gz

tar -zvxf polysh-0.4.tar.gz

cd polysh-0.4

python setup.py install --home=~

(版本号选用请参照官网的Release List)

特殊说明一下home参数,若生产机器环境有严格权限管理,我们需要指定到登录者的home目录下进行安装,否则会导致安装失败。或不指定该参数的话,安装后命令文件会出现在/bin/polysh和/usr/local/bin/polysh

4. 配置

1)为了方便使用,将polysh配置到系统变量中(选用)

成功安装后,会在home参数配置的目录下生成bin目录(按照上述步骤即~/bin)和其目录下的polysh指令文件。我们将该bin目录配置到~/.bash_profile文件中PATH路径里。

2)配置免密登录(选用)

这种配置避免了连接多台机器时对各机器密码的管理,达到更高效的便捷使用。我们需要把polysh所在机器的~/.id_rsa.pub内容配置到所需连接的机器上来完成免密登录。

通过“man ssh-keygen”命令来获得ssh-keygen的命令手册。

man ssh-keygen的执行结果

如果本机不存在~/.ssh/id_rsa.pub文件,需通过“ssh-keygen -t rsa”来创建本机的公私钥文件。(默认生成无需输入任何参数,三次回车即可)

ssh-keygen -t rsa执行过程

执行后,id_rsa(私钥文件)和id_rsa.pub(公钥文件)出现在~/.ssh/文件夹下。

将id_rsa.pub内容复制在其他连接机器的./ssh/authorized_keys文件中。若不存在依据上述步骤创建。

如果希望ssh公钥生效需满足至少下面两个条件:

.ssh目录的权限必须是700

.ssh/authorized_keys文件权限必须是600

~/.ssh/目录下的文件说明:

authorized_keys —— 存放远程免密登录的公钥,主要通过这个文件记录多台机器的公钥。

id_rsa —— 生成的私钥文件。

id_rsa.pub —— 生成的公钥文件。

know_hosts —— 已知的主机公钥清单。

5. 使用

1) 创建~/host.list

#ip或域名

127.0.0.1

localhost

2) 编写执行脚本~/login.sh

#!/bin/sh

polysh --hosts-file=host.list

#./polysh-0.4/polysh.py --hosts-file=host.list

3)执行~/login.sh

login.sh执行过程
上一篇 下一篇

猜你喜欢

热点阅读