Sådan overvåges ydeevnen af CentOS 8/7 server ved hjælp af Netdata


Der er masser af overvågningsværktøjer, der bruges til at holde øje med systemets ydeevne og sende underretninger, hvis noget går galt. Imidlertid er de involverede installations- og konfigurationstrin ofte kedelige.

Netdata er et open source realtidsovervågnings- og fejlfindingsværktøj, der kun kræver nogle få trin for at blive installeret. Git-arkivet leveres med et automatiseret script, der håndterer størstedelen af installations- og konfigurationsprocessen og fjerner den besværlige konfiguration, der er forbundet med andre overvågningsværktøjer.

Netdata er blevet enormt populært siden den første udgivelse i oktober 2013. Det indsamler realtidsmålinger som CPU- og RAM-brug, båndbreddestatistik og diskudnyttelse og viser dem på let at fortolke diagrammer/grafer.

Det har gjort store spring og grænser, og dette har tjent det til en plads i Forbes 2020 Cloud 100 stigende stjerner. Denne liste udgør de top 100 private cloud-virksomheder.

I denne artikel vil vi se, hvordan du kan installere Netdata på CentOS 8/7 til at overvåge realtids-, ydeevne- og sundhedsovervågning af servere og applikationer.

Netdata understøtter følgende distributioner:

  • CentOS 8 and CentOS 7
  • RHEL 8 and RHEL 7
  • Fedora Linux

Sådan installeres Netdata i CentOS Linux

1. Inden vi dykker ned i installationen af Netdata, er et par forudsætningspakker obligatoriske. Men opdater først systemet og installer EPEL-lageret som vist.

$ sudo yum update
$ sudo yum install epel-release

2. Installer derefter de nødvendige softwarepakker som vist.

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

3. Når du er færdig med at installere de nødvendige pakker, skal du klone Netdata git-arkivet som vist.

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

4. Gå derefter ind i Netdata-biblioteket, og udfør scriptet install-required-packages.sh. Scriptet registrerer din Linux-distribution og installerer yderligere pakker, der kræves under installationen af Netdata.

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

5. For at installere Netdata skal du køre det automatiske Netdata-script som vist nedenfor.

$ sudo ./netdata-installer.sh

Efter udførelse af scriptet vil du blive orienteret om, hvor vigtige Netdata-filer gemmes. Disse inkluderer f.eks. Konfigurationsfiler, webfiler, plugins, databasefiler og logfiler for blot at nævne nogle få.

6. Tryk på 'ENTER' for at komme i gang med installationsprocessen. Under installationsprocessen får du nogle tip til, hvordan du får adgang til Netdata i browseren og administrerer Netdata, såsom start og stop.

Scriptet kører i et stykke tid og foretager alle de nødvendige konfigurationer og tweaks under installationsprocessen. For min sag tog det cirka 3-5 minutter, og når det var gjort, skulle det viste output være en bekræftelse på, at installationen var vellykket.

7. Når vi er installeret, skal vi have Netdata-dæmonen i gang. For at starte skal du aktivere Netdata-dæmonen ved opstart og kontrollere, at status påberåber følgende kommandoer:

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

8. Som standard lytter Netdata til port 19999, og du kan bekræfte dette ved hjælp af netstat-kommandoen som vist:

$ sudo netstat -pnltu | grep netdata

9. Vi er nødt til at åbne denne port på firewallen for at få adgang til Netdata via en browser. Kør derfor kommandoerne nedenfor:

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

10. For at få adgang til Netdata skal du starte din browser og gennemse URL'en som vist:

$ http://centos8-ip:19999/

Du får vist et dashboard, der giver dig den samlede systemydelse på intuitive og seje grafer.

Du er velkommen til at kigge på forskellige grafer ved at klikke på metrics, der er angivet i højre sidepanel. For eksempel for at få et glimt af de systemd-tjenester, der kører, skal du klikke på 'systemd services' som vist.

Sikring af netdata med grundlæggende godkendelse på CentOS

Som du alarmerende har bemærket, er der ingen form for godkendelse leveret af Netdata. Dette indebærer, at stort set alle kan få adgang til instrumentbrættet, forudsat at de får fat i Netdatas IP-adresse.

Heldigvis kan vi konfigurere grundlæggende godkendelse ved hjælp af htpasswd-programmet og Nginx-webserveren som den omvendte proxy. Derfor skal vi installere Nginx-webserveren.

$ sudo dnf install nginx

Med Nginx installeret skal vi oprette en konfigurationsfil inde i /etc/nginx/conf.d-biblioteket. Du er dog velkommen til at bruge den tilgængelige bibliotek, hvis du bruger Nginx til andre formål bortset fra Netdata.

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

Tilføj følgende hele konfiguration, og sørg for at ændre server_ip- og example.com-direktiverne med din egen server-IP-adresse og servernavn.

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

Til brugergodkendelse opretter vi et brugernavn og en adgangskode til en bruger kaldet tecmint ved hjælp af htpasswd-værktøjet og opbevarer legitimationsoplysningerne under netdata-adgangsfilen.

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

Angiv adgangskoden, og bekræft den.

Genstart derefter Nginx-webserveren for at ændringerne skal træde i kraft.

$ sudo systemctl restart nginx

For at teste, om konfigurationen gik rigtigt, skal du fortsætte og gennemse din servers IP-adresse.

http://server-ip

Derefter får du adgang til Netdata-dashboardet.

Og det er det, folkens. Vi har gennemgået installationen af Netdata-overvågningsværktøjet på CentOS 8 og konfigureret grundlæggende godkendelse til at sikre overvågningsværktøjet. Send os et råb og lad os vide, hvordan det gik.