如何安装使用最帅Linux系统监控工具

作者:Linux迷
链接:https://www.linuxmi.com/netdata-ubuntu.html

Netdata是一个免费的开源实时监视和故障排除工具,用于云服务器,容器,应用程序和本地IT基础架构。它提供了高粒度和实时系统指标,例如CPU性能,内存和磁盘利用率以及带宽统计信息。
此外,Netdata还提供可在Web浏览器上访问的交互式度量可视化,以及有助于解决系统故障的智能警报。
在编写本指南时,Netdata已经在Github获得近50000个星。
您可以通过两种方式安装Netdata。您可以立即在BASH Shell上运行自动化脚本。这将更新您的系统并启动Netdata的安装。或者,您可以克隆Netdata的Git存储库,然后执行自动化脚本。第一种方法简单明了,这是我们在本指南中应重点关注的方法。
在本文中,我们将看到如何在Ubuntu上安装Netdata来监视服务器和应用程序的实时,性能以及运行状况监视。
支持平台
Netdata支持以下Ubuntu LTS发行版:
  • Ubuntu 20.04

  • Ubuntu 18.04

  • Ubuntu 16.04

如何在Ubuntu Linux中安装Netdata

要开始安装,请在bash终端上运行以下命令以下载并执行脚本。

linuxmi@linuxmi:~/www.linuxmi.com$ bash <(curl -Ss https://my-netdata.io/kickstart.sh)

在脚本执行期间,会发生以下情况:

  • 该脚本会自动发现您的Linux发行版,更新软件包列表,并安装所有必需的软件包。

  • 最新的netdata源树已下载到/usr/src/netdata.git路径。

  • 该脚本通过从源代码树运行./netdata-installer.sh脚本来安装netdata。

  • 对cron.daily进行了更新,以确保netdata每天进行更新。

在运行脚本时,将为您提供有关如何在浏览器上访问Netdata以及如何将其作为systemd服务进行管理的提示。

安装需要一段时间,大约10分钟后。当脚本完成安装时,您将得到下面的输出。

安装之后,启动、启用和验证Netdata的状态,如下所示。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl start netdata
[sudo] linuxmi 的密码:
linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl enable netdata
linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl status netdata

默认情况下,Netdata监听端口19999,可以使用netstat命令确认这一点,如下所示。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo netstat -pnltu | grep netdata

如果您正在运行UFW,请确保打开端口19999,因为在浏览器上访问Netdata时需要打开端口。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo ufw allow 19999/tcp
linuxmi@linuxmi:~/www.linuxmi.com$ sudo ufw reload

最后,要访问Netdata,请切换到浏览器并浏览以下URL

http://server-ip:19999/

一旦你浏览了这个URL,这就是迎接你的东西。实际上,不需密码就能登录。系统的所有度量将显示如下。

您可以通过单击仪表板右侧栏上的首选指标来浏览各种图形。例如,要查看网络接口统计信息,请点击“Network Interfaces”选项。

在Ubuntu上使用基本身份验证保护Netdata

在此之前,任何人都可以访问Netdata仪表板并查看各种系统指标。这意味着安全漏洞,我们绝对希望避免这种情况。

考虑到这一点,我们将配置基本的HTTP身份验证。我们需要安装提供htpasswd程序的apache2-utils包,该程序将用于配置用户的用户名和密码。另外,我们将安装Nginx web服务器作为反向代理。

要安装Nginx web服务器和apache2-utils包,请执行以下命令。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo apt install nginx apache2-utils

安装了Nginx和apache2-utils后,我们将在/etc/nginx/conf.d目录中创建一个配置文件。但是,如果您将Nginx用作Netdata以外的其他用途,请随时使用sites-available目录。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo vim /etc/nginx/conf.d/default.conf

在配置文件中,我们将首先指示Nginx代理Netdata仪表板的传入请求。此后,我们将附加一些基本的身份验证提示,该提示仅授权用户使用用户名/密码身份验证访问Netdata仪表板。

这是整个配置。请注意用您自己的服务器IP地址和服务器名称替换server_ip和example.com指令。

server_ip 我设置为 127.0.0.1

example.com 改为 linuxmi.com

upstream netdata-backend {
   server 127.0.0.1:19999;
   keepalive 64;
}

server {
   listen server_ip:80;
   server_name example.com;

auth_basic 'Authentication Required';
   auth_basic_user_file netdata-access;

location / {
       proxy_set_header X-Forwarded-Host $host;
       proxy_set_header X-Forwarded-Server $host;
       proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
       proxy_pass http://netdata-backend;
       proxy_http_version 1.1;
       proxy_pass_request_headers on;
       proxy_set_header Connection 'keep-alive';
       proxy_store off;
   }
}

让我们一节一节地理解它的结构。

第一节:

upstream netdata-backend {    server 127.0.0.1:19999;    keepalive 64;}

我们已经指定了一个称为Netdata后端的上游模块,它引用Netdata的内置web服务器,使用环回地址127.0.0.1和端口19999,这是Netdata监听的默认端口。keepalive指令定义了可以保持打开的最大空闲连接数。

第二节:

server {
   listen server_ip:80;
   server_name example.com;

auth_basic 'Authentication Required';
   auth_basic_user_file netdata-access;

这是Nginx服务器的主块。第一行指定当客户端发送请求时Nginx应该监听的外部IP地址。server_name指令指定服务器的域名,并指示Nginx在客户端调用域名而不是外部IP地址时运行服务器块。

最后两行表示简单的HTTP身份验证,要求用户使用用户名和密码登录。auth_basic模块在浏览器上触发用户名/密码弹出窗口,标题上有“Authentication Required”,稍后可以根据您的偏好定制该标题。

auth_basic_user_file模块指向一个文件名,该文件名将包含被授权访问Netdata仪表板(在本例中为Netdata -access)的用户的用户名和密码。稍后我们将创建此文件。

第三节:

最后一部分是服务器块中包含的位置块。这将处理传入请求的代理和转发到Nginx Web服务器。

location / {        proxy_set_header X-Forwarded-Host $host;        proxy_set_header X-Forwarded-Server $host;        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;        proxy_pass http://netdata-backend;        proxy_http_version 1.1;        proxy_pass_request_headers on;        proxy_set_header Connection 'keep-alive';        proxy_store off;    }

为了进行身份验证,我们将使用htpasswd实用程序为名为linuxmi的用户创建用户名和密码,并将凭据存储在netdata-access文件中。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo htpasswd -c /etc/nginx/netdata-access linuxmi

提供密码并确认。

接下来,重启Nginx web服务器以使更改生效。

linuxmi@linuxmi:~/www.linuxmi.com$ sudo systemctl restart nginx

要测试配置是否正确,请继续并浏览服务器的IP地址

http://linuxmi.com

将出现一个身份验证弹出窗口,如下所示。提供您的用户名和密码,然后回车。

此后,您将访问Netdata仪表板。

今天的话题就到这里。您现在学习的是如何在Ubuntu上安装Netdata监视工具和基本HTTP身份验证的配置。

(0)

相关推荐

  • Linux下Flatpak的安装与使用超详细教程

    转自:https://www.linuxmi.com 软件包管理是任何Linux发行版的重要功能之一,可简化Linux应用程序的安装和维护方法.不同的Linux发行版采用不同的方法来打包和分发软件. ...

  • Ubuntu部署WEB平台(apache+php和Nginx+php)

    一.实验环境说明 1.操作系统:Ubuntu 18.04 64位 jia@test:~$ lsb_release -a //查看系统版本 jia@test:~$ uname -a //查看系统是64位 ...

  • Docker 容器技术使用指南 | 周末送资料

    目录 第一部分 Docker 容器技术基础及其应用场景介绍 1.1 Docker 的基本概念 1.2 为什么使用 Docker 1.3 Docker 体系结构简介 1.4 Docker 容器技术的应用 ...

  • 宏基因组分析专题(1):生物信息学的开始-Linux系统的安装教程

    本文由微科盟phage根据实践经验而整理,希望对大家有帮助. 微科盟原创微文,欢迎转发转载. 写在前面 什么是宏基因组测序以及分析? 简单来说就是提取我们样品中总DNA并进行二代测序,测序后需要对测序 ...

  • 智能智造 | 玩转Linux之Linux系统的安装

    不点蓝字,我们哪来故事? 1 软硬件准备 软件准备:Windows系统可以使用VMware.VirtualBox:MacOS系统可以使用Parallels Desktop.VMware.Virtual ...

  • Linux系统中rar、unrar源码安装

    https://www.rarlab.com/rar_add.htm官网源码下载地址,找到RAR/Extras,下载源码,也可以直接下载arm版编译文件安装:如果是以tarball形式安装安装,去ra ...

  • 安卓(Android)手机安装Linux 系统并搭建 jdk 环境与tomcat 服务器

    一.安装Aid Learning(手机App ) 1.Aid Learning 描叙 这是非常好玩的一个APP,Aid Learning FrameWork是一个在Android手机上构建了一个带图形 ...

  • 使用VMware10虚拟机安装Linux系统(能力工场)

    作为IT从业人员,我们经常使用到Linux系统,但是实际开发过程我们通常在Windows平台操作,为了满足工作需要,这个时候我们通常在windows平台安装虚拟机,并在其上建立linux系统,这样就极 ...

  • 最新VMware虚拟机安装Linux系统

    一.前言 最近有网友反应初学Linx不会安装,找了许多教程不是太全面,总会遇到一些要不是启动不了,要不是连不上网,各种问题,为了让大家能够顺利的安装,小乐写了一个非常详细的教程,让大家少入坑. 二.背 ...

  • Linux系统(CentOS)软件的编译安装

    Linux系统(CentOS)软件的编译安装 1 .首先,将安装文件下载拷贝至你的某个目录中.例如,如果你是以root身份登录上的,就将软件拷贝至/root中. #cp xxx.tar.gz /roo ...

  • 如何在服务器上安装linux系统

    写在前面 : 经常我会在推文前面加上写在前面,这相当于对这篇推文做一个时间戳,让我可以在今后看到这篇文章,就会进入当时的我: 马上就要年终了,现在的日子过得是相当不容易了,各种事情需要赶工,我实在是没 ...

  • Linux系统如何安装?操作流程!

    关于Linux系统可能大家都知道它的使用率是非常高,在市场上占据了绝对地位,但是提及Linux电脑系统安装,可能很多人都会疑惑该如何安装呢?下面我们来看看详细步骤吧. 1.将刻录完成的安装介质,插入电 ...