Nagios Tutorial - Kontinuerlig overvågning med Nagios



Nagios tutorial: Nagios overvåger hele din it-infrastruktur for at sikre, at systemer, applikationer, tjenester og forretningsprocesser fungerer korrekt.

Nagios vejledning:

Jeg tror, ​​der er meget få indlæg på Nagios, og der er ikke meget relevant information tilgængelig over internettet. Så jeg tror, ​​dette indlæg vil give dig en god klarhed om dette overvågningsværktøj. Nagios overvåger hele din it-infrastruktur for at sikre, at systemer, applikationer, tjenester og forretningsprocesser fungerer korrekt.Det er integreret i DevOps livscyklus og er et must for .I denne Nagios-vejledning vil jeg dække nedenstående emner:

  1. Hvorfor har vi brug for kontinuerlig overvågning?
  2. Hvad er kontinuerlig overvågning?
  3. Hvad er Nagios?
  4. Sådan installeres Nagios?
  5. Sådan tilføjes en fjernserver ved hjælp af NRPE (Nagios Remote Plugin Executor).

Lad os begynde denne Nagios-tutorial ved at forstå, hvorfor vi har brug for kontinuerlig overvågning, fordi alt eksisterer af en grund. Så lad os prøve at finde ud af den grund.





Hvorfor har vi brug for kontinuerlig overvågning?

Kontinuerlige overvågningsværktøjer løser eventuelle systemfejl (lav hukommelse, utilgængelig server osv.), Før de har en negativ indvirkning på din forretnings produktivitet.

Vigtige grunde til at bruge et overvågningsværktøj er:



  • Det registrerer eventuelle netværks- eller serverproblemer
  • Det bestemmer årsagen til eventuelle problemer
  • Det opretholder sikkerhed og tilgængelighed af tjenesten
  • Det overvåger og fejlfinder problemer med serverens ydeevne
  • Det giver os mulighed for at planlægge infrastrukturopgraderinger, før forældede systemer forårsager fejl
  • Det kan reagere på problemer ved det første tegn på et problem
  • Det kan bruges til automatisk at løse problemer, når de opdages
  • Det sikrer, at it-infrastrukturafbrydelser har en minimal effekt på din organisations bundlinje
  • Det kan overvåge hele din infrastruktur og forretningsprocesser

Ja, det gør en masse cool arbejde, men hvad er det?

Hvad er kontinuerlig overvågning?

Lad mig først fortælle dig, hvor kontinuerlig overvågning ligger i DevOps livscyklus, overvej nedenstående diagram:

DevOps Life-Cyce - Nagios vejledning - Edureka



Når du ser på diagrammet, skal du tænke, at dette er den sidste fase i DevOps livscyklus, men dette er ikke tilfældet. Der er ingen ende på en DevOps livscyklus, og det er grunden til uendeligt symbol. Kontinuerlig overvågning kommer ind i billedet, når applikationen er implementeret på produktionsserverne.

Kontinuerlig overvågning handler om en organisations evne til at opdage, rapportere, reagere, indeholde og afbøde de angreb, der opstår, i dens infrastruktur.

Kontinuerlig overvågning er faktisk ikke ny, den har eksisteret i nogen tid. I årevis udfører vores sikkerhedsprofessionelle statiske analyser fra - systemlog, firewall-logfiler, IDS-logfiler, IPS-logfiler osv. Men det gav ikke korrekt analyse og respons. Dagens kontinuerlige overvågningstilgang giver os muligheden for at samle alle de begivenheder, som jeg diskuterede ovenfor, sammenkoble dem, sammenligne dem og derefter estimere organisationens risikostilling.

Hvis vi tager alle disse stykker og sikrer sammenkoblingen mellem dem. Dette er kernen i kontinuerlig overvågning.

Lad mig forklare dette med en brugssag.Overvej nedenstående diagram:

Lad mig nu forklare dig ovenstående diagram:

  1. Vi har forskellige sikkerhedsværktøjer, som Firewall, IDS, End Point Protection osv. De er forbundet med et 'Security Information and Event Management system.
  2. For at opnå kontinuerlig overvågning er vi nødt til at have alle delene til at tale med hinanden, lad mig forklare det for dig.
  3. Så vi har sikkerhedsværktøjer og serier af 'End Points', dette kan omfatte klient og servere, routere, switche, mobile enheder og så videre.
  4. Disse to grupper kan derefter tale med et SIEM (Security Information and Event Management system) gennem et fælles sprog og på mere automatiseret måde.
  5. Forbundet til dette SIEM er der to vigtige komponenter, den første er et datavarehus. Nu til dette datavarehus forbinder vi 'Analytics' og 'Security Intelligence'.
  6. Sikkerhedsinformation (SI) er den information, der er relevant for at beskytte en organisation mod eksterne og insidertrusler samt processer, politikker og værktøjer designet til at indsamle og analysere disse oplysninger.
  7. Dette SIEM er også forbundet med et 'Governance Risk and Compliance System', det giver dybest set dashboarding.
  8. Til dette 'Governance Risk and Compliance System' vedhæfter vi en risikodatabase. Dette giver os 'Handlingsmæssig intelligens'.
  9. Handlingsbar intelligens er intet andet end information, der kan handles med, med den yderligere implikation, at handlinger bør blive taget.

Så her overvåger vi begivenhederne løbende og bestemmer, hvilket risikoniveau vi oplever. Med dette kan vi korrelere begivenhederne på SIEM. Vi kan udføre netværksadfærd og detektion af uregelmæssigheder ved 'Analytics Engine'. Dette handler om kontinuerlig overvågning:

Integrationen af ​​en organisationsikkerhedsværktøjersammenlægningen,normalisering ogkorrelation af de data, der produceres af sikkerhedsværktøjerne. Analysen af ​​disse data er baseret på organisationens risikomål og viden om trusler og næsten realtidsrespons på de identificerede risici.

'Hvis du ikke kan måle det, kan du ikke klare det'. Jeg håber du ved hvad jeg taler om.

Dernæst i denne Nagios-vejledning introducerer jeg dig til et af de mest berømte overvågningsværktøjer 'Nagios'.

Hvad er Nagios?

Nagios bruges til kontinuerlig overvågning af systemer, applikationer, tjenester og forretningsprocesser osv. I en DevOps-kultur. I tilfælde af en fejl kan Nagios advare teknisk personale om problemet, så de kan begynde afhjælpningsprocesser, før afbrydelser påvirker forretningsprocesser, slutbrugere eller kunder. Med Nagios behøver du ikke forklare, hvorfor en uset infrastrukturafbrydelse påvirker din organisations bundlinje.

Lad mig forklare dig, hvordan Nagios fungerer.Overvej nedenstående diagram:

Nagios kører på en server, normalt som en dæmon eller en tjeneste.

Det kører med jævne mellemrum plugins, der findes på den samme server, de kontakter værter eller servere på dit netværk eller på internettet. Man kan se statusoplysninger ved hjælp af webgrænsefladen. Du kan også modtage e-mail- eller SMS-underretninger, hvis der sker noget.
Nagios-dæmonen opfører sig som en planlægger, der kører bestemte scripts på bestemte øjeblikke. Den gemmer resultaterne af disse scripts og kører andre scripts, hvis disse resultater ændres.

Plugins: Disseer kompilerede eksekverbare filer eller scripts (Perl-scripts, shell-scripts osv.), der kan køres fra en kommandolinje for at kontrollere status eller en vært eller tjeneste. Nagios bruger resultaterne fra plugins til at bestemme den aktuelle status for værter og tjenester på dit netværk.

Lad os nu diskutere det arkitektur.

Nagios Arkitektur:

  • Nagios er bygget på en server / agent arkitektur.
  • Normalt kører på et netværk en Nagios-server på en vært, og Plugins interagerer med lokale og alle de eksterne værter, der skal overvåges.
  • Disse plugins sender oplysninger til planlæggeren, som viser det i en GUI.

Jeg har også brug for at forklare dig NRPE (Nagios Remote Plugin Executor).

NRPE-tilføjelsen er designet til at give dig mulighed for at udføre Nagios-plugins på eksterne Linux / Unix-maskiner. Hovedårsagen til dette er at lade Nagios overvåge 'lokale' ressourcer (som CPU-belastning, hukommelsesforbrug osv.) På eksterne maskiner. Da disse offentlige ressourcer normalt ikke udsættes for eksterne maskiner, skal der installeres en agent som NRPE på de eksterne Linux / Unix-maskiner.

Overvej nedenstående diagram:

  • Check_nrpe-pluginet ligger på den lokale overvågningsmaskine.
  • NRPE-dæmonen kører på den eksterne Linux / Unix-maskine.
  • Der er en SSL (Secure Socket Layer) forbindelse mellem overvågnings vært og fjern vært som vist i diagrammet ovenfor.

Nu i denne Nagios-tutorial er det tid til nogle Praktisk erfaring .

Lad os starte med at installere Nagios Core

Installer Nagios Core:

Den komplette proces til installation af Nagios kan opsummeres i fire trin:

  1. Installer påkrævede pakker i overvågningsserveren
  2. Installer Nagios Core, Nagios Plugins og NRPE (Nagios Remote Plugin Executor)
  3. Indstil Nagios-adgangskode for at få adgang til webgrænsefladen
  4. Installer NRPE i klient

Trin - 1: Installer påkrævede pakker på overvågningsserveren:

Besøg hjemmesiden: http://dl.fedoraproject.org/pub/epel/6/

Klik på i386, så omdirigeres du til en side.

Da jeg bruger CentOS 6, så skal jeg højreklikke og kopiere linkplaceringen af ​​' epel-release-6-8.noarch.rpm ', Som vist i ovenstående skærmbillede.

Åbn terminalen, og brug den rpm -Uvh kommando og indsæt linket.

Vi er nødt til at downloade endnu et lager, for at besøge webstedet ' http://rpms.famillecollet.com/enterprise/ ''

Højreklik og kopier linkplaceringen til ‘ remi-release-6.rpm ''

Åbn terminalen igen, og brug den rpm -Uvh kommando og indsæt linket.

Fint, så vi er færdige med forudsætningerne. Lad os gå videre til næste trin.

Trin - 2: Installer Nagios Core, Nagios Plugins og NRPE (Nagios Remote Plugin Executor):

Udfør nedenstående kommando i terminalen:

yum -y installerer nagios nagios-plugins-alle nagios-plugins-nrpe nrpe httpd php

Dette installerer Nagios, Nagios Plugins, Plugins til NRPE, NRPE, Apache og PHP

Apache-webserver er påkrævet for at overvåge den aktuelle webserverstatus.

Php bruges til at behandle dynamisk indhold af stedets dato.

Dernæst skal vi aktivere Apache- og Nagios-tjenesten:

chkconfig httpd på && chkconfig nagios på

Vores næste trin er at starte Nagios og Apache:

service httpd start && service nagios start

Nu vil jeg aktivere swap-hukommelse på mindst 1 GB. Det er tid til at oprette selve swap-filen ved hjælp af dd-kommandoen:

dd if = / dev / zero of = / swap bs = 1024 count = 2097152

Swap bruges grundlæggende til at frigøre nogle, ikke så ofte tilgængelige oplysninger fra RAM, og flytte den til en bestemt partition på vores harddisk.

Nu hvor du har oprettet swap-partitionen, skal du bruge kommandoen mkswap for at indstille swap-partitionen. Dette forbereder swap-filen ved at oprette et linux-swap-område.

mkswap / swap

For at forhindre, at filen bliver verdenslæselig, skal du indstille de korrekte tilladelser til swap-filen:

chown rod. / swap chmod 0600 / swap

Hvis du ikke ser nogen fejl, er dit swap-område klar til brug. For at aktivere det med det samme skal du skrive:

swapon / swap

Denne fil varer på den virtuelle private server, indtil maskinen genstarter. Du kan sikre, at swap'en er permanent ved at føje den til fstab-filen.

ekko / swap swap swap standard 0 0 >> / etc / fstab

Operativsystemets kerne kan justere, hvor ofte den er afhængig af swap gennem en konfigurationsparameter kendt som swappiness .

For at finde de aktuelle swappiness-indstillinger, skriv:

kat / proc / sys / vm / swappiness

Swapiness kan være en værdi fra 0 til 100. Swappiness near 100 betyder, at operativsystemet bytter ofte og normalt for tidligt. Selvom swap giver ekstra ressourcer, er RAM meget hurtigere end swap-plads. Når som helst noget flyttes fra RAM til bytte, sænkes det.

En swappiness-værdi på 0 betyder, at driften kun vil stole på swap, når det absolut er nødvendigt. Vi kan justere swappiness med sysctl-kommandoen. For at få din VPS til automatisk at anvende denne indstilling hver gang den starter, kan du tilføje indstillingen til /etc/sysctl.conffil:

ekko vm.swappiness = 0 >> /etc/sysctl.conf && sysctl -p

Endelig er vi færdige med det andet trin.

Lad os gå videre og indstille Nagios-adgangskoden for at få adgang til webgrænsefladen.

Trin - 3: Indstil Nagios-adgangskode for at få adgang til webgrænsefladen:

Indstil adgangskoden for at få adgang til webgrænsefladen, brug nedenstående kommando:

htpasswd -c / etc / nagios / passwd nagiosadmin

Indtast adgangskoden, og bekræft den ved at indtaste den igen.

Åbn nu browseren. Her skal du skrive din offentlige IP eller værtsnavn / nagios. Overvej eksemplet nedenfor:

Her skal du angive brugernavn og adgangskode. Som standard er brugernavnet nagiosadmin, og adgangskode er det, du har angivet i det forrige trin. Til sidst skal du trykke på OK.

Herefter dirigeres du til Nagios Core-dashboard.

Du kan klikke på værter og se, hvad alle værter din Nagios Core overvåger i øjeblikket.

Du kan bemærke, at det kun overvåger en vært, dvs. localhost. Hvis jeg vil have, at min Nagios Core skal overvåge en ekstern vært, skal jeg installere NRPE i den eksterne vært. Dette bringer os til næste trin, installer NRPE i klient / maskine, som Nagios skal overvåge.

Trin - 4: Installer NRPE i klient:

Okay, lad os installere NRPE i klientmaskinen.

For det første skal du installere de krævede pakker som jeg gjorde på min Nagios-servermaskine. Så udfør bare de samme kommandoer, overvej nedenstående skærmbilleder:

Installer nu Nagios, Nagios Plugins og NRPE i klienten:

yum -y installerer nagios nagios-plugins-all nrpe

Når den er installeret, skal du aktivere NRPE-tjenesten:

chkconfig nrpe på


Vores næste trin er at redigere, nrpe.cfg fil. Jeg bruger vi editor, kan du også vælge en hvilken som helst anden editor:

Du skal tilføje IP-adressen på din overvågningsserver, i den tilladte værtslinje skal du overveje nedenstående skærmbillede:

Her er IP-adressen på min overvågningsserver 192.168.56.101.

Nu skal vi konfigurere firewallregler for at tillade forbindelse mellem overvågningsserver og klient.

iptables -N NRPE

-En mulighed bruges til at tilføje den nye regel til slutningen af ​​en kæde. Hvis du vil placere det et andet sted i kæden, kan du bruge indstillingen -I, som giver dig mulighed for at specificere placeringen af ​​den nye regel.

Nedenstående kommando accepterer tcp-anmodninger på porte 5666.

iptables -I INPUT -s 0/0 -p tcp --dport 5666 -j NRPE iptables -I NRPE -s 192.168.56.101 -j ACCEPT iptables -A NRPE -s 0/0 -j DROP

Dette vil dybest set konfigurere iptables til at acceptere pakker fra en bestemt vært, i mit tilfælde - 192.168.56.101, og dropper pakkerne fra andre værter.

Nu gemmer jeg disse konfigurationer:

/etc/init.d/iptables gemmes

Start NRPE-tjenesten nu.

service nrpe start

Gå nu tilbage til overvågningsserveren.

Her skal jeg redigere nagios.cfg-filen.

vi /etc/nagios/nagios.cfg

Fjern kommentar fra linjen - cfg_dir = etc / nagios / servere

Opret 'server' katalog, til den brug mkdir kommando.

mkdir / etc / nagios / servere /

Skift din arbejdsmappe til servere.

cd / etc / nagios / servere

Opret en ny fil i denne mappe med filtypen .cfg, og rediger den. Jeg vil navngive det som client.cfg, og jeg vil bruge det vi redaktør.

vi /etc/nagios/servers/client.cfg

Her tilføjes nedenstående linjer:

hvad er charat i java

Dette inkluderer dybest set den slags tjenester, jeg vil overvåge. Giv maskinens værtsnavn og dets ip-adresse, som Nagios skal overvåge.

På samme måde kan du tilføje antal tjenester, som du vil overvåge. De samme konfigurationer kan bruges til at tilføje 'n' antal klienter.

Sidste trin fyre, indstil mappetilladelserne korrekt og genstart Nagios.

chown -R nagios. / etc / nagios /

Genstart Nagios nu

service nagios genstart

Åbn browseren, og skriv igen værtsnavn eller offentlig ip / nagios /. I mit tilfælde er det localhost / nagios /.

Klik på værter for at se alle maskiner, som Nagios i øjeblikket overvåger.

Her kan du bemærke, at det i øjeblikket overvåger klientmaskinen (værtsnavn på den maskine, som jeg vil have Nagios til at overvåge). Dybest set har vi tilføjet en fjernhost ved hjælp af NRPE.

Jeg håber, du har nydt at læse denne Nagios-tutorial, jeg kommer snart med flere blogs på Nagios.

Hvis du fandt denne Nagios-tutorial relevant, skal du tjekke af Edureka, et pålideligt online læringsfirma med et netværk på mere end 250.000 tilfredse elever spredt over hele kloden. Edureka DevOps-certificeringskursus hjælper elever med at få ekspertise i forskellige DevOps-processer og -værktøjer som Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack og GIT til automatisering af flere trin i SDLC.

Har du et spørgsmål til mig? Nævn det i kommentarfeltet, og jeg vender tilbage til dig.