Netdata - Linux 系统的实时性能监控工具
netdata 是一款极其优化的 Linux 实用程序,可为 Linux 系统、应用程序、SNMP 设备等提供实时(每秒)性能监控,并显示完整的交互式图表,绝对呈现通过网络收集的所有值浏览器来分析它们。
不要错过: 20 个监控 Linux 性能的有用命令行工具
它被开发为可以安装在每个 Linux 系统上,而不会中断其上当前正在运行的应用程序。您可以使用此工具来监控并概述 Linux 系统和应用程序上实时发生的情况以及刚刚发生的情况。
这是它监控的内容:
- 总和每核 CPU 使用率、中断、软中断和频率。
- 总内存、RAM、交换和内核使用情况。
- 磁盘 I/O(每个磁盘:带宽、操作、积压、利用率等)。
- 监控网络接口,包括:带宽、数据包、错误、丢弃等。
- 监控 Netfilter/iptables Linux 防火墙连接、事件、错误等。
- 进程(运行、阻塞、分叉、活动等)。
- 具有进程树的系统应用程序(CPU、内存、交换、磁盘读/写、线程等)。
- 使用 mod_status 监控 Apache 和 Nginx 状态。
- MySQL数据库监控:查询、更新、锁定、问题、线程等。
- Postfix 电子邮件服务器消息队列。
- Squid 代理服务器带宽和请求监控。
- 硬件传感器(温度、电压、风扇、功率、湿度等)。
- SNMP 设备。
Linux 系统上的 netdata 安装
最新版本的netdata可以轻松安装在Arch Linux、Gentoo Linux、Solus Linux和上Alpine Linux 使用包管理器,如图所示。
sudo pacman -S netdata [Install Netdata on Arch Linux]
sudo emerge --ask netdata [Install Netdata on Gentoo Linux]
sudo eopkg install netdata [Install Netdata on Solus Linux]
sudo apk add netdata [Install Netdata on Alpine Linux]
在 Debian/Ubuntu 和 RHEL/CentOS/Fedora 上,有一行安装脚本可以安装最新的 netdata 并保持最新自动地。
bash <(curl -Ss https://my-netdata.io/kickstart.sh [On 32-bit]
bash <(curl -Ss https://my-netdata.io/kickstart-static64.sh) [On 64-bit]
上述脚本将:
- 发现发行版并安装构建 netdata 所需的软件包(将要求确认)。
- 将最新的 netdata 源树下载到 /usr/src/netdata.git。
- 通过从源代码树执行
./netdata-installer.sh
来安装 netdata。 - 将
netdata-updater.sh
安装到 cron.daily,因此您的 netdata 将每天更新(仅当更新失败时您才会收到来自 cron 的警报)。
注意:kickstart.sh
脚本将其所有参数传递给 netdata-installer.sh
,因此您可以定义更多参数来修改安装源、启用/禁用插件等。
或者,您也可以通过克隆其存储库来手动安装最新的 netdata,但在开始安装 netdata 之前,请确保系统上安装了这些基本构建环境包,如果没有使用各自的发行版安装它包管理器如图:
在 Debian/Ubuntu 上
apt-get install zlib1g-dev gcc make git autoconf autogen automake pkg-config
在 Centos/Redhat/Fedora 上
yum install zlib-devel gcc make git autoconf autogen automake pkgconfig
接下来,从 git 克隆 netdata 存储库并运行 netdata 安装程序脚本来构建它。
git clone https://github.com/firehol/netdata.git --depth=1
cd netdata
./netdata-installer.sh
注意:netdata-installer.sh
脚本将构建 netdata 并将其安装在您的 Linux 系统上。
netdata 安装程序完成后,将在您的系统中创建文件 /etc/netdata/netdata.conf
。
现在是时候通过从终端执行以下命令来启动 netdata 了。
/usr/sbin/netdata
您还可以通过使用killall命令终止netdata进程来停止它,如图所示。
killall netdata
注意:退出时Netdata会将其循环数据库信息保存在/var/cache/netdata
文件下,以便当您再次启动时netdata,将从上次停止的地方继续。
启动并测试 netdata
现在打开浏览器并导航到以下地址以访问所有图表的网站:
http://127.0.0.1:19999/
观看演示如何进行实时 Linux 性能监控的视频:https://www.youtube.com/watch?v=QIZXS8A4BvI
您还可以随时查看netdata的运行配置,方法是:
http://127.0.0.1:19999/netdata.conf
更新网络数据
您可以通过进入之前下载的 netdata.git
目录并运行以下命令将 netdata 守护进程更新到最新版本:
cd /path/to/netdata.git
git pull
./netdata-installer.sh
上述netdata安装程序脚本将构建新版本并重新启动netdata。
参考: https://github.com/firehol/netdata/