Cómo instalar Netdata con Nginx en Alma Linux 8
Netdata es una herramienta de monitorización de servidores gratuita, de código abierto y en tiempo real que visualiza y monitoriza datos en tiempo real como el uso de la CPU, el uso de la RAM, la carga, el uso de SWAP, el uso de ancho de banda, el uso de disco, etc. Ayuda al administrador del sistema a obtener una visión general de lo que está sucediendo y lo que acaba de suceder en su sistema o aplicación. Se puede instalar en cualquier servidor físico, máquinas virtuales, contenedores y dispositivos IoT. Proporciona una interfaz web interactiva para ver las métricas de su servidor con soporte para varios almacenes de datos para el almacenamiento persistente.
En este tutorial, le mostraremos cómo instalar la herramienta de monitoreo Netdata en Alma Linux 8.
Requisitos previos
- Un servidor con Alma Linux 8.
- Un nombre de dominio válido apuntado con la IP de su servidor.
- Se ha configurado una contraseña de root en el servidor.
Instalar dependencia requerida
En primer lugar, tendrá que instalar el repo de EPEL y otras dependencias necesarias para instalar Netdata. Puede instalarlas todas ejecutando el siguiente comando:
dnf install epel-release -y dnf install git libuuid-devel autoconf automake pkgconfig zlib-devel curl findutils libmnl gcc make -y
Una vez que todos los paquetes están instalados, puede proceder al siguiente paso.
Instalar Netdata
Por defecto, Netdata no está incluido en el repo de Alma Linux por defecto. Así que tendrá que instalarlo desde el origen.
Primero, descargue la última versión de Netdata desde el repositorio Git usando el siguiente comando:
git clone --recurse-submodules https://github.com/netdata/netdata.git --depth=100
Una vez completada la descarga, cambie el directorio a netdata e instale todas las dependencias necesarias utilizando el siguiente comando:
cd netdata ./packaging/installer/install-required-packages.sh --non-interactive --dont-wait netdata
A continuación, instala otros paquetes con el siguiente comando:
dnf --enablerepo=powertools install libuv-devel
A continuación, ejecute el script de instalación de Netdata para iniciar la instalación.
./netdata-installer.sh
Obtendrá la siguiente salida:
--- real-time performance monitoring, done right! --- You are about to build and install netdata to your system. The build process will use /tmp for any temporary files. You can override this by setting $TMPDIR to a writable directory where you can execute files. It will be installed at these locations: - the daemon at /usr/sbin/netdata - config files in /etc/netdata - web files in /usr/share/netdata - plugins in /usr/libexec/netdata - cache files in /var/cache/netdata - db files in /var/lib/netdata - log files in /var/log/netdata - pid file at /var/run/netdata.pid - logrotate file at /etc/logrotate.d/netdata This installer allows you to change the installation path. Press Control-C and run the same command with --help for help. NOTE: Anonymous usage stats will be collected and sent to Netdata. To opt-out, pass --disable-telemetry option to the installer or export the environment variable DISABLE_TELEMETRY to a non-zero or non-empty value (e.g: export DISABLE_TELEMETRY=1). Press ENTER to build and install netdata to your system >
Pulse la tecla Enter para instalar Netdata en su sistema. Una vez instalado el Netdata, obtendrá la siguiente salida:
Setting netdata.tarball.checksum to 'new_installation' --- We are done! --- ^ |.-. .-. .-. .-. .-. . netdata .-. .-. .-. .-. .-. .- | '-' '-' '-' '-' '-' '-' '-' '-' '-' '-' +----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+-----+---> --- is installed and running now! --- enjoy real-time performance and health monitoring...
systemctl start netdata systemctl enable netdata
Ahora puede comprobar el estado del Netdata utilizando el siguiente comando.
systemctl status netdata
Obtendrá la siguiente salida:
? netdata.service - Real time performance monitoring Loaded: loaded (/usr/lib/systemd/system/netdata.service; enabled; vendor preset: disabled) Active: active (running) since Sat 2022-03-19 04:22:22 UTC; 4min 16s ago Main PID: 58935 (netdata) Tasks: 50 (limit: 11412) Memory: 103.1M CGroup: /system.slice/netdata.service ??58935 /usr/sbin/netdata -P /var/run/netdata/netdata.pid -D ??58938 /usr/sbin/netdata --special-spawn-server ??59063 /usr/libexec/netdata/plugins.d/apps.plugin 1 ??59064 /usr/libexec/netdata/plugins.d/ebpf.plugin 1 ??59065 /usr/libexec/netdata/plugins.d/go.d.plugin 1 Mar 19 04:22:22 linux systemd[1]: Starting Real time performance monitoring... Mar 19 04:22:22 linux systemd[1]: Started Real time performance monitoring. Mar 19 04:22:22 linux netdata[58935]: CONFIG: cannot load cloud config '/var/lib/netdata/cloud.d/cloud.conf'. Running with internal defaults. Mar 19 04:22:22 linux netdata[58935]: 2022-03-19 04:22:22: netdata INFO : MAIN : CONFIG: cannot load cloud config '/var/lib/netdata/cloud.d/> Mar 19 04:22:22 linux netdata[58935]: 2022-03-19 04:22:22: netdata INFO : MAIN : Found 0 legacy dbengines, setting multidb diskspace to 256MB Mar 19 04:22:22 linux netdata[58935]: 2022-03-19 04:22:22: netdata INFO : MAIN : Created file '/var/lib/netdata/dbengine_multihost_size' to > Mar 19 04:22:22 linux netdata[58935]: Found 0 legacy dbengines, setting multidb diskspace to 256MB Mar 19 04:22:22 linux netdata[58935]: Created file '/var/lib/netdata/dbengine_multihost_size' to store the computed value Mar 19 04:22:23 linux ebpf.plugin[59064]: Does not have a configuration file inside `/etc/netdata/ebpf.d.conf. It will try to load stock file. Mar 19 04:22:23 linux ebpf.plugin[59064]: Cannot read process groups configuration file '/etc/netdata/apps_groups.conf'. Will try '/usr/lib/n>
En este momento, Netdata se está ejecutando y escucha en el puerto 19999. Puede comprobarlo con el siguiente comando:
ss -antpl | grep netdata
Obtendrá la siguiente salida:
LISTEN 0 128 127.0.0.1:8125 0.0.0.0:* users:(("netdata",pid=58935,fd=29)) LISTEN 0 128 0.0.0.0:19999 0.0.0.0:* users:(("netdata",pid=58935,fd=6)) LISTEN 0 128 [::1]:8125 [::]:* users:(("netdata",pid=58935,fd=28)) LISTEN 0 128 [::]:19999 [::]:* users:(("netdata",pid=58935,fd=7))
Una vez que haya terminado, puede pasar al siguiente paso.
Configurar el cortafuegos
Si está utilizando el cortafuegos firewalld en su sistema, tendrá que permitir los puertos 19999 y 80 a través del firewalld. Puede permitirlos con el siguiente comando:
firewall-cmd --permanent --add-port=19999/tcp firewall-cmd --permanent --add-port=80/tcp
A continuación, recargue el demonio firewalld para aplicar los cambios:
firewall-cmd --reload
Una vez que haya terminado, puede proceder al siguiente paso.
Configurar Nginx como proxy inverso para Netdata
Siempre es una buena idea instalar y configurar Nginx como proxy inverso para acceder a los Netdata. En primer lugar, instale el servidor Nginx utilizando el siguiente comando:Advertisement
dnf install nginx httpd-tools -y
A continuación, generar un archivo de contraseña con el siguiente comando:
htpasswd -c /etc/nginx/.htpasswd netadmin
Establezca su contraseña de administrador como se muestra a continuación:
New password: Re-type new password: Adding password for user netadmin
A continuación, cree un archivo de configuración de host virtual Nginx con el siguiente comando:
nano /etc/nginx/conf.d/netdata.conf
Añade las siguientes líneas:
upstream backend { server 127.0.0.1:19999; keepalive 64; } server { listen 80; server_name netdata.example.com; 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://backend; proxy_http_version 1.1; proxy_pass_request_headers on; proxy_set_header Connection "keep-alive"; proxy_store off; auth_basic "Private Property"; auth_basic_user_file /etc/nginx/.htpasswd; } }
Guarde y cierre el archivo y luego verifique el Nginx para cualquier error de configuración de sintaxis:
nginx -t
Si todo está bien, obtendrá la siguiente salida:
nginx: the configuration file /etc/nginx/nginx.conf syntax is ok nginx: configuration file /etc/nginx/nginx.conf test is successful
A continuación, reinicie el servicio Nginx para aplicar los cambios de configuración:
systemctl restart nginx
También puedes comprobar el estado de Nginx con el siguiente comando:
systemctl status nginx
Deberías ver la siguiente salida:
? nginx.service - The nginx HTTP and reverse proxy server Loaded: loaded (/usr/lib/systemd/system/nginx.service; disabled; vendor preset: disabled) Active: active (running) since Sat 2022-03-19 04:28:44 UTC; 4s ago Process: 61706 ExecStart=/usr/sbin/nginx (code=exited, status=0/SUCCESS) Process: 61705 ExecStartPre=/usr/sbin/nginx -t (code=exited, status=0/SUCCESS) Process: 61703 ExecStartPre=/usr/bin/rm -f /run/nginx.pid (code=exited, status=0/SUCCESS) Main PID: 61708 (nginx) Tasks: 2 (limit: 11412) Memory: 3.7M CGroup: /system.slice/nginx.service ??61708 nginx: master process /usr/sbin/nginx ??61709 nginx: worker process Mar 19 04:28:44 linux systemd[1]: Starting The nginx HTTP and reverse proxy server... Mar 19 04:28:44 linux nginx[61705]: nginx: the configuration file /etc/nginx/nginx.conf syntax is ok Mar 19 04:28:44 linux nginx[61705]: nginx: configuration file /etc/nginx/nginx.conf test is successful Mar 19 04:28:44 linux systemd[1]: nginx.service: Failed to parse PID from file /run/nginx.pid: Invalid argument Mar 19 04:28:44 linux systemd[1]: Started The nginx HTTP and reverse proxy server.
Una vez que haya terminado, puede pasar al siguiente paso.
Acceder al panel de control de Netdata
Ahora, abra su navegador web y acceda al panel de control de Netdata utilizando la URL http://your-server-ip. Debería ver la página de inicio de sesión de Netdata:
Proporcione su nombre de usuario y contraseña de administrador y haga clic en el botón de inicio de sesión. Debería ver el panel de control de Netdata en la siguiente página:
Conclusión
Enhorabuena! ha instalado con éxito la herramienta de monitorización Netdata en Alma Linux 8. Ahora puede empezar a monitorizar las métricas de su servidor en tiempo real desde el panel de control de Netdata. No dude en preguntarme si tiene alguna pregunta.Publicidad