java - linux运维系统怎么编写
高洛峰
高洛峰 2017-04-18 09:41:19
0
3
589

最近做些运维的工作,经常碰到磁盘不足、cpu过高、或者某个服务未启动。想用java写一个web界面来管理,以及展示一些图表, 用python来采集数据到数据库。 有没做过类似的,希望给出点意见给我。我应当怎么做。

技术体系,实现思路都可以

高洛峰
高洛峰

拥有18年软件开发和IT教学经验。曾任多家上市公司技术总监、架构师、项目经理、高级软件工程师等职务。 网络人气名人讲师,...

Antworte allen(3)
左手右手慢动作

简单来说可以采用两种方式:
1、远程采集方式
使用Python通过ssh等方式登录被管机,执行各种命令,采集数据,写入数据库,待JavaWeb展示
需要解决Python执行命令并获取数据的问题
优点是不侵入被控机,不占用被控机资源(cpu、内存)
缺点就是可能功能有限
2、Agent方式
分服务程序和Agent程序,服务程序负责调度和通讯,Agent程序负责采集数据,在被控机安装Agent程序,实现采集数据,通过socket等方式传回服务程序,写入数据库,待JavaWeb展示。
优点是功能可以很强大
缺点就是实现较复杂,需要解决通信问题,占用被控机资源

简单思路

PHPzhong

可以试试Ansible, Ansible的社区很活跃, 功能很多, 更可以开发自己的插件.
算是1楼方式一的实现

迷茫

java使用字节码增强的方式,获取服务器进程甚至是 java method的运行状态以及服务器监控指标,然后上传到 采集服务器,用python进行数据分析科学计算,展示图表

Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage