Linux系统之工具篇(二)集群管理软件clustershell


一、简介

实验室机房有大概百台的服务器需要管理,加上需要搭建Hadoop以及Spark集群等,因此,一个轻量级的集群管理软件就显得非常有必要了。经过一段时间的了解以及尝试,最终选择了clustershell这个软件,原因如下: 1、安装方便。一条指令就能轻松安装。 2、配置方便。很多集群管理软件都需要在所有的服务器上都安装软件,而且还要进行很多的连接操作,clustershell就相当的方便了,仅仅需要所有机器能够ssh无密码登录即可,然后只在一台服务器上安装clustershell即可。 3、使用方便。clustershell的命令相对来说非常简单,只有一两个指令以及三四个参数需要记。

二、安装

1.安装clustershell

安装非常简单,只有一条指令即可,一般服务器都是红帽系列的,使用yum安装。
yum install clustershell

2.配置ssh无密码登录

配置ssh登录相对比较简单,在搭建hadoop集群的时候都会需要这一步。

3.配置/etc/hosts

在hosts中文件中将ip和主机名对应起来,使用比较方便。 \

4.配置关键文件

clustershell的配置文件在/etc/clustershell目录下,其中的groups是最常用的,我只配置了这一个文件。 \

其中all这一项后面添加的是所有的节点。 hadoop这一项是我自己添加的group,也可以添加其他的组。

三、使用

clustershell在使用的时候有一个非常重要的指令就是clush,目前为止我也只用到了这一个指令。 clush [-option] 后面就是日常的linux上执行的指令即可,没什么复杂的,都十分简单。但是有一点要注意,clustershell执行的类似与一次操作的指令,比如你可以touch一个新文件在所有节点上,但是你不能同时在所有节点上vim编辑一个新文件。细节还需琢磨。 clush有几个比较重要的参数: -b : 相同输出结果合并 -w : 指定节点 -a : 所有节点 -g : 指定组 --copy : 群发文件

1.查看所有节点的java安装路径,输出结果合并

clush -b -a echo $JAVA_HOME
\

2.查看hadoop组所有节点的java安装路径,输出结果不合并

clush -g hadoop  echo $JAVA_HOME
\

3.在所有节点上创建一个空文件

clush -g hadoop  touch 1.txt

4.集群分发文件

把本地的一个groups文件分发到hadoop组中所有节点的/home/hadoop目录下
clush -b -g hadoop --copy groups --dest /home/hadoop

四、官方文档

clustershell还有很多功能,但是需求驱动学习,目前我能用到的功能在上面体现了,有需求的话会再学习深一点。上传一个官方文档,有深入学习clustershell,可以下载一下。 http://download.csdn.net/detail/picassolovecoding/8073989
有更好玩的功能可以互相交流。

相关内容