4123ed 发表于 2015-11-6 09:41:52

CheungSSH自动化运维工具比Ansible Saltstack更经典史上最强大的的批量自动化管理工具 管理上千台服务器


[*]
CheungSSH简介


[*]CheungSSH是一款中国人自主研发的Linux运维自动化管理服务器软件,是具有中国特设社会主义的IT自动化运维管理软件

[*]国产软件,更知道中国人的习惯,全程采用全中文,并且提供技术支持

[*]国产,或将在以后进入国家扶持的互联网产品序列

[*]以堡垒机形式,替代人工管理服务器

[*]无Agent代理客户端,采用Linux自带的SSH协议通信

[*]不需对被管理服务器做任何配置,甚至是简单的SSH配置都不要,只需要开启SSH服务即可,通过您的远程服务器密码或者Pubkey管理登录

[*]采用Mysql Oracel数据库存储服务器敏信息

[*]采用Redis缓存数据,解决了以往各种自动化工具解析过程慢的问题

[*]Web UI 图形界面更人性化,符合中国人的操作习惯

[*]不需要学习CheungSSH如何使用,只要会点击鼠标即可,因为语法不面向使用者

[*]权限控制,记录每一个操作动作,可供运维安全审查


[*]
在这里,我希望CheungSSH有朝一日能成为中国IT界运维自动化的首选目标,通过与各位IT界人士的努力,一道践行社会主义核心价值观,并实践我们的中国梦

CheungSSH针对的问题
[*]命令批量执行


[*]脚本批量执行


[*]文件自动上传


[*]文件自动下载


[*]把所有工作加入计划任务


[*]自动部署软件


[*]


[*]程序自动同步


[*]被管理服务器资产收集


[*]服务器状态检查


[*]技术介绍


[*]前端:Angulars javascript jQuery   ngfileuploadscrollbar uigrid typeahead cors Bootstrap

后端    DjangoRedisMysql Oracle SSH paramiko websocket crontab SFTP Cache

[*]
CheungSSH优势



[*]简单,不需要特定的语法,不需要学习,即使不懂得Linux的人也能操作

[*]功能完备,命令执行、文件传输、批量部署程序、服务器资产信息收集、计划任务、开放的API等主要功能

[*]开源,使用免费

[*]不掺杂Linux之外的概念,让懂得Linux的人使用起来更得心应手

[*]无需安装任何插件

[*]Python开发,开源代码

[*]通过SSH管理服务器,通信安全,无需开启额外的端口和启动额外的程序

[*]安全存储数据,采用Mysql Oracle数据库

[*]通过SSH管理登陆,无需额外创建任何管理账号,只需要业务账号即可,即平时登陆服务器的账户。做到无痕操作,不给服务器增加额外负担

[*]运行速度快,采用缓存技术


[*]
CheungSSH架构

[*]模块架构:

[*]
[*]运行架构:

[*]
[*]

[*]CheungSSH作为堡垒机角色,替代管理人员对众多服务器进行管理,解放运维管理员的双手,并且有相应的审计、权限管理功能


[*]我们的团队

[*]总设计师 :       张其川


[*]前端总负责人:覃亚东

[*]后端总负责人:张其川


联系我们
官方QQ群:445342415
官方微信群

[*]
捐助支付宝

[*]

[*]下载地址

https://www.github.com/zhangqichuan/CheungSSH
安装

[*]# unzip CheungSSH-Master.zip

[*]# cd CheungSSH-Master/bin/

[*]# sh install-CheungSSH.sh


[*]温馨提示:建议您使用Yum联网安装依赖模块


登录CheungSSH Web

[*]


[*]温馨提示:

[*]如果登录次数联系超过5次,那么系统会锁定登录IP一天时间。

[*]首次登陆后修改密码 http://您的IP地址:端口/cheungssh/admin/

[*]
添加被管理主机配置信息

[*]点击 “增加服务器”
[*]
[*]添加好以后,如下:



[*]


[*]普通配置
只需要添加被管理主机的IP,端口,登陆用户名, 密码既可以
[*]高级配置

[*]


[*]sudo登录
您可以选择sudo为 ”是“ 表示执行命令的时候,是启用了sudo,并且在执行命令的时候不用输入sudo开头, 直接是命令, 比如原本是sudo ifconfig ,现在只需要 ifconfig,CheungSSH为您自动切换

[*]su - root

您可以选择su为是; 表示执行命令的时候,是启用了su - root,并且在执行命令的时候不用输入su - root开头, 直接是命令, 比如原本是su - root后,执行 ifconfig ,现在只需要 ifconfig,CheungSSH为您自动切换





[*]


[*]
执行命令应用场景:执行一个whoami的命令,请记得,这个命令是在被管理的远程服务器上执行的


命令回显,功能区域介绍:




1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
关于websocket:
    class WebSocketServer(object):
    def __init__(self):
      self.socket = None
    def begin(self):
      print( 'WebSocketServer Start!')
      self.socket = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
      self.socket.setsockopt(socket.SOL_SOCKET,socket.SO_REUSEADDR,1)
      self.socket.bind(("0.0.0.0",1337))
      self.socket.listen(50)


      global connectionlist


      while True:
            i=str(random.randint(90000000000000000000,99999999999999999999))
            connection, address = self.socket.accept()
            print '客户端ip',address
            username=address   
            ie_key='connection'+i
            path="/"
            newSocket = WebSocket(connection,i,username,address,path,ie_key)
            newSocket.start() #开始线程,执行run函数
            connectionlist=connection






[*]
选择服务器

[*]应用场景:假如您现网有一万台服务器,那么本次您只想对其中的一千台服务器进行操作,那么您可以挑选出要执行任务的主机

[*]

[*]
添加计划任务
[*]应用场景

[*]加入今晚需要对一部分的主机在24:00的时候执行一些命令,用来收集服务器的信息,此时,您使用该功能就不用值夜了,交给CheungSSH的计划任务模块,那么您就可以安心睡大觉了


选择计划任务的时间 ,这里与Linux系统的分 时日 月 星期 一一对应:确认计划任务的时间,可以看到这个时间格式跟Linux系统的一模一样,没错,我们就是把它做成了操作系统的crontab功能:
[*]
查看计划任务


[*]
CheungSSH计划任务查看


[*]
操作系统计划任务查看



[*]


[*]# crontab -l

[*]*/1 */1 */1 */1 */1 /home/cheungssh/mysite/mysite/cheungssh/daemon_FileTransfer.py '{"status": "\u672a\u542f\u52a8", "lasttime": "2015-10-25 18:45:20", "cmd": "", "createtime": "2015-10-25 18:45:20", "sfile": "/var/log", "user": "bo", "fid": "92262569677243366214", "runtype": "download", "runtime": "*/1 */1 */1 */1 */1", "id": "99556469106"}' #92262569677243366214

[*] */1 */1 */1 */1 */1 /home/cheungssh/bin/cheungssh_web.py 94246137977316460425

[*] */1 */1 */1 */1 */1 /home/cheungssh/bin/cheungssh_web.py 91254503983769069002

[*][root@cheungssh bin#

[*]



[*]
文件下载


[*]


[*]
文件传输记录应用场景:对于所有的上传 下载文件的记录 我们都做了记录,下面是传输的记录:


[*]
文件下载应用场景:在远程被管理的服务器上有一个文件,此时如果您需要获取文件内容,那么您可以使用我们的下载功能,把远程服务器上的文件下载到CheungSSH服务器上,然后从CheungSSH服务器再下载到您的本地电脑PC机器上,然后神奇的是,这一切过程,都是自动的!

[*]
1
友情提示:不仅支持文件下载,还支持目录下载哦!





从远程服务器下载文件到CheungSSH上以后,自动弹出下载成功的文件,并且显示没有下载成功的文件:\从CheungSSH上下载刚才从远程服务器上下载的文件到您的本地电脑上:

[*]
文件上传应用场景:假如您需要更新或者上传一些文件到被管理服务器上,那么这里您可以使用上传功能:

文件上传和下载 都有进度显示的哦!
1
2
3
4
5
6
7
8
9
10
11
12
其实我们利用的就是paramiko的SFTP函数实现的:
def UpdateFile(ip,port,username,password,UseKey,sfile,dfile):
      try:
                t=paramiko.Transport((ip,port))
                if UseKey=="Y":
                        KeyPath=os.path.expanduser('~/.ssh/id_rsa')
                        key=paramiko.RSAKey.from_private_key_file(KeyPath)
                        t.connect(username = username,pkey=key)
                else:
                        t.connect(username = username,password = password)
                sftp = paramiko.SFTPClient.from_transport(t)
                ret=sftp.put(sfile,dfile)





1
温馨提示:您依然可以上传一个文件夹的哦!





[*]
脚本管理


[*]目前脚本还在开发中, 不支持执行脚本,支持创建脚本和上传脚本



[*]开放API


[*]主机信息API

[*]服务器运行日志API

[*]服务器状态检查API

[*]文件传输API

[*]命令执行API

[*]资产信息API

[*]计划任务API


[*]待开发功能


[*]资产收集后端已经完成,前端还在开发中


[*]审计功能后端已经完成, 前端还在开发中


[*]自动部署软件,开发中


1
2
3
4
5
总结:
      对于运维来说,以前意味着加班,加点。任务量大,其实很大一部分都是重复的工作,所以效率极低
      当问题出现的时候,通常是把自己搞的手忙脚乱,尤其是在服务器众多的情况之下
      就算没有更多的工作任务,但也是需要经常熬夜部署上线服务,比如Tomcat部署Weblogic,因为这个只有在无人使用的时候才能做的变更
      安全得不到保障,当服务器出现了问题,往往不知从何插手,因为安全记录是在太分散





1
2
3
4
CheungSSH带来的福音:
       代替人工管理服务器
       自动化的对服务器进行操作
       所有的操作都将被记录, 并提供审计





1
2
3
最后:
    彻底解放运维人员的双手!
    进一步解放了社会主义的劳动生产力,当然也就提高了我们的综合国力。




CheungSSH中国人自主研发的Linux运维自动化管理服务器软件,管理上千台服务器,自动化运维软件,批量管理服务器,管理Linux服务器软件,Web执行命令,上传下载文件,添加计划任务,运维自动化软件,工具平台,运维人员必备,系统管理员必备软件 SSH登录,安全速度快,中国的Ansible,Slatstack,Puppet CheungSSH 中国人自主研发的Linux运维自动化管理服务器软件 管理上千台服务器 自动化运维软件 批量管理服务器 管理Linux服务器软件 Web执行命令, 上传下载文件, 添加计划任务 运维自动化软件 工具 平台 运维人员必备,系统管理员必备软件 SSH登录 安全 速度快 中国的Ansible Slatstack Puppet

页: [1]
查看完整版本: CheungSSH自动化运维工具比Ansible Saltstack更经典史上最强大的的批量自动化管理工具 管理上千台服务器