Zoeken op website

Hoe Nginx-prestaties te controleren met behulp van Netdata op CentOS 7


Netdata is een gratis open source, schaalbaar, adaptief, aanpasbaar, uitbreidbaar en krachtig hulpmiddel voor realtime prestatie- en gezondheidsmonitoring voor Linux-systemen, dat statistieken verzamelt en visualiseert. Het werkt op desktops, personal computers, servers, embedded apparaten, IoT en meer.

Lees ook: Apache-prestaties monitoren met Netdata op CentOS 7

Het is een tool voor het monitoren van de systeemgezondheid waarmee u in de gaten kunt houden hoe uw systemen en applicaties of services, zoals webservers, werken, of waarom ze traag zijn of zich niet goed gedragen. Het is uiterst effectief en efficiënt in termen van CPU-gebruik en andere systeembronnen.

In dit artikel leggen we uit hoe u de prestaties van de Nginx HTTP-webserver kunt monitoren met behulp van Netdata op CentOS 7 of RHEL 7 > distributie.

Aan het einde van deze handleiding kunt u visualisaties bekijken van actieve verbindingen, verzoeken, status en verbindingssnelheid van uw Nginx-webserver.

Vereisten:

  1. Een CentOS 7-server of RHEL 7-server met minimale installatie.
  2. Nginx HTTP-serverinstallatie met ngx_http_stub_status_module ingeschakeld.

Stap 1: Installeer Nginx op CentOS 7

1. Begin eerst met het inschakelen van EPEL Repository en installeer vervolgens de Nginx HTTP-server vanuit de EPEL softwarebronnen met behulp van de YUM-pakketbeheerder.

yum install epel-release
yum install nginx 

2. Controleer vervolgens de versie van Nginx die op uw systeem is geïnstalleerd. Deze zou gecompileerd moeten zijn met de stub_status module aangegeven door de - -with-http_stub_status_module configuratieargument, zoals weergegeven in de volgende schermafbeelding.

nginx -V

3. Nadat u Nginx met succes hebt geïnstalleerd, start u het en schakelt u het in om automatisch op te starten bij het opstarten van het systeem en zorgt u ervoor dat het actief is.

systemctl status nginx
systemctl enable nginx
systemctl status nginx

4. Als u een dynamische firewall gebruikt, moet u poort 80 (HTTP) en 443 (openen) HTTPS) waarnaar de webserver luistert, voor clientverbindingsverzoeken.

firewall-cmd --permanent --add-port=80/tcp
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --reload 

Stap 2: Stap 2: Schakel de Nginx Stub_Status-module in

5. Schakel nu de stub_status module in die netdata gebruikt om statistieken van uw Nginx-webserver te verzamelen.

vim /etc/nginx/nginx.conf

Kopieer en plak de onderstaande locatie-configuratie in het serverblok, zoals weergegeven in de schermafbeelding.

location /stub_status {
 	stub_status;
 	allow 127.0.0.1;	#only allow requests from localhost
 	deny all;		#deny all other hosts	
 }

6. Test vervolgens de nieuwe nginx-configuratie op eventuele fouten en start de nginx-service opnieuw om de recente wijzigingen door te voeren.

nginx -t
systemctl restart nginx

7. Test vervolgens de nginx-statuspagina met behulp van het opdrachtregelprogramma curl.

curl http://127.0.0.1/stub_status

Stap 3: Installeer Netdata op CentOS 7

8. Er is een one-liner shell-script dat je kunt gebruiken om de installatie van de nieuwste versie van netdata vanuit de github-repository te starten. Dit script downloadt een ander script om je Linux-distro te detecteren en installeert de vereiste systeempakketten voor het bouwen van netdata; pakt daarna de nieuwste netdata-bronbestanden; bouwt en installeert deze.

Gebruik de onderstaande opdracht om het kickstarter-script te starten. Met de optie all kun je de vereiste pakketten installeren voor alle netdata-plug-ins, inclusief die voor Nginx.

bash <(curl -Ss https://my-netdata.io/kickstart.sh) all

Als u het systeem niet als root benadert, wordt u gevraagd uw gebruikerswachtwoord in te voeren voor de opdracht sudo, en wordt u ook gevraagd bepaalde bewerkingen te bevestigen door op te drukken >[Invoeren].

8. Na het bouwen en installeren van netdata, start het script automatisch de netdata-service via systemd service manager, en zorgt ervoor dat deze start bij het opstarten van het systeem. Netdata luistert standaard op poort 19999.

9. Open vervolgens poort 19999 in de firewall om toegang te krijgen tot de netdata-webinterface.

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

Stap 4: Configureer Netdata om de Nginx-prestaties te monitoren

9. De netdata-configuratie voor de Nginx-plug-in wordt opgeslagen in het /etc/netdata/python.d/nginx.conf configuratiebestand, geschreven in YaML > formaat.

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

De standaardconfiguratie is voldoende om u op weg te helpen met het monitoren van uw Nginx-webserver.

Als u wijzigingen in het configuratiebestand heeft aangebracht, start u na het lezen van de documentatie de netdata-service opnieuw op om de wijzigingen door te voeren.

systemctl restart netdata

Stap 5: Controleer de Nginx-prestaties met behulp van Netdata

10. Open nu een webbrowser en gebruik de volgende URL om toegang te krijgen tot de netdata-webgebruikersinterface.

http://domain_name:19999
OR
http://SERVER_IP:19999

Klik in de lijst met plug-ins aan de rechterkant op “nginx local” om uw Nginx-webserver te monitoren. U kunt visualisaties bekijken van actieve verbindingen, verzoeken, status en verbindingssnelheid, zoals weergegeven in de volgende schermafbeelding.

Netdata Github-opslagplaats: https://github.com/firehol/netdata

Dat is alles! Netdata is een realtime, gedistribueerde tool voor prestatie- en gezondheidsmonitoring voor Linux-systemen. In dit artikel hebben we laten zien hoe u de prestaties van de Nginx-webserver kunt controleren met behulp van netdata op CentOS 7. Gebruik het onderstaande commentaarformulier om eventuele vragen of gedachten over deze handleiding te delen.