【Linux性能实时监测工具-Netdata】

Linux性能实时监测工具-Netdata,它是Linux系统实时性能监测工具,以web的可视化方式展示系统及应用程序的实时运行状态(包括cpu、内存、硬盘输入/输出、网络等linux性能的数据)。Netdata的web前端响应很快,而且不需要Flash插件。 UI很整洁,保持着 Netdata 应有的特性。第一眼看上去,你能够看到很多图表,幸运的是绝大多数常用的图表数据(像 CPU,RAM,网络和硬盘)都在顶部。如果你想深入了解图形化数据,你只需要下滑滚动条,或者点击在右边菜单的项目。通过每个图表的右下方的按钮,Netdata还能控制图表的显示,重置,缩放

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

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

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

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

零配置:你只需要去安装它,接着它就会自动地监测一切数据

零依赖:它的静态网络文件和网络接口拥有自己的网络服务器

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

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



 

监测内容:下面是Netdata目前检测的内容(大多数都不需要进行配置,安装后即可开始监测)

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

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

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

4.IPv4网络(数据包,错误,分片):

TCP:连接,数据包,错误,握手

UDP:数据包,错误

广播:带宽,数据包

组播:带宽,数据包

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

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

7.NFS文件服务器,v2,v3,v4(输入/输出,缓存,预读,RPC调用)

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

9.应用程序,通过对进程树进行分组(CPU,内存,硬盘读取,硬盘写入,交换,线程,管道,套接字等)

10.Apache Web服务器状态(v2.2, v2.4)

11.Nginx Web服务器状态

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

13.ISC Bind域名服务器(多个服务器,单个显示:客户,请求,查询,更新,失败等)

14.Postfix邮件服务器的消息队列(条目,大小)

15.Squid代理服务器(客户带宽和请求,服务带宽和请求)

16.硬件传感器(温度,电压,风扇,电源,湿度等)

17.NUT UPSes(负载,充电,电池电压,温度,使用指标,输出指标)

可以监测任意数量的SNMP服务,不过你需要进行配置,还可以对此软件进行扩展,可以使用任何语言编写插件,以此来从任何来源收集数据



 

What does it monitor?

netdata collects several thousands of metrics per device. All these metrics are collected and visualized in real-time.

Almost all metrics are auto-detected, without any configuration.

This is a list of what it currently monitors:

  • CPU
    usage, interrupts, softirqs, frequency, total and per core, CPU states

  • Memory
    RAM, swap and kernel memory usage, KSM (Kernel Samepage Merging), NUMA

  • Disks
    per disk: I/O, operations, backlog, utilization, space, software RAID (md)

  • Network interfaces
    per interface: bandwidth, packets, errors, drops
  • IPv4 networking
    bandwidth, packets, errors, fragments, tcp: connections, packets, errors, handshake, udp: packets, errors, broadcast: bandwidth, packets, multicast: bandwidth, packets

  • IPv6 networking
    bandwidth, packets, errors, fragments, ECT, udp: packets, errors, udplite: packets, errors, broadcast: bandwidth, multicast: bandwidth, packets, icmp: messages, errors, echos, router, neighbor, MLDv2, group membership, break down by type

  • Interprocess Communication - IPC
    such as semaphores and semaphores arrays

  • netfilter / iptables Linux firewall
    connections, connection tracker events, errors

  • Linux DDoS protection
    SYNPROXY metrics

  • fping latencies
    for any number of hosts, showing latency, packets and packet loss

  • Processes
    running, blocked, forks, active

  • Entropy
    random numbers pool, using in cryptography

  • NFS file servers and clients
    NFS v2, v3, v4: I/O, cache, read ahead, RPC calls

  • Network QoS
    the only tool that visualizes network tc classes in realtime

  • Linux Control Groups
    containers: systemd, lxc, docker

  • Applications
    by grouping the process tree and reporting CPU, memory, disk reads, disk writes, swap, threads, pipes, sockets - per group

  • Users and User Groups resource usage
    by summarizing the process tree per user and group, reporting: CPU, memory, disk reads, disk writes, swap, threads, pipes, sockets

  • Apache and lighttpd web servers
    mod-status (v2.2, v2.4) and cache log statistics, for multiple servers

  • Nginx web servers
    stub-status, for multiple servers

  • Tomcat
    accesses, threads, free memory, volume

  • web server log files
    extracting in real-time, web server performance metrics and applying several health checks

  • mySQL databases
    multiple servers, each showing: bandwidth, queries/s, handlers, locks, issues, tmp operations, connections, binlog metrics, threads, innodb metrics, and more

  • Postgres databases
    multiple servers, each showing: per database statistics (connections, tuples read - written - returned, transactions, locks), backend processes, indexes, tables, write ahead, background writer and more

  • Redis databases
    multiple servers, each showing: operations, hit rate, memory, keys, clients, slaves

  • mongodb
    operations, clients, transactions, cursors, connections, asserts, locks, etc

  • memcached databases
    multiple servers, each showing: bandwidth, connections, items

  • elasticsearch
    search and index performance, latency, timings, cluster statistics, threads statistics, etc

  • ISC Bind name servers
    multiple servers, each showing: clients, requests, queries, updates, failures and several per view metrics

  • NSD name servers
    queries, zones, protocols, query types, transfers, etc.

  • Postfix email servers
    message queue (entries, size)

  • exim email servers
    message queue (emails queued)

  • Dovecot POP3/IMAP servers

  • ISC dhcpd
    pools utilization, leases, etc.

  • IPFS
    bandwidth, peers

  • Squid proxy servers
    multiple servers, each showing: clients bandwidth and requests, servers bandwidth and requests

  • HAproxy
    bandwidth, sessions, backends, etc

  • varnish
    threads, sessions, hits, objects, backends, etc

  • OpenVPN
    status per tunnel

  • Hardware sensors
    lm_sensors and IPMI: temperature, voltage, fans, power, humidity

  • NUT and APC UPSes
    load, charge, battery voltage, temperature, utility metrics, output metrics

  • PHP-FPM
    multiple instances, each reporting connections, requests, performance

  • hddtemp
    disk temperatures

  • smartd
    disk S.M.A.R.T. values

  • SNMP devices
    can be monitored too (although you will need to configure these)

  • statsd

猜你喜欢

转载自gaojingsong.iteye.com/blog/2393652