Tutorial de Nagios: seguiment continu amb Nagios

Tutorial de Nagios: Nagios controla tota la infraestructura de TI per garantir que els sistemes, les aplicacions, els serveis i els processos empresarials funcionin correctament.

Tutorial de Nagios:

Crec que hi ha molt poques publicacions a Nagios i que hi ha poca informació rellevant disponible a Internet. Per tant, crec que aquest post us proporcionarà una bona claredat sobre aquesta eina de control. Nagios supervisa tota la infraestructura de TI per garantir que els sistemes, les aplicacions, els serveis i els processos empresarials funcionin correctament.És una part integral del cicle de vida de DevOps i és imprescindible .En aquest tutorial de Nagios, tractaré els temes següents:



  1. Per què necessitem un seguiment continu?
  2. Què és el seguiment continu?
  3. Què és Nagios?
  4. Com instal·lar Nagios?
  5. Com afegir un servidor remot mitjançant NRPE (Nagios Remote Plugin Executor).

Comencem aquest tutorial de Nagios, entenent per què necessitem un seguiment continu perquè tot existeix per una raó. Per tant, intentem esbrinar aquest motiu.



Per què necessitem un seguiment continu?

Les eines de supervisió contínua resolen els errors del sistema (poca memòria, servidor inaccessible, etc.) abans que tinguin un impacte negatiu en la productivitat del vostre negoci.

Els motius importants per utilitzar una eina de control són:



  • Detecta qualsevol problema de xarxa o servidor
  • Determina la causa arrel de qualsevol problema
  • Manté la seguretat i la disponibilitat del servei
  • Supervisa i soluciona problemes de rendiment del servidor
  • Ens permet planificar actualitzacions d’infraestructures abans que els sistemes obsolets causin fallades
  • Pot respondre a problemes en el primer senyal d’un problema
  • Es pot utilitzar per solucionar automàticament problemes quan es detecten
  • Assegura que les interrupcions de la infraestructura de TI tenen un efecte mínim en els resultats de la vostra organització
  • Pot controlar tota la infraestructura i els processos empresarials

Sí, fa molta feina divertida, però què és?

Què és el seguiment continu?

Permeteu-me dir-vos primer on es troba el seguiment continu al cicle de vida de DevOps, tingueu en compte el diagrama següent:

DevOps Life-Cyce - Tutorial de Nagios - Edureka



Si mireu el diagrama, heu de pensar que aquesta és l’última etapa del cicle de vida de DevOps, però no és així. El cicle de vida de DevOps no té fi, i aquest és el motiu del símbol infinit. El seguiment continu apareix a la imatge, un cop l’aplicació es desplega als servidors de producció.

El seguiment continu consisteix en la capacitat d’una organització per detectar, informar, respondre, contenir i mitigar els atacs que es produeixen a la seva infraestructura.

El seguiment continu no és realment nou, ja fa temps que existeix. Durant anys, els nostres professionals de la seguretat realitzen anàlisis estàtiques des de: registre del sistema, registres de tallafocs, registres IDS, registres IPS, etc. Però no proporcionen una anàlisi i resposta adequades. L’aproximació de seguiment continu d’avui ens dóna la possibilitat d’agregar tots els esdeveniments que he comentat anteriorment, relacionar-los conjuntament, comparar-los i, a continuació, estimar la postura de risc de l’organització.

Si agafem totes aquestes peces i assegurem la connexió entre elles. Aquest és el nucli del seguiment continu.

Deixeu-me explicar-ho amb un cas d’ús.Penseu en el diagrama següent:

Ara, permeteu-me explicar-vos el diagrama anterior:

  1. Disposem de diverses eines de seguretat, com ara tallafocs, IDS, protecció del punt final, etc. estan connectades amb un sistema de gestió d’esdeveniments i informació de seguretat.
  2. Per aconseguir un seguiment continu, necessitem que totes les parts parlin entre elles, permeteu-me que us ho expliqui.
  3. Per tant, disposem d’eines de seguretat i sèries de ‘Punts finals’, que poden incloure clients i servidors, encaminadors, commutadors, dispositius mòbils, etc.
  4. Aquests dos grups poden parlar amb un sistema d'informació de seguretat i gestió d'esdeveniments (SIEM), mitjançant un llenguatge comú i de manera més automatitzada.
  5. Connectat a aquest SIEM hi ha dos components importants, el primer és un magatzem de dades. Ara a aquest magatzem de dades, connectarem 'Analytics' i 'Intelligence de seguretat'.
  6. La intel·ligència de seguretat (SI) és la informació rellevant per protegir una organització contra amenaces externes i privades, així com els processos, polítiques i eines dissenyades per recopilar i analitzar aquesta informació.
  7. Aquest SIEM també està connectat a un 'Sistema de compliment i risc de governança', que bàsicament proporciona un tauler de control.
  8. A aquest ‘Sistema de compliment i risc de governança’ adjuntem una base de dades de riscos. Això ens proporciona 'Intel·ligència accionable'.
  9. La intel·ligència accionable no és res més que informació sobre la qual es pot actuar, amb la implicació addicional de les accions hauria ser pres.

Així doncs, aquí estem supervisant els esdeveniments de manera continuada i determinant quin nivell de risc estem experimentant. Amb això, podem correlacionar els esdeveniments al SIEM. Podem realitzar deteccions de comportament i anomalies de la xarxa al ‘motor d’anàlisi’. En això consisteix el seguiment continu:

La integració d’una organitzacióeines de seguretat,l'agregació,normalització icorrelació de les dades produïdes per les eines de seguretat. L’anàlisi d’aquestes dades, basant-se en els objectius de risc de l’organització i el coneixement de les amenaces, i en la resposta gairebé en temps real als riscos identificats.

‘Si no el podeu mesurar no el podeu gestionar’. Espero que sàpiga de què parlo.

A continuació, en aquest tutorial de Nagios, us presentaré una de les eines de control més famoses de Nagios.

Què és Nagios?

Nagios s’utilitza per a un seguiment continu de sistemes, aplicacions, serveis i processos empresarials, etc. en una cultura DevOps. En cas d’error, Nagios pot alertar el personal tècnic del problema, cosa que els permet iniciar processos de remediació abans que les interrupcions afectin els processos empresarials, els usuaris finals o els clients. Amb Nagios, no cal que expliqueu per què una interrupció invisible de la infraestructura afecta el resultat final de la vostra organització.

Deixeu-me explicar-vos com funciona Nagios.Penseu en el diagrama següent:

Nagios s'executa en un servidor, normalment com a dimoni o com a servei.

Periòdicament executa connectors que resideixen al mateix servidor, contacten amb amfitrions o servidors de la vostra xarxa o Internet. Es pot veure la informació d'estat mitjançant la interfície web. També podeu rebre notificacions per correu electrònic o SMS si passa alguna cosa.
El dimoni Nagios es comporta com un planificador que executa determinats scripts en determinats moments. Emmagatzema els resultats d'aquests scripts i executarà altres scripts si aquests resultats canvien.

Connectors: Aquestssón executables o scripts compilats (scripts Perl, scripts shell, etc.) que es poden executar des d'una línia d'ordres per comprovar l'estat o un amfitrió o servei. Nagios utilitza els resultats dels connectors per determinar l’estat actual dels amfitrions i serveis de la vostra xarxa.

Parlem ara de l'arquitectura.

Arquitectura Nagios:

  • Nagios es basa en una arquitectura de servidor / agents.
  • Normalment, en una xarxa, un servidor Nagios s’executa en un amfitrió i els connectors interactuen amb els amfitrions locals i remots que cal controlar.
  • Aquests connectors enviaran informació al programador, que la mostra en una GUI.

També he d’explicar-vos NRPE (Nagios Remote Plugin Executor).

El complement NRPE està dissenyat per permetre-vos executar connectors Nagios en màquines remotes Linux / Unix. La raó principal per fer-ho és permetre a Nagios controlar els recursos “locals” (com ara la càrrega de la CPU, l’ús de memòria, etc.) en màquines remotes. Atès que aquests recursos públics no solen estar exposats a màquines externes, cal instal·lar un agent com NRPE a les màquines remotes Linux / Unix.

Penseu en el diagrama següent:

  • El connector check_nrpe resideix a la màquina de control local.
  • El dimoni NRPE s'executa a la màquina remota Linux / Unix.
  • Hi ha una connexió SSL (Secure Socket Layer) entre l’amfitrió de control i l’amfitrió remot, tal com es mostra al diagrama anterior.

Ara, en aquest tutorial de Nagios, és hora d’alguns Mans amunt .

Comencem instal·lant Nagios Core

Instal·leu Nagios Core:

El procés complet per instal·lar Nagios es pot resumir en quatre passos:

  1. Instal·leu els paquets necessaris al servidor de supervisió
  2. Instal·leu Nagios Core, Nagios Plugins i NRPE (Nagios Remote Plugin Executor)
  3. Establiu la contrasenya de Nagios per accedir a la interfície web
  4. Instal·leu NRPE al client

Pas 1: instal·leu els paquets necessaris al servidor de monitorització:

Visiteu el lloc web: http://dl.fedoraproject.org/pub/epel/6/

Feu clic a i386 i, a continuació, se us redirigirà a una pàgina.

Com que faig servir CentOS 6, faré clic amb el botó dret i copiaré la ubicació de l’enllaç de ‘ epel-release-6-8.noarch.rpm ', Tal com es mostra a la captura de pantalla anterior.

Obriu el terminal i utilitzeu-lo rpm -Uvh ordeneu i enganxeu l'enllaç.

Hem de descarregar un dipòsit més, per això visiteu el lloc web ‘ http://rpms.famillecollet.com/enterprise/ '

Feu clic amb el botó dret i copieu la ubicació de l'enllaç per a ' remi-release-6.rpm '

Torneu a obrir el terminal i utilitzeu-lo rpm -Uvh ordeneu i enganxeu l'enllaç.

Molt bé, així que ja hem acabat amb els requisits previs. Anem al pas següent.

Pas 2: Instal·leu Nagios Core, Nagios Plugins i NRPE (Nagios Remote Plugin Executor):

Executeu l'ordre següent al terminal:

yum -y install nagios nagios-plugins-all nagios-plugins-nrpe nrpe httpd php

Això instal·larà Nagios, complements Nagios, connectors per a NRPE, NRPE, Apache i PHP

Cal un servidor web Apache per supervisar l’estat actual del servidor web.

PHP s’utilitza per processar contingut dinàmic de la data del lloc.

A continuació, hem d’habilitar el servei Apache i Nagios:

chkconfig httpd a && chkconfig nagios a

El nostre següent pas és iniciar Nagios i Apache:

servei httpd start && servei nagios start

Ara, habilitaré la memòria d'intercanvi d'almenys 1 GB. És hora de crear el fitxer d'intercanvi en si mateix mitjançant l'ordre dd:

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

L’intercanvi s’utilitza bàsicament per alliberar informació de la memòria RAM que no s’accedeix amb tanta freqüència i moure-la a una partició específica del nostre disc dur.

Ara que heu creat la partició d'intercanvi, utilitzeu l'ordre mkswap per configurar la partició d'intercanvi. Això prepararà el fitxer d’intercanvi creant una àrea d’intercanvi de Linux.

mkswap / swap

Per evitar que el fitxer sigui llegible pel món, heu de configurar els permisos correctes al fitxer d'intercanvi:

arrel bufada. / swap chmod 0600 / swap

Si no veieu cap error, el vostre espai d'intercanvi ja es pot utilitzar. Per activar-lo immediatament, escriviu:

swapon / swap

Aquest fitxer durarà al servidor privat virtual fins que la màquina es reiniciï. Podeu assegurar-vos que l'intercanvi sigui permanent afegint-lo al fitxer fstab.

valors predeterminats d'intercanvi eco / swap swap 0 0 >> / etc / fstab

El nucli del sistema operatiu pot ajustar la freqüència amb què es basa en l'intercanvi a través d'un paràmetre de configuració conegut com swappiness .

Per trobar la configuració actual de swappiness, escriviu:

cat / proc / sys / vm / swappiness

La permuta pot ser un valor de 0 a 100. La permeabilitat a prop de 100 significa que el sistema operatiu canviarà sovint i normalment, massa aviat. Tot i que l'intercanvi proporciona recursos addicionals, la memòria RAM és molt més ràpida que l'espai d'intercanvi. Sempre que es passa alguna cosa de la memòria RAM a l’intercanvi, s’alenteix.

Un valor de swappiness de 0 significa que l'operació només dependrà del swap quan ho necessiti. Podem ajustar el swappiness amb l’ordre sysctl. Per fer que el vostre VPS apliqui aquesta configuració automàticament cada cop que arrenca, podeu afegir-la a /etc/sysctl.confdossier:

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

Finalment, hem acabat amb el segon pas.

Continuem més endavant i configurem la contrasenya de Nagios per accedir a la interfície web.

Pas 3: configureu la contrasenya de Nagios per accedir a la interfície web:

Definiu la contrasenya per accedir a la interfície web, utilitzeu l'ordre següent:

htpasswd -c / etc / nagios / passwd nagiosadmin

Escriviu la contrasenya i confirmeu-la tornant a escriure-la.

Ara, obriu el navegador. Aquí, escriviu la vostra IP pública o nom d’amfitrió / nagios. Considereu l'exemple següent:

Aquí, doneu el nom d’usuari i la contrasenya. Per defecte, el nom d'usuari és nagiosadmin, i la contrasenya és la que heu establert al pas anterior. Finalment, premeu D'acord.

Després d'això, us dirigireu al tauler de control de Nagios Core.

Podeu fer clic a amfitrions i veure el que tots els allotjaments que supervisa actualment el vostre Nagios Core.

Podeu notar que només supervisa un host, és a dir, localhost. Si vull que el meu Nagios Core supervisi un amfitrió remot, he d’instal·lar NRPE en aquest amfitrió remot. Això ens porta al següent pas: instal·leu NRPE al client / màquina que voleu que Nagios supervisi.

Pas 4: Instal·leu NRPE al client:

Molt bé, anem a instal·lar NRPE a la màquina client.

En primer lloc, heu d’instal·lar els paquets necessaris com ho vaig fer a la meva màquina servidor Nagios. Per tant, només cal executar les mateixes ordres, tingueu en compte les captures de pantalla següents:

Ara instal·leu Nagios, Nagios Plugins i NRPE al client:

yum -y instal·leu nagios nagios-plugins-all nrpe

Un cop instal·lat, activeu el servei NRPE:

chkconfig nrpe on


El nostre següent pas és editar el, nrpe.cfg dossier. Faré servir el fitxer nosaltres editor, podeu triar qualsevol altre editor també:

Heu d’afegir l’adreça IP del servidor de monitorització, a la línia d’amfitrió permesa, tingueu en compte la captura de pantalla següent:

Aquí, l’adreça IP del meu servidor de supervisió és 192.168.56.101.

Ara, hem de configurar les regles del tallafoc per permetre la connexió entre el servidor de supervisió i el client.

iptables -N NRPE

-S’utilitza una opció per afegir la nova regla al final d’una cadena. Si voleu col·locar-lo en un altre lloc de la cadena, podeu utilitzar l'opció -I que us permet especificar la posició de la nova regla.

L'ordre següent accepta sol·licituds tcp als ports 5666.

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

Això bàsicament configurarà iptables per acceptar paquets d’un amfitrió concret, en el meu cas - 192.168.56.101, i elimina els paquets d’altres amfitrions.

Ara, desaré aquestes configuracions:

/etc/init.d/iptables guardar

Inicieu el servei NRPE ara.

servei nrpe start

Ara torneu al servidor de supervisió.

Aquí he d’editar el fitxer nagios.cfg.

vi /etc/nagios/nagios.cfg

Deixa el comentari a la línia - cfg_dir = etc / nagios / servers

Feu el directori 'servidor' per a aquest ús mkdir comandament.

mkdir / etc / nagios / servers /

Canvieu el directori de treball a servidors.

cd / etc / nagios / servers

Creeu un fitxer nou en aquest directori amb l'extensió .cfg i editeu-lo. El posaré com a client.cfg i ho faré servir nosaltres editor.

vi /etc/nagios/servers/client.cfg

A continuació, afegiu les línies següents:

programa Java per a sèries Fibonacci

Això inclou bàsicament el tipus de serveis que vull supervisar. Indiqueu el nom d'amfitrió de la màquina i la seva adreça IP que voleu que Nagios supervisi.

De la mateixa manera, podeu afegir el nombre de serveis que vulgueu supervisar. Es poden utilitzar les mateixes configuracions per afegir un nombre de clients 'n'.

Últim pas, definiu els permisos de la carpeta correctament i reinicieu Nagios.

chown -R nagios. / etc / nagios /

Ara, reinicieu Nagios

servei nagios reinici

Obriu el navegador i torneu a escriure nom d'amfitrió o IP pública / nagios /. En el meu cas és localhost / nagios /.

Feu clic als amfitrions per veure totes les màquines que Nagios supervisa actualment.

Aquí podeu notar que actualment està supervisant la màquina client (nom d'amfitrió de la màquina que vull que supervisi Nagios). Bàsicament, hem afegit un host remot mitjançant NRPE.

Espero que us hagi agradat llegir aquest tutorial de Nagios, aviat aniré amb més blocs a Nagios.

Si heu trobat que aquest tutorial de Nagios és rellevant, consulteu el per Edureka, una empresa d'aprenentatge en línia de confiança amb una xarxa de més de 250.000 estudiants satisfets repartits per tot el món. El curs de formació en certificació Edureka DevOps ajuda els estudiants a adquirir experiència en diversos processos i eines DevOps com Puppet, Jenkins, Nagios, Ansible, Chef, Saltstack i GIT per automatitzar diversos passos en SDLC.

Tens alguna pregunta? Esmenta’l a la secció de comentaris i et respondré.