CheungSSH自动化运维管理工具

说明:CheungSSH自动化运维管理工具是由【张其川 Cheung Kei-Chuen】开发的易于部署安装,操作简单、功能实用、无需安装任何插件、提供技术支持、授权免费使用的一款运维利器。


一、下载安装CheungSSH

    特别提示:
    CheungSSH由于是批量的管理操作, 所以暂时不支持交互式,比如vi,top,ping等等;当然,如果懂得如何取消交互,那么也是可以的。

  1. 使用平台介绍:

    CheungSSH只适用于Linux系统和Unix系统,因为是基于SSH协议工作的。当前最好的支持Redhat、Centos、等安装,但对被管理的远程服务器没有要求,只要支持SSH协议即可。

  2. 安装环境要求:

    使用CheungSSH的系统Python版本不低于2.4,需要有gcc、python-devel环境支持。由于CheungSSH与Ansible一样, 是基于SSH协议的,所以您的Linux/Unix只需要开启SSH即可,无需安装软件其他任何插件或者是Agent,管理相当简单;如果需要使用WEB版本管理,还需要安装web服务,例如httpd等。

  3. 模块支持:

    由于CheungSSH是基于SSH协议工作的,所以需要paramiko和pycrypto的支持。这些模块都会在CheungSSH的自动安装中集成安装。无需其他安装。

  4. 下载CheungSSH:

    由于CheungSSH是开放源码且免费的,所以您可以到GitHub下载:
    下载方式:
    如果您的Linux上没有git命令,那么请使用以下方式进行下载:
        a.在您的浏览器地址栏输入: https://github.com/zhangqichuan/CheungSSH/tree/CheungSSH,现在您将看到如下页面:
    CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第1张图片
        b.点击Download ZIP按钮就可以了,然后在服务器上 解压CheungSSH.zip 即可!
        c.此时在CheungSSH中会有全部的程序,如图:

    CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第2张图片

    主要文件说明:

  5. 文件
    说明
    bin目录 
    主要存放主程序以及可执行文件
    bin/install-CheungSSH.sh文件
    安装脚本,初次安装需要运行此脚本,注意要有执行权限x
    conf目录
    主要的配置文件存放目录包括hosts cheung.conf两个配置
    Web目录
    主要存放WEB界面管理的相关页面

二、安装web版CheungSSH:

  1. 安装WEB 服务
    1)安装HTTP服务
        不难理解,要想访问网页,得需要您的主机支持web的访问形式,所以到了这里, 请您手动安装一个http服务器吧!
        A.  如果您的安装主机是可以联网,并且可以使用yum的话, 您可以执行:
        #yum  install  -y httpd   #该方式的安装跟目录通常在/var/www/下面
        B.  如果您的主机不能上网,您可以使用源码安装的方式进行,由于源码的安装相对复杂, 所以    不建议您用此种方式,如果您真的要用这种方式,您可以参考:http://blog.csdn.net/symgdwyh/article/details/8235262

        如果您正确安装了Apahce或者是Nginx的HTTP服务,那么您应该可以访问如下类似的页面:
    CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第3张图片
    提示:
    安装好后,您无需配置任何Apahce,如果您安装的是Nginx,那么可能需要手动配置服务器支持python的cgi功能!配置较Apahce麻烦些。

        2)测试http服务状态
        假如您已经安装好了http服务器, 那么请通过见到你的测试:
        打开浏览器输入地址:
        第一种http://127.0.0.1  #如果您是在安装了http服务的服务器上打开的浏览器就用这个地址
        第二种http://您服务器的IP地址   #远程方式访问,就像打开百度一样

        3)启动web功能
        假如您已经安装好了http服务, 并且可以通过浏览器打开首页,那么现在您可以进行下一步的安装了。

  2. 安装CheungSSH
        如果您当前已经正确下载了CheungSSH,并且已经解压到了您的预定目录,那么请执行如下操作进行自动安装CheungSSH:
        请把您在GitHub上下载的软件包上传到您的服务器,并将其解压到您的宿主目录($HOME)
        进入的CheungSSH的安装路径CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第4张图片

    进入的CheungSSH的安装路径CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第5张图片

  3. [root@Cheung ~]# cd cheung/bin/

    [root@Cheung bin]# chmod a+x install-CheungSSH.sh               #赋予安装程序X执行权限

    [root@Cheung bin]# ./install-CheungSSH.sh                                #执行安装程序

    wKiom1XbHamjgkYuAACyrM8lz08353.jpg

    出现如上提示,则说明程序已经安装成功了(您可以使用shell版本的./cheungssh.py),

    如果您要使用WEB界面方式进行管理,请您输入yes,继续安装。CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第6张图片

    根据上图提示,我们在首次使用CheungSSH时候,需要配置我们的管理主机文件  cheung/conf/hosts

  4. 配置管理主机文件: ~/cheung/conf/hosts

    CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第7张图片

    解释:
        第一列:主机地址
        第二列:主机的端口
        第三列:主机的登陆用户名
        第四列:主机用户名的密码,如果您担心密码泄露,那么此处可以填写None
        第五列:su-root的密码  ,如果您未使用Useroot,此列可以填写None
    以上配置必须有固定的格式,否则程序将无法运行
    提示:
        如果您在密码列填写的是  None ,那么在您执行命令的时候程序将会询问您密码。这样可以保护安全信息。
        重要提示:
    目前V133版本中还不支持WEB的sudo, su , 密码None功能,这将在以后的版本中支持。

  5. 正式启动CheungSSH _WEB 管理

    如果,通过上面的阅读,您已经配置好了/cheung/conf/cheung.conf这个配置文件,正确的指定了您要被管理的主机,那么您可以使用命令正式启动进入CheungSSH:
    [root@Cheung bin]# ./start_CheungSSH_web.sh             #启动CheungSSH的程序

    wKiom1XbHzmDkVF1AADzckslWLY497.jpg

    如果您看到以上提示信息, 那就表明web系统已经启动了,现在您还需要做如下操作:
        A. 请修改~/cheung/conf/hosts配置文件的内容,如果您原来已经有了配置, 那么该配置不变。
        B. 如果您修改了~/cheung/conf/hosts文件, 那么您现在需要重启web系统
        [root@localhost bin]# ./start_CheungSSH_web.sh  #重启的和启动是一样的脚本
    重要提示:
        1).请确保您可以正常的访问安装了CheungSSH软件的1337端口, 该端口是websocket的端口,必须保证能正常访问!
        2).请保证http服务器已经启动, 否则您无法打开网页。
        3).请确保http://xxx.xxx.xxx.xxx(server_IP)/cgi-bin/path_search.cgi路径能够正常访问!如果该地址不可用,那么您将无法体验自动搜索给您带来的良好体验。

        如果以上您都确保正确操作了, 那么现在您可以正式访问web版本,根据提示,可以访问管理页面,如图:
    在您的浏览器输入这个地址

    wKioL1XbIcrS0NWXAADim7wxnPc680.jpg

    提示
    以上是我的测试机器,您需要根据您的实际IP进行访问。

  6. WEB 管理界面介绍

    下图为访问管理页面的示图:CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第8张图片

    指示灯介绍:

  7. wKioL1Xb3Tzxhm8zAAAG0mV7F6w443.jpg
    尚未启动状态,或者正在启动中,主要的标识是   UNSTART 或 starting
    wKiom1Xb2zSyo8ThAAAIQLVKCb8619.jpg
    执行结果正常,比如您执行任何一个Linux系统命令,返回的状态都是0
    wKioL1Xb3VORYCgKAAAI6EBBlgw898.jpg
    执行结果错误,比如您执行一个Linux系统命令,返回的结果是 非0 的

    提示:
        如果您遇到了如下情况,请根据建议检查您的服务器
        问题1: 【服务器状态:正在连接......】很可能连接不上您的服务器的1337端口,您需要检查您的防火墙,或者是NAT是否已放通了访问.
        问题2:【服务器状态:服务器已关闭】说明您的PC浏览器根本访问不了服务器的1337端口,此时您需要检查您的服务器的1337端口是否启动成功,并且还要检查网络和防火墙是否放通。

  8. 功能介绍

    1)连接状态

      如上图,WEB界面的左上方提示【服务器状态:连接成功】,说明目前软件与管理服务器连接正常。

    2)命令输入区域   

      在命令框中,就是需要输入我们要执行的命令,例如ifconfig 等命令,同时为了使用方便,此WEB 版本搜索框做了命令匹对,例如输入ifc 之后可以补全所有ifc开头的命令,方便使用。

      例如du -sh /var

CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第9张图片

   3)选择服务器

      如果我们在配置文件hosts配置了不同的分组,且我们执行时要并不是全部执行,而 是部分执行,那么此功能就能解决此问题。打开【选择服务器】,就可以选择需要执行的分组或者单独服务器,方便了管理与操作,如下图。

wKiom1Xb3KKTnpHyAAAUa2fBGj8833.jpgCheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第10张图片

   4)运行结果显示

      结果反馈显示框,显示了我们执行命令的结果。对于命令执行的结果,我们可以在反馈框里直观的查看,方便查看执行结果。

   5)历史命令

      如图 所示,之前执行过的命令会有记录,如果需要再次重复执行,只需要选中命令,执行即可,省去重复操作,这个跟shell的命令历史一样.

CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第11张图片

    6)主机组

       主机组,就是我们的主机管理配置文件hosts里设置的不同分组的主机组,例如配置了两组,分别为【webserver】和【database】,就会在主 机组里显示。

     7)进度条

        进度条可以显示我们目前执行命令完成的进度情况。

CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第12张图片

   8)关于指示灯的说明:

       a.数量提示        指示灯的数 量就表示该主机组中的主机数量

       b.颜色提示       

            灰色:表示还管理主机还未执行相关命令

            绿色:表示该管理主机执行相关 命令成功

            红色:表示该管理主机执行相关命令失败

       c.信息提示

          当鼠标悬浮停留在指示灯上,会有相关执行信息提示,此功能大 大的方便了我们的使用,方便了查看失败的主机的相关报错提示,如下:

CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第13张图片

9. 功能测试

        1)命令提示功能例如我出入if 命令式,系统会自动提示相关的命令,方便我们查询是使用,如图:

    CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第14张图片

        2)执行结果反馈功能例如当执行了ifconfig 命令之后,系统会在结果反馈框里反馈命令执行结果,如图:

    CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第15张图片

    说明:

    图示的圆圈由之前的灰色变更为绿色,说明该主机命令执行成功了。

10. 使用主机组

        假如您 在/cheung/conf/hosts文件中这样配置了多个主机组,例如webserver 和database 两个分组,我们此时只需要对webserver组主机进行相关检查,我们此时可以【选择服务器】,单独执行,如图:

    CheungSSH 史上最牛的比Ansible更好用的自动化运维管理工具_第16张图片

    确定我们所选的服务器之后可以执行我们 的相关操作了。


说明:

    此web版本,只是目前初期使用的基础版本,后续会开发相关更多的使用功能,例如日志存储、远程传输、本地脚本运行、批量自 动化部署Tomcat、Apache等等更多可用功能,后期将与Nagios监控系统无缝结合,实现全自动化的处理!解放双手,彻底自由,敬请期待!!!

三、CheungSSH的联系方式和版权
    1.联系方式:       

        QQ: 2418731289   

    2.   版权声明:       

        本软件由张其川(Cheung Kei-Chuen)保留所有版权,侵权必究!


您的使用和建议,是我开发最大的动力!!!