发现bootstrap挺火的,趁着新项目还未上线,自己也把后台改成了bootstrap.由于时间仓促,暂时只实现了部分主要功能,以后功能做出来会定期更新.
下面的讲解主要是游戏中的清档和装服,还有自己写的一个syslog日志系统.因为对于webgame运维来说,最主要的就是清档和装服了,所以首先实现的这一块的功能.以后会慢慢添加监控还有批量执行命令、补丁、批量分发文件等功能.
监控这一块自己的想法是自己利用Python写一个agent,把数据发送到WEB这台机器上面,然后通过highcharts绘图.
之所以不用cacti的原因是,自己想监控的东西只有内存,CPU,硬盘等硬件信息,觉得想监控的东西不是很多,没有必要用cacti.还有就是喜欢用自己的东西,感觉更有成就感.
好了,废话不多说,直接上图解.如果有想交流的可以加群:330639584
下面是项目中的部分图解:
一个不错的项目(psdash),能清楚的返回机器的性能情况..而且每3秒钟会自动刷新,我自己改成了5秒.类似top吧.
一个设备信息管理,,可以看到每台机器的硬件信息,,实时监控就是上图的psdash,,历史监控用的是monitorix,类似cacti..能查询到服务器的性能使用情况,网络流量,等..同时也能查询到一些服务的流量等(mysql, ssh, ftp等).
以前修改客户端参数,,运营总需要到各个代理的分后台去修改游戏参数..为了他们方便,,自己写了一个统一接口...通过查询可以查询到所有代理所有服的相应参数,,然后点击修改按钮直接修改即可..写接口的时候出现了一个问题,,因为修改参数的时候,我是用sed修改的,,当参数值有特殊符号&的时候,,就会修改多次..这里感谢许培源找出的问题..
装服这一块的话,就是自己这堡垒机搭建了一个tornado TCPserver.这把WEB数据会发送一条安装数据过去,然后tcpServer就会执行相应的装服命令. 没有用Python socket搭建tcpServer是因为以前使用的时候经常会莫名其妙的卡死,ZeroMQ又需要返回数据给发送方.而且用tornado的另外一个好处就是与HTML的WEBSOCKET交互时特别方便.
清档其实还是挺方便的,当你想清某一天的所有服的数据时,先Search那一天,然后只需点击全选然后点击下面的清档按钮即可实现按天清档.
写个统一的日志系统,我觉得还是很有必要的.将所有服务器的rsyslog日志发送到统一的日志系统上,在WEB上面统一查询.可指定日志日期和服务器地址进行查询.
执行命令这块抄袭的triaquae的,感觉页面还是有点丑.而且会继续完善.
主要用的一些框架和模块是: Django、tornado、bootstrap、jQuery等.
来源:oschina
链接:https://my.oschina.net/u/4406280/blog/4293949