年前最后一弹, Linux 性能检测工具开源项目推荐

2019-01-30 09:07:42 +08:00
 tianshiyeben

https://github.com/tianshiyeben/wgcloud

WGCLOUD

linux 性能监测工具,运维监控,网络吞吐率,服务器 cpu 监控,内存监控。

依赖环境

1.JDK1.8

2.tomcat8.5+

3.mysql5.6+

4.CentOS6.4 或以上,Red Hat6.4 或以上,其他系统暂不支持

5.检测被监控的 HOST 主机是否已经安装 sysstat,如下信息说明已经安装,如果没有请通过 yum install sysstat 安装

[root@localhost ~]# mpstat
Linux 3.10.0-514.el7.x86_64 (localhost.localdomain) 	2019 年 01 月 10 日 	_x86_64_	(4 CPU)

13 时 40 分 26 秒  CPU    %usr   %nice    %sys %iowait    %irq   %soft  %steal  %guest  %gnice   %idle
13 时 40 分 26 秒  all    0.60    0.00    0.19    0.16    0.00    0.03    0.00    0.00    0.00   99.02

源码使用

用 eclispe 新建一个 web maven 工程,使用 src 来替换新建工程的 src 目录,使用 pom.xml 替换新建工程里的 pom.xml ,设置好 jdk 即可。

sql 文件夹是数据库创建脚本,在 mysql 新建名为 dats 的数据库,执行 dats.sql 脚本

application.properties,配置数据库链接信息

host.properties,配置监控服务器信息,格式为 ip=端口 //用户名 //密码,可以配置多个,尽量不要使用 root 账号

因为本应用会通过配置的 host.properties 信息来从目标服务器获取运行状态,所以被监控的服务器不需要安装本应用。

监控指标

%usr:用户态的 CPU 时间(%)
%sys:核心时间(%))
%idle:空闲时间(%)
%iowait:IO 等待时间(%)
rxpck/s:每秒钟接收的数据包
txpck/s:每秒钟发送的数据包
rxkB/s:每秒钟接收的 kb
txkB/s:每秒钟发送的 kb
active/s:每秒本地发起的 TCP 连接数,既通过 connect 调用创建的 TCP 连接
passive/s:每秒远程发起的 TCP 连接数,即通过 accept 调用创建的 TCP 连接
%CPU:进程占用 CPU 的使用率
%MEM:进程使用的物理内存和总内存的百分比
r/s, w/s, rkB/s, wkB/s:分别表示每秒读写次数和每秒读写数据量(千字节)。读写量过大,可能会引起性能问题。
await:IO 操作的平均等待时间,单位是毫秒。这是应用程序在和磁盘交互时,需要消耗的时间,包括 IO 等待和实际操作的耗时。
如果这个数值过大,可能是硬件设备遇到了瓶颈或者出现故障。
avgqu-sz:向设备发出的请求平均数量。如果这个数值大于 1,可能是硬件设备已经饱和(部分前端硬件设备支持并行写入)。
%util:设备利用率。这个数值表示设备的繁忙程度,经验值是如果超过 60,可能会影响 IO 性能(可以参照 IO 操作平均等待时间)。
如果到达 100%,说明硬件设备已经饱和。

连接失败的服务器信息怎么删除

服务器每 3 天会清空连接失败的服务器信息,所以 3 天后你就看不到连接失败的服务器信息了。目前暂不支持手动操作,全部由系统自动处理。

同时系统会定时清除 30 天前的监控信息。

告警提示规则

系统内存使用率阈值 99%,超过发送邮件,24 小时不会重复发。

进程内存监控报警百分比阈值 99%,超过发送邮件,24 小时不会重复发。

进程 CPU 使用率监控报警百分比阈值 99%,超过发送邮件,24 小时不会重复发。

若不想接受告警通知,可在 applications.properties 里,关闭提示。

访问地址

http://localhost:9000/wgcloud

登陆账号 /密码:admin/111111

tomcat 下可运行的安装包请加 qq 群后,在群文件下载

联系

QQ 群:623503772

4449 次点击
所在节点    程序员
26 条回复
dazhangpan
2019-01-30 10:30:46 +08:00
挺好的,顺便抛个砖:

监控类工具做得再轻量再好看如果内容仍是传统的那些指标也已经不容易占领市场了,个人浅见需要向专门化发展:e.g.CPU 除了占用率之外还需要 PMU 的数据支持诊断程序性能瓶颈,或者通过对 PMU 的分析学习诊断服务器有没有被病毒感染,以及在云计算时代提供对 noisy neighbour 的探测和防护等。总之如果能通过监控解决运维之上的“业务”问题,比较容易在这个领域独树一帜。
tianshiyeben
2019-01-30 10:39:03 +08:00
@lihongjie0209 嗯,建议很中肯
@dazhangpan 嗯,你很专业啊。现在还没想过市场,想的是总有人需要的,就放出来了
@jiangnanyanyu 是的,是挺难受
notreami
2019-01-30 10:45:08 +08:00
有点伤感,现在看到 jsp,第一个想法是:不想看,这个已经不流行了。
tianshiyeben
2019-01-30 10:45:34 +08:00
zhouyut001
2019-01-30 13:25:54 +08:00
太麻烦了,还不如用 netdata,一样开源
mogging
2019-01-30 15:44:43 +08:00
主机运维工具相对好做一点,想要一个 devops dashboard 这种,目前好像知道只有一个开源货叫做 Hygieia 相当不靠谱,不知道这里的大佬有没有推荐的

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/531766

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX