zoukankan      html  css  js  c++  java
  • Linux运维利器之ClusterShell

    一、简介

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

    二、安装

    1.安装clustershell

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

    配置文件:/etc/clustershell/    下

    假设我们配置了一个db组,包含ssy-[1-3]三个节点:

    shell> cat /etc/clustershell/groups
    db: ssy-01 ssy-02 ssy-03

    准备就绪,顺着文章开头的例子说:查询所有数据库服务器当前的负载情况:

    shell> clush -b -g db "uptime"

    2、参数

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

     

    3.配置ssh无密码登录

    如果没有事先生成ssh密匙的话,需要先生成:

    shell> ssh-keygen

    可选操作:为了方便,我们可以给需要登录的服务器起一个可读性更好的别名,如果你做了类似的操作,那么后面的<USER>@<SERVER>都可以换成对应的<HOST>:

    shell> cat ~/.ssh/config
    Host db_1
    Hostname <SERVER>
    User <USER>
    Port <PORT>
    
    Host db_2
    Hostname <SERVER>
    User <USER>
    Port <PORT>
    
    Host db_3
    Hostname <SERVER>
    User <USER>
    Port <PORT>

    然后把生成的公钥添加到需要登录的服务器指定位置:

    shell> cat ~/.ssh/id_rsa.pub | ssh <USER>@<SERVER> "cat - >> ~/.ssh/authorized_keys"

    如果你和我一样总记不清如何正确拼写authorized_keys,可以接着学一下ssh-copy-id的用法,这个命令可以让操作更简单点:

    shell> ssh-copy-id -i ~/.ssh/id_rsa.pub "<USER>@<SERVER>"

    注:每配置好一台免密码登录的服务器,最好手动实际操作一下,因为第一次连接会要求手动确认是否保存信息到~/.ssh/known_hosts文件。

    3.配置关键文件

    clustershell的配置文件在/etc/clustershell目录下,其中的groups是最常用的,我只配置了这一个文件。
     
    其中all这一项后面添加的是所有的节点。

    三、官方文档

    https://sourceforge.net/projects/clustershell/?source=navbar
     
     
    clustershell还有很多功能,但是需求驱动学习,目前我能用到的功能在上面体现了,有需求的话会再学习深一点。上传一个官方文档,有深入学习clustershell,可以下载一下。
    http://download.csdn.net/detail/picassolovecoding/8073989
    有更好玩的功能可以互相交流。
  • 相关阅读:
    页面后退的总结
    Flash Builder4.6 无法启动,并且报 Failed to create the Java Virtual Machine(1不行的话可以参考下2)
    单独的js代码文件被JSP文件调用,中文乱码问题
    Flash Builder4.6 破解方法的实践
    sql文学习.....关于条件判断的查询....casewhenthen
    解决flash builder 4.6安装过程中安装程序遇到错误(1)
    flex builder 4 控制台不能输出trace()的解决方法
    jstl遍历map,foreach
    jar包直接拷贝到WEBINF/lib下和以userLibrary形式引入的区别?/jar包放置在WEBINF/lib下和通过build path导入的区别是什么?
    flash build 4.6 不能debug 报错 C:\WINDOWS\system32\Macromed\Flash\NPSWF32.dll
  • 原文地址:https://www.cnblogs.com/gaoguangjun/p/8516865.html
Copyright © 2011-2022 走看看