标签 Netdata 下的文章

NetData 是一个用于系统和应用的分布式实时性能和健康监控工具。它提供了对系统中实时发生的所有事情的全面检测。你可以在高度互动的 Web 仪表板中查看结果。使用 Netdata,你可以清楚地了解现在发生的事情,以及之前系统和应用中发生的事情。你无需成为专家即可在 Linux 系统中部署此工具。NetData 开箱即用,零配置、零依赖。只需安装它然后坐等,之后 NetData 将负责其余部分。

它有自己的内置 Web 服务器,以图形形式显示结果。NetData 非常快速高效,安装后可立即开始分析系统性能。它是用 C 编程语言编写的,所以它非常轻量。它占用的单核 CPU 使用率不到 3%,内存占用 10-15MB。我们可以轻松地在任何现有网页上嵌入图表,并且它还有一个插件 API,以便你可以监控任何应用。

以下是 Linux 系统中 NetData 的监控列表。

  • CPU 使用率
  • RAM 使用率
  • 交换内存使用率
  • 内核内存使用率
  • 硬盘及其使用率
  • 网络接口
  • IPtables
  • Netfilter
  • DDoS 保护
  • 进程
  • 应用
  • NFS 服务器
  • Web 服务器 (Apache 和 Nginx)
  • 数据库服务器 (MySQL),
  • DHCP 服务器
  • DNS 服务器
  • 电子邮件服务
  • 代理服务器
  • Tomcat
  • PHP
  • SNP 设备
  • 等等

NetData 是自由开源工具,它支持 Linux、FreeBSD 和 Mac OS。

在 Linux 上安装 NetData

Netdata 可以安装在任何安装了 Bash 的 Linux 发行版上。

最简单的安装 Netdata 的方法是从终端运行以下命令:

$ bash <(curl -Ss https://my-netdata.io/kickstart-static64.sh)

这将下载并安装启动和运行 Netdata 所需的一切。

有些用户可能不想在没有研究的情况下将某些东西直接注入到 Bash。如果你不喜欢此方法,可以按照以下步骤在系统上安装它。

在 Arch Linux 上

Arch Linux 默认仓库中提供了最新版本。所以,我们可以使用以下 pacman 命令安装它:

$ sudo pacman -S netdata

在基于 DEB 和基于 RPM 的系统上

在基于 DEB (Ubuntu / Debian)或基于 RPM(RHEL / CentOS / Fedora) 系统的默认仓库没有 NetData。我们需要从它的 Git 仓库手动安装 NetData。

首先安装所需的依赖项:

# Debian / Ubuntu
$ sudo apt-get install zlib1g-dev uuid-dev libuv1-dev liblz4-dev libjudy-dev libssl-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl

# Fedora
$ sudo dnf install zlib-devel libuuid-devel libuv-devel lz4-devel Judy-devel openssl-devel libmnl-devel gcc make git autoconf autoconf-archive autogen automake pkgconfig curl findutils

# CentOS / Red Hat Enterprise Linux
$ sudo yum install epel-release
$ sudo yum install autoconf automake curl gcc git libmnl-devel libuuid-devel openssl-devel libuv-devel lz4-devel Judy-devel lm_sensors make MySQL-python nc pkgconfig python python-psycopg2 PyYAML zlib-devel

# openSUSE
$ sudo zypper install zlib-devel libuuid-devel libuv-devel liblz4-devel judy-devel openssl-devel libmnl-devel gcc make git autoconf autoconf-archive autogen automake pkgconfig curl findutils

安装依赖项后,在基于 DEB 或基于 RPM 的系统上安装 NetData,如下所示。

Git 克隆 NetData 仓库:

$ git clone https://github.com/netdata/netdata.git --depth=100

上面的命令将在当前工作目录中创建一个名为 netdata 的目录。

切换到 netdata 目录:

$ cd netdata/

最后,使用命令安装并启动 NetData:

$ sudo ./netdata-installer.sh

示例输出:

Welcome to netdata!
Nice to see you are giving it a try!

You are about to build and install netdata to your system.

It will be installed at these locations:

- the daemon at /usr/sbin/netdata
 - config files at /etc/netdata
 - web files at /usr/share/netdata
 - plugins at /usr/libexec/netdata
 - cache files at /var/cache/netdata
 - db files at /var/lib/netdata
 - log files at /var/log/netdata
 - pid file at /var/run

This installer allows you to change the installation path.
Press Control-C and run the same command with --help for help.

Press ENTER to build and install netdata to your system > ## Press ENTER key

安装完成后,你将在最后看到以下输出:

-------------------------------------------------------------------------------

OK. NetData is installed and it is running (listening to *:19999).

-------------------------------------------------------------------------------

INFO: Command line options changed. -pidfile, -nd and -ch are deprecated.
If you use custom startup scripts, please run netdata -h to see the
corresponding options and update your scripts.

Hit http://localhost:19999/ from your browser.

To stop netdata, just kill it, with:

killall netdata

To start it, just run it:

/usr/sbin/netdata


Enjoy!

Uninstall script generated: ./netdata-uninstaller.sh

安装 NetData

NetData 已安装并启动。

要在其他 Linux 发行版上安装 Netdata,请参阅官方安装说明页面

在防火墙或者路由器上允许 NetData 的默认端口

如果你的系统在防火墙或者路由器后面,那么必须允许默认端口 19999 以便从任何远程系统访问 NetData 的 web 界面。

在 Ubuntu/Debian 中

$ sudo ufw allow 19999

在 CentOS/RHEL/Fedora 中

$ sudo firewall-cmd --permanent --add-port=19999/tcp

$ sudo firewall-cmd --reload

启动/停止 NetData

要在使用 Systemd 的系统上启用和启动 Netdata 服务,请运行:

$ sudo systemctl enable netdata
$ sudo systemctl start netdata

要停止:

$ sudo systemctl stop netdata

要在使用 Init 的系统上启用和启动 Netdata 服务,请运行:

$ sudo service netdata start
$ sudo chkconfig netdata on

要停止:

$ sudo service netdata stop

通过 Web 浏览器访问 NetData

打开 Web 浏览器,然后打开 http://127.0.0.1:19999 或者 http://localhost:19999/ 或者 http://ip-address:19999。你应该看到如下页面。

Netdata 仪表板

在仪表板中,你可以找到 Linux 系统的完整统计信息。向下滚动以查看每个部分。

你可以随时打开 http://localhost:19999/netdata.conf 来下载和/或查看 NetData 默认配置文件。

Netdata 配置文件

更新 NetData

在 Arch Linux 中,只需运行以下命令即可更新 NetData。如果仓库中提供了更新版本,那么就会自动安装该版本。

$ sudo pacman -Syyu

在基于 DEB 或 RPM 的系统中,只需进入已克隆它的目录(此例中是 netdata)。

$ cd netdata

拉取最新更新:

$ git pull

然后,使用命令重新构建并更新它:

$ sudo ./netdata-installer.sh

卸载 NetData

进入克隆 NetData 的文件夹。

$ cd netdata

然后,使用命令卸载它:

$ sudo ./netdata-uninstaller.sh --force

在 Arch Linux 中,使用以下命令卸载它。

$ sudo pacman -Rns netdata

资源


via: https://www.ostechnix.com/netdata-real-time-performance-monitoring-tool-linux/

作者:sk 选题:lujun9972 译者:geekpi 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出

Netdata 是一个实时的资源监控工具,它拥有基于 web 的友好界面,由 FireHQL 开发和维护。通过这个工具,你可以通过图表来了解 CPU,RAM,硬盘,网络,Apache, Postfix 等软硬件的资源使用情况。它很像 Nagios 等别的监控软件;但是,Netdata 仅仅支持通过 Web 界面进行实时监控。

了解 Netdata

目前 Netdata 还没有验证机制,如果你担心别人能从你的电脑上获取相关信息的话,你应该设置防火墙规则来限制访问。UI 很简单,所以任何人看懂图形并理解他们看到的结果,至少你会对它的快速安装印象深刻。

它的 web 前端响应很快,而且不需要 Flash 插件。 UI 很整洁,保持着 Netdata 应有的特性。第一眼看上去,你能够看到很多图表,幸运的是绝大多数常用的图表数据(像 CPU,RAM,网络和硬盘)都在顶部。如果你想深入了解图形化数据,你只需要下滑滚动条,或者点击在右边菜单的项目。通过每个图表的右下方的按钮, Netdata 还能让你控制图表的显示,重置,缩放。

Netdata 图表控制

Netdata 并不会占用多少系统资源,它占用的内存不会超过 40MB。因为这个软件是作者用 C 语言写的。

Netdata 显示的内存使用情况

下载 Netdata

要下载这个软件,你可以访问 Netdata 的 GitHub 页面,然后点击页面左边绿色的 "Clone or download" 按钮 。你应该能看到以下两个选项:

通过 ZIP 文件下载

一种方法是下载 ZIP 文件。它包含仓库里的所有东西。但是如果仓库更新了,你需要重新下载 ZIP 文件。下载完 ZIP 文件后,你要用 unzip 命令行工具来解压文件。运行下面的命令能把 ZIP 文件的内容解压到 netdata 文件夹。

$ cd ~/Downloads
$ unzip netdata-master.zip

解压 Netdata

没必要在 unzip 命令后加上 -d 选项,因为文件都是放在 ZIP 文件的根文件夹里面。如果没有那个文件夹, unzip 会把所有东西都解压到当前目录下面(这会让文件非常混乱)。

通过 Git 下载

还有一种方式是通过 git 下载整个仓库。当然,你的系统需要安装 git。Git 在 Fedora 系统是默认安装的。如果没有安装,你可以用下面的命令在命令行里安装 git。

$ sudo dnf install git

安装好 git 后,你要把仓库 “clone” 到你的系统里。运行下面的命令。

$ git clone https://github.com/firehol/netdata.git

这个命令会在当前工作目录克隆(或者说复制一份)仓库。

安装 Netdata

有些软件包是你成功构造 Netdata 时候需要的。 还好,一行命令就可以安装你所需要的东西(这写在它的安装文档中)。在命令行运行下面的命令就能满足安装 Netdata 需要的所有依赖关系。

$ dnf install zlib-devel libuuid-devel libmnl-devel gcc make git autoconf autogen automake pkgconfig

当所有需要的软件包都安装好了,你就 cd 到 netdata/ 目录,运行 netdata-installer.sh 脚本。

$ sudo ./netdata-installer.sh

然后就会提示你按回车键,开始安装程序。如果要继续的话,就按下回车吧。

Netdata 的安装

如果一切顺利,你的系统上就已经安装并且运行了 Netdata。安装脚本还会在相应的文件夹里添加一个卸载脚本,叫做 netdata-uninstaller.sh。如果你以后不想使用 Netdata,运行这个脚本可以从你的系统里面卸载掉 Netdata。

你可以通过 systemctl 查看它的运行状态。

$ sudo systemctl status netdata

使用 Netdata

既然我们已经安装并且运行了 Netdata,你就能够通过 19999 端口来访问 web 界面。下面的截图是我在一个测试机器上运行的 Netdata。

关于 Netdata 运行时的概览

恭喜!你已经成功安装并且能够看到漂亮的外观和图形,以及你的机器性能的高级统计数据。无论是否是你个人的机器,你都可以向你的朋友们炫耀,因为你能够深入的了解你的服务器性能,Netdata 在任何机器上的性能报告都非常出色。


via: https://fedoramagazine.org/monitor-linux-netdata/

作者:Martino Jones 译者:GitFuture 校对:wxy

本文由 LCTT 原创编译,Linux中国 荣誉推出