Zoeken op website

Versterken - NGINX-monitoring gemakkelijk gemaakt


Nginx amplify is een verzameling handige tools voor het uitgebreid monitoren van een open source Nginx-webserver en NGINX Plus. Met NGINX Amplify kunt u de prestaties monitoren, systemen met Nginx bijhouden en problemen in verband met het uitvoeren en schalen van webapplicaties praktisch onderzoeken en oplossen.

Het kan worden gebruikt om prestatieknelpunten, overbelaste servers of potentiële DDoS-aanvallen van een Nginx-webserver te visualiseren en te bepalen; verbeter en optimaliseer de Nginx-prestaties met intelligent advies en aanbevelingen.

Bovendien kan het u waarschuwen wanneer er iets mis is met de configuratie van uw applicaties, en het dient ook als een capaciteits- en prestatieplanner voor webapplicaties.

De Nginx-versterkerarchitectuur is gebouwd op 3 belangrijke componenten, die hieronder worden beschreven:

  • NGINX Amplify Backend – de kernsysteemcomponent, geïmplementeerd als SaaS (Software as a Service). Het omvat een schaalbaar raamwerk voor het verzamelen van statistieken, een database, een analyse-engine en een kern-API.
  • NGINX Amplify Agent – een Python-applicatie die moet worden geïnstalleerd en uitgevoerd op bewaakte systemen. Alle communicatie tussen de agent en de SaaS-backend verloopt veilig via SSL/TLS; al het verkeer wordt altijd geïnitieerd door de agent.
  • NGINX Amplify Web UI – een gebruikersinterface die compatibel is met alle grote browsers en alleen toegankelijk is via TLS/SSL.

De webinterface geeft grafieken weer voor Nginx- en besturingssysteemstatistieken, maakt het creëren van een door de gebruiker gedefinieerd dashboard mogelijk, biedt een statische analysator om de Nginx-configuratie te verbeteren en een waarschuwingssysteem met geautomatiseerde meldingen.

Stap 1: Installeer Amplify Agent op Linux-systeem

1. Open uw webbrowser, typ het onderstaande adres en maak een account aan. Er wordt een link naar uw e-mail verzonden. Gebruik deze om het e-mailadres te verifiëren en in te loggen op uw nieuwe account.

https://amplify.nginx.com

2. Log daarna in op uw externe server die u wilt monitoren, via SSH en download het nginx amplify agent-auto-installatiescript met behulp van de curl- of wget-opdracht.

wget https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh
OR
curl -L -O https://github.com/nginxinc/nginx-amplify-agent/raw/master/packages/install.sh 

3. Voer nu de onderstaande opdracht uit met superuser-rechten en gebruik de opdracht sudo om het amplify-agentpakket te installeren (de API_KEY zal waarschijnlijk anders zijn, uniek voor elk systeem dat u toevoegt ).

sudo API_KEY='e126cf9a5c3b4f89498a4d7e1d7fdccf' sh ./install.sh 

Opmerking: Mogelijk krijgt u een foutmelding die aangeeft dat sub_status niet is geconfigureerd. Dit wordt in de volgende stap gedaan.

4. Zodra de installatie is voltooid, gaat u terug naar de webinterface en na ongeveer 1 minuut ziet u het nieuwe systeem in de lijst aan de linkerkant.

Stap 2: Configureer stub_status in NGINX

5. Nu moet je de stub_status-configuratie instellen om belangrijke Nginx-grafieken te bouwen (Nginx Plus-gebruikers moeten deze configureren ofwel de stub_status module of de uitgebreide status module).

Maak een nieuw configuratiebestand voor stub_status onder /etc/nginx/conf.d/.

sudo vi /etc/nginx/conf.d/sub_status.conf

Kopieer en plak vervolgens de volgende stub_status-configuratie in het bestand.

server {
    listen 127.0.0.1:80;
    server_name 127.0.0.1;
    location /nginx_status {
        stub_status;
        allow 127.0.0.1;
        deny all;
    }
}

Sla het bestand op en sluit het.

6. Start vervolgens de Nginx-services opnieuw om de stub_status moduleconfiguratie als volgt te activeren.

sudo systemctl restart nginx

Stap 3: Configureer aanvullende NGINX-statistieken voor monitoring

7. In deze stap moet u aanvullende Nginx-statistieken instellen om de prestaties van uw applicaties nauwlettend in de gaten te houden. De agent verzamelt statistieken van actieve en groeiende access.log- en error.log-bestanden, waarvan de locaties automatisch worden gedetecteerd. En belangrijker nog: het zou toegestaan moeten zijn om deze bestanden te lezen.

Het enige wat u hoeft te doen is een specifiek log_format definiëren zoals hieronder in uw hoofdconfiguratiebestand van Nginx, /etc/nginx/nginx.conf.

log_format main_ext '$remote_addr - $remote_user [$time_local] "$request" '
                                '$status $body_bytes_sent "$http_referer" '
                                '"$http_user_agent" "$http_x_forwarded_for" '
                                '"$host" sn="$server_name" ' 'rt=$request_time '
                                'ua="$upstream_addr" us="$upstream_status" '
                                'ut="$upstream_response_time" ul="$upstream_response_length" '
                                'cs=$upstream_cache_status' ;

Gebruik vervolgens het bovenstaande logformaat bij het definiëren van uw access_log en het error_log logniveau moet worden ingesteld op warn, zoals weergegeven.

access_log /var/log/nginx/suasell.com/suasell.com_access_log main_ext;
error_log /var/log/nginx/suasell.com/suasell.com_error_log  warn;

8. Start nu de Nginx-services nogmaals op om de laatste wijzigingen door te voeren.

sudo systemctl restart nginx

Stap 4: Controleer de Nginx-webserver via Amplify Agent

9. Ten slotte kunt u beginnen met het monitoren van uw Nginx-webserver vanuit de Amplify Web UI.

Om nog een systeem toe te voegen om te monitoren, gaat u eenvoudigweg naar Grafiek en klikt u op “Nieuw systeem” en volgt u de bovenstaande stappen.

Nginx Amplify-startpagina: https://amplify.nginx.com/signup/

Amplify is een krachtige SaaS-oplossing voor het monitoren van uw besturingssysteem, Nginx-webserver en op Nginx gebaseerde applicaties. Het biedt een enkele, uniforme webinterface waarmee u meerdere externe systemen waarop Nginx draait, in de gaten kunt houden. Gebruik het onderstaande commentaarformulier om uw mening over deze tool te delen.