Com supervisar el rendiment del servidor CentOS 8/7 mitjançant Netdata


Hi ha un munt d'eines de supervisió que s'utilitzen per vigilar el rendiment dels sistemes i enviar notificacions per si alguna cosa va malament. No obstant això, els passos d'instal·lació i configuració que impliquen sovint són tediosos.

Netdata és una eina de supervisió i resolució de problemes de codi obert en temps real que només requereix uns quants passos per instal·lar-se. El dipòsit de Git inclou un script automatitzat que gestiona la major part del procés d'instal·lació i configuració i elimina la complicada configuració associada amb altres eines de supervisió.

Netdata s'ha tornat molt popular des del seu llançament inicial l'octubre de 2013. Recull mètriques en temps real, com ara l'ús del disc, i les mostra en gràfics o gràfics fàcils d'interpretar.

Ha fet grans salts i límits i això li ha valgut un lloc a les estrelles emergents Forbes 2020 Cloud 100. Aquesta llista constitueix les 100 principals empreses de núvol privat.

En aquest article, veurem com podeu instal·lar Netdata a CentOS 8/7 per supervisar en temps real, el rendiment i la vigilància de la salut dels servidors i aplicacions.

Netdata admet les distribucions següents:

  • CentOS 8 i CentOS 7
  • RHEL 8 i RHEL 7
  • Fedora Linux

Com instal·lar Netdata a CentOS Linux

1. Abans de submergir-nos en la instal·lació de Netdata, són obligatoris alguns paquets de requisits previs. Però primer, actualitzeu el sistema i instal·leu el repositori EPEL tal com es mostra.

$ sudo yum update
$ sudo yum install epel-release

2. A continuació, instal·leu els paquets de programari necessaris tal com es mostra.

$ sudo yum install gcc make git curl zlib-devel git automake libuuid-devel libmnl autoconf pkgconfig findutils

3. Un cop hàgiu acabat amb la instal·lació dels paquets de requisits previs, cloneu el dipòsit Netdata git tal com es mostra.

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

4. A continuació, navegueu al directori Netdata i executeu l'script install-required-packages.sh. L'script detecta la vostra distribució de Linux i instal·la els paquets addicionals necessaris durant la instal·lació de Netdata.

$ cd netdata/
$ ./packaging/installer/install-required-packages.sh --dont-wait --non-interactive netdata 

5. Finalment, per instal·lar Netdata, executeu l'script automatitzat de Netdata tal com es mostra a continuació.

$ sudo ./netdata-installer.sh

En executar l'script, se us informarà sobre on s'emmagatzemaran els fitxers de Netdata crucials. Aquests inclouen fitxers de configuració, fitxers web, connectors, fitxers de bases de dades i fitxers de registre per esmentar-ne només alguns.

6. Premeu ENTER per iniciar el procés d'instal·lació. Durant el procés d'instal·lació, se us donaran alguns consells sobre com accedir a Netdata al navegador i gestionar-los, com ara iniciar-lo i aturar-lo.

L'script s'executa durant força temps fent totes les configuracions i ajustaments necessaris durant el procés d'instal·lació. Per al meu cas, va trigar uns 3-5 minuts i, un cop feta, la sortida que es mostra hauria de ser una confirmació que la instal·lació va ser correcta.

7. Un cop instal·lat, hem de tenir el dimoni Netdata en funcionament. Per començar, activeu el dimoni Netdata a l'arrencada i verifiqueu l'estat, invoqueu les ordres següents:

$ sudo systemctl start netdata
$ sudo systemctl enable netdata
$ sudo systemctl status netdata

8. Per defecte, Netdata escolta al port 19999 i podeu confirmar-ho mitjançant l'ordre netstat tal com es mostra:

$ sudo netstat -pnltu | grep netdata

9. Hem d'obrir aquest port al tallafoc per tenir accés a Netdata mitjançant un navegador. Per tant, executeu les ordres següents:

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

10. Per accedir a Netdata, engegueu el vostre navegador i navegueu per l'URL tal com es mostra:

$ http://centos8-ip:19999/

Obtindreu un tauler que us mostrarà el rendiment general del sistema en gràfics intuïtius i interessants.

No dubteu a fer una ullada a diferents gràfics fent clic a les mètriques que apareixen a la barra lateral dreta. Per exemple, per tenir una visió dels serveis de systemd en funcionament, feu clic a l'opció serveis de systemd tal com es mostra.

Protecció de dades de xarxa amb autenticació bàsica a CentOS

Com haureu observat de manera alarmant, no hi ha cap forma d'autenticació proporcionada per Netdata. Això implica que pràcticament qualsevol persona pot accedir al tauler sempre que tingui l'adreça IP de Netdata.

Afortunadament, podem configurar l'autenticació bàsica mitjançant el programa htpasswd i el servidor web Nginx com a servidor intermediari invers. Per tant, instal·larem el servidor web Nginx.

$ sudo dnf install nginx

Amb Nginx instal·lat, crearem un fitxer de configuració dins del directori /etc/nginx/conf.d. Tanmateix, no dubteu a utilitzar el directori de llocs disponibles si feu servir Nginx per a altres finalitats a part de Netdata.

$ sudo vim /etc/nginx/conf.d/default.conf

Afegiu tota la configuració següent i assegureu-vos de canviar les directives server_ip i example.com amb la vostra adreça IP i nom de servidor.

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;
    }
}

Per a l'autenticació d'usuari, crearem un nom d'usuari i una contrasenya per a un usuari anomenat tecmint mitjançant l'eina htpasswd i mantindrem les credencials sota el fitxer d'accés a les dades net.

$ sudo htpasswd -c /etc/nginx/netdata-access tecmint

Proporcioneu la contrasenya i confirmeu-la.

A continuació, reinicieu el servidor web Nginx perquè els canvis entrin en vigor.

$ sudo systemctl restart nginx

Per provar si la configuració ha anat bé, continueu i navegueu per l'adreça IP del vostre servidor.

http://server-ip

A continuació, tindreu accés al tauler de control de Netdata.

I això és tot, gent. Us hem guiat a través de la instal·lació de l'eina de monitorització de Netdata a CentOS 8 i hem configurat l'autenticació bàsica per protegir l'eina de supervisió. Envia'ns un crit i explica'ns com ha anat.