监控界的极致酷炫-Netdata

  • 2019 年 12 月 2 日
  • 筆記

很多公司都使用界面化的监控工具,很酷炫,这说明,监控这块我们几乎都会接触到,大家是有想法的,其次在不同的目的下,选择不同的工具有着不同的目的,今天这篇文章我就给大家介绍酷炫的图形化监控小军刀netdata的使用。

首先了解一下netdata特性,它最大的特性我想用一个概括就是零,怎么理解呢?

1.零配置:安装后netdata会自动的监测一切,不仅仅是硬件,包括代理,中间件,数据库,一网打尽;

2.零依赖:netdata有自己的web server, 提供静态web文件,无须集成插件;

3.零维护:只要正常运行,无须特殊维护;

Netdata用可视化的手段,将被监测者最细微的细节,展现了出来。这样便可以清晰地了解linux系统和应用程序此时的状况。

1.优美的界面:bootstrap框架下的控制界面

2.自定义的控制界面:你可以使用简单的HTML代码去自定义控制界面(不需要使用javascript)

3.极其的快速而高效:程序使用C进行编写(默认安装下,预计只有2%的单核CPU使用 率和少许的内存使用率)

4.可扩展:用它自身的插件API(可以使用许多方式来制作它的插件,从bash到node.js),你可以检测任何可以衡量的数据。

5.可嵌入:它可以在任何Linux内核可以运行的地方运行

监测内容:下面是Netdata目前检测的内容

1.CPU的使用率,中断,软中断和频率(总量和每个单核)

2.RAM,互换和内核内存的使用率(包括KSM和内核内存deduper)

3.硬盘输入/输出(每个硬盘的带宽,操作,整理,利用等)

4.IPv4网络(数据包,错误,分片):TCP:连接,数据包,错误,握手

UDP:数据包,错误 广播:带宽,数据包 ,带宽,数据包

5.Netfilter/iptables Linux防火墙(连接,连接跟踪事件,错误等)

6.进程(运行,受阻,分叉,活动等)

7.网络服务质量(唯一一个可实时可视化网络状况的工具)

8.应用程序,通过对进程树进行分组

9.Apache,nginx

10.Mysql数据库(多台服务器,单个显示:带宽,查询/s, 处理者,锁,问题,临时操作,连接,二进制日志,线程,innodb引擎等)

centos下安装

  • 下载netdata插件,安装依赖列表(资源自行搜索或文末联系作者)
  • cd netdata
  • ./netdata-installer.sh

安装依赖内容较多,有问题需耐心排查

最终出现的界面如下:

或者查看netdata状态:

直接用浏览器访问(http://127.0.0.1:19999),19999是默认端口号,127.0.0.1可以换成你自己的ip

所有的图都是动图:

Net:

Mem

Cs:

软中断:

该监控不仅仅对服务器硬件,对服务也进行了监控,比如mysql,redis等等,在服务右侧有一块列表,显示了你服务器上可监控的部署应用节点:

我以mysql为例展示下监控数据:

data sent:

queries:

table locks:

join issue: