如何使用NetData在Ubuntu 16.04上监视Nginx

Netdata是一款用于Linux服务器的开源监控工具。 它提供实时性能和健康监测与美丽的仪表板和分析。 Netdata应该在任何Linux发行版上运行,它已经在Alpine Linux,Arch Linux,CentOS,Ubuntu等上进行了测试。它正在监视CPU,内存使用情况,IPv4和v6等用户应用程序,如Nginx,fail2ban,MySQL,MongoDB等。

在本教程中,我将向您展示如何使用Netdata监视Nginx。 本教程将介绍Nginx Web服务器安装,启用Nginx中的“stub_status”模块和Ubuntu 16.04 Xenial Xerus上的Netdata安装。

我们将要做什么:

  1. 安装Nginx Webserver。
  2. 在Ubuntu 16.04上安装Netdata监控工具。
  3. 启用Nginx'stub_status'模块。
  4. 配置Netdata监视Nginx。
  5. 配置UFW防火墙
  6. 测试。

条件

  • Ubuntu 16.04服务器
  • 根权限

第1步 - 安装Nginx Webserver

我们需要做的第一步是从存储库安装Nginx Web服务器。 使用apt update命令安装Nginx之前更新Ubuntu存储库。

apt update

从Ubuntu存储库中使用apt install命令安装Nginx。

apt install -y nginx

安装完成后,启动Nginx并将其添加到启动时使用systemctl命令自动启动。

systemctl start nginx
systemctl enable nginx

网络服务器正在运行,请检查Curl。

curl -I localhost

确保您的结果是“200 OK”http状态,如下面的屏幕快照。

已安装Nginx Web服务器。

第2步 - 在Ubuntu 16.04上安装Netdata监控工具

在此步骤中,我们将从源安装Netdata监视工具。 我将使用提供的安装手动安装。 在安装Netdata之前,我们需要安装一些需要的软件包。

使用apt install命令安装Netdata安装所需的软件包。

apt install -y zlib1g-dev uuid-dev libmnl-dev gcc make git autoconf autoconf-archive autogen automake pkg-config curl

安装所有软件包后,使用git命令从github下载Netdata的源代码。

git clone https://github.com/firehol/netdata.git --depth=1

转到'netdata'目录,并使用sudo权限运行安装脚本'netdata-installer.sh'。

cd netdata/
sudo ./netdata-installer.sh

按“Enter”继续安装Netdata。

安装完成后,您将得到以下结果。

Netdata监控工具为systemd系统提供服务脚本。 启动netdata并添加在启动时自动运行使用下面的systemctl命令。

systemctl start netdata
systemctl enable netdata

默认情况下,它在端口19999上运行,使用netstat检查端口,并确保您的端口19999处于“LISTEN”状态。

netstat -plntu

Netdata监控工具已安装。

第3步 - 启用Nginx'stub_status'模块

要使用Netdata监视工具监视Nginx Web服务器,我们需要一些额外的配置。 Fisrt,我们必须启用nginx'stub_status'模块到虚拟主机配置。

在编辑虚拟主机配置之前,请确保已经安装了一个带有'stub_status'模块的nginx版本。 用下面的命令检查它。

nginx -V

确保你有一个'stub_status'模块如下。

接下来,转到nginx配置目录并使用vim编辑器编辑“默认”虚拟主机文件。

cd /etc/nginx/sites-available/
vim default

将下面的配置粘贴到' server {} '块。

    location /stub_status {
        stub_status;
        # Security: Only allow access from the IP below.
        allow 127.0.0.1;
        # Deny anyone else
        deny all;
    }

保存并退出。

测试nginx配置,并确保出现错误并重新启动nginx服务。

nginx -t
systemctl restart nginx

Nginx'stub_status'模块已启用,请使用下面的netstat命令进行检查。

curl http://127.0.0.1/stub_status

你会得到如下结果。

第4步 - 配置Netdata监视Nginx

Netdata提供了用于监控系统上已安装应用程序的Python模块,包括Nginx Web服务器。 要使用Netdata监视Nginx,我们需要使用Nginx模块“stub_status”,并且已经启用。

现在去netdata配置目录。 然后在python.d目录中编辑nginx.conf文件。

cd /etc/netdata/
vim python.d/nginx.conf

确保您具有如下配置。

localhost:
  name : 'local'
  url  : 'http://localhost/stub_status'

保存文件并退出vim。

现在使用systemctl重新启动Netdata。

systemctl restart netdata

Nginx监控的Netdata配置已经完成。

第5步 - 配置UFW防火墙

在本教程中,我将启用Ubuntu防火墙UFW。 我将打开HTTP和HTTPS端口,然后为Netdata Dashboard访问打开新的端口19999。

确保已经安装了UFW防火墙包,如果没有,请使用以下命令进行安装。

apt install -y ufw

现在使用下面的'ufw allow'命令打开ssh,http,https和netdata port 19999的端口。

ufw allow ssh
ufw allow http
ufw allow https
ufw allow 19999/tcp

接下来,启动UFW防火墙并将其添加到启动时自动启动。

ufw enable

键入' y '为yes,然后按'Enter'键。

完成此操作后,请检查防火墙状态如下。

ufw status

而您将在下面列出新端口。

第6步 - 测试

打开浏览器并输入端口19999的服务器地址。

http://192.168.1.11:19999/

您应该看到Netdata仪表板。

点击右边的“nginx本地”,并查看Nginx活动连接,请求,状态和连接速率。

Nginx Web服务器现在使用Netdata进行监控,Netdata已经安装在Ubuntu 16.04服务器上。

参考

赞(52) 打赏
未经允许不得转载:优客志 » 系统运维
分享到:

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

微信扫一扫打赏