Icinga: A Next Generation Open Source Linux Server Monitoring Tool fir RHEL/CentOS 7.0


Icinga ass e modernt Open Source Iwwerwachungsinstrument dat aus enger Nagios Gabel staamt, an elo zwou parallele Filialen huet, Icinga 1 an Icinga 2. Wat dëst Tool mécht ass net anescht wéi Nagios wéinst der Tatsaach datt et ëmmer nach Nagios Plugins an Add-ons benotzt a souguer Konfiguratiounsdateien fir Netzwierkservicer an Hosten ze kontrolléieren an ze iwwerwaachen, awer e puer Differenzen kënnen op Webinterfaces gesi ginn, besonnesch op nei Web Interface, Berichterstattung an einfach Add-ons Entwécklung.

Dëst Thema konzentréiert sech op eng Basisinstallatioun vum Icinga 1 Iwwerwaachungstool vu Binären op CentOS oder RHEL 7, mat RepoForge > (virdrun bekannt als RPMforge) Repositories fir CentOS 6, mat der klassescher Web-Interface déi vum Apache Webserver gehal gëtt an d'Benotzung vun Nagios Plugins déi op Ärem System installéiert ginn.

Lies Och: Installéiert Nagios Iwwerwaachungstool an RHEL/CentOS

Eng Basis LAMP Installatioun op RHEL/CentOS 7.0 ouni MySQL a PhpMyAdmin, awer mat dëse PHP Moduler: php-cli
php-pear php-xmlrpc php-xsl php-pdo php-seife php-gd.

  1. Basis LAMP installéieren an RHEL/CentOS 7.0

Schrëtt 1: Icinga Monitoring Tool installéieren

1. Ier Dir mat der Icinga-Installatioun vu Binäre weidergeet, add RepoForge Repositories op Ärem System andeems Dir de folgende Kommando ausstellt, jee no Ärem Maschinn.

# rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.x86_64.rpm
# rpm -Uvh http://pkgs.repoforge.org/rpmforge-release/rpmforge-release-0.5.3-1.el6.rf.i686.rpm

2. Nodeems d'RepoForge Repositories op Ärem System bäigefüügt goufen, fänkt mat Icinga Basisinstallatioun un ouni de Webinterface nach, andeems Dir de folgende Kommando ausféiert.

# yum install icinga icinga-doc

3. De nächste Schrëtt ass ze probéieren d'Icinga Webinterface z'installéieren, déi vum icinga-gui Package geliwwert gëtt. Et schéngt, datt fir de Moment dëse Package e puer ongeléiste Problemer mat CentOS/RHEL 7 huet, a wäert e puer Transaktiounscheckfehler generéieren, awer Dir kënnt Iech gratis fillen, de Package z'installéieren, vläicht mëttlerweil gouf de Problem geléist.

Trotzdem, wann Dir déiselwecht Feeler op Ärer Maschinn kritt wéi d'Biller hei drënner weisen, benotzt déi folgend Approche wéi weider beschriwwen, fir d'Icinga Webinterface z'installéieren.

# yum install icinga-gui

4. D'Prozedur fir den icinga-gui Package ze installéieren deen d'Webinterface ubitt ass folgend. Luet d'éischt de binäre Paketform RepoForge Websäit erof mam wget Kommando.

# wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.x86_64.rpm
# wget http://pkgs.repoforge.org/icinga/icinga-gui-1.8.4-4.el6.rf.i686.rpm

5. Nodeems wget fäerdeg ass de Package erofzelueden, erstellt e Verzeichnis mam Numm icinga-gui (Dir kënnt en aneren Numm wielen wann Dir wëllt), plënnert icinga-gui RPM binär an deen Dossier , gitt den Dossier an Extrait RPM Package Inhalt andeems Dir déi nächst Serie vu Kommandoen ausstellt.

# mkdir icinga-gui
# mv icinga-gui-* icinga-gui
# cd icinga-gui
# rpm2cpio icinga-gui-* | cpio -idmv

6. Elo, datt Dir den extrahéierten icinga-gui Package hutt, benotzt ls Kommando fir den Dossierinhalt ze visualiséieren - et sollt dräi nei Verzeichnisser entstoen - etc , usr an var. Fänkt un mat enger rekursiver Kopie vun allen dräi resultéierte Verzeichnisser op Ärem System Root Dateisystem Layout auszeféieren.

# cp -r etc/* /etc/
# cp -r usr/* /usr/
# cp -r var/* /var/

Schrëtt 2: Änneren Icinga Apache Konfiguratiounsdatei a System Permissiounen

7. Wéi op dësem Artikel Aféierung presentéiert, muss Äre System Apache HTTP-Server a PHP installéiert hunn fir Icinga Web Interface ze lafen.

Nodeems Dir déi uewe genannte Schrëtt ofgeschloss hutt, sollt eng nei Konfiguratiounsdatei elo um Apache conf.d Wee mam Numm icinga.conf präsent sinn. Fir Zougang zu Icinga vun enger Fernplaz vum Browser ze kréien, öffnen dës Konfiguratiounsdatei an ersetzt all säin Inhalt mat de folgende Konfiguratiounen.

# nano /etc/httpd/conf.d/icinga.conf

Vergewëssert Iech datt Dir all Dateiinhalt mat de folgenden ersetzt.

ScriptAlias /icinga/cgi-bin "/usr/lib64/icinga/cgi"

<Directory "/usr/lib64/icinga/cgi">
#  SSLRequireSSL
   Options ExecCGI
   AllowOverride None
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
    </IfModule>
 </Directory>

Alias /icinga "/usr/share/icinga/"

<Directory "/usr/share/icinga/">

#  SSLRequireSSL
   Options None
   AllowOverride All
   AuthName "Icinga Access"
   AuthType Basic
   AuthUserFile /etc/icinga/passwd

   <IfModule mod_authz_core.c>
      # Apache 2.4
      <RequireAll>
         Require all granted
         # Require local
         Require valid-user
      </RequireAll>
   </IfModule>

   <IfModule !mod_authz_core.c>
      # Apache 2.2
      Order allow,deny
      Allow from all
      #  Order deny,allow
      #  Deny from all
      #  Allow from 127.0.0.1
      Require valid-user
   </IfModule>
</Directory>

8. Nodeems Dir Icinga httpd Konfiguratiounsdatei geännert hutt, fügen Apache System Benotzer op Icinga System Grupp a benotzt déi folgend System Permissiounen op nächst Systemweeër.

# usermod -aG icinga apache
# chown -R icinga:icinga /var/spool/icinga/*
# chgrp -R icinga /etc/icinga/*
# chgrp -R icinga /usr/lib64/icinga/*
# chgrp -R icinga /usr/share/icinga/*

9. Ier Dir den Icinga Systemprozess an den Apache-Server ufänkt, vergewëssert Iech datt Dir och SELinux Sécherheetsmechanismus auszeschalten andeems Dir setenforce 0 Kommando leeft an d'Ännerunge permanent maachen andeems Dir /etc ännert. /selinux/config Datei, ännert SELINUX Kontext vun erzwéngen op behënnert.

# nano /etc/selinux/config

Änneren SELINUX Direktiv fir esou ausgesinn.

SELINUX=disabled

Dir kënnt och den getenforce Kommando benotzen fir de SELinux Status ze gesinn.

10. Als leschte Schrëtt virum Start vum Icinga Prozess a Web Interface, als Sécherheetsmoossnam kënnt Dir elo Icinga Admin Passwuert änneren andeems Dir de folgende Kommando ausféiert, an dann béid Prozesser starten.

# htpasswd -cm /etc/icinga/passwd icingaadmin
# systemctl start icinga
# systemctl start httpd

Schrëtt 3: Installéieren Nagios Plugins an Zougang Icinga Web Interface

11. Fir ëffentlech extern Servicer op Hosten mat Icinga ze iwwerwaachen, wéi HTTP, IMAP, POP3, SSH, DNS, ICMP Ping a vill aner Servicer, déi vum Internet oder LAN zougänglech sinn, musst Dir Nagios Plugins Package geliwwert vun EPEL Repositories.

# rpm -Uvh http://dl.fedoraproject.org/pub/epel/7/x86_64/e/epel-release-7-6.noarch.rpm
# yum install yum install nagios-plugins nagios-plugins-all

12. Fir Iech op Icinga Web Interface unzemellen, öffnen e Browser a weisen op d'URL http://system_IP/icinga/. Benotzt icingaadmin als Benotzernumm an d'Passwuert dat Dir virdru geännert hutt an Dir kënnt elo Äre localhost System Status gesinn.

Dat ass alles! Elo hutt Dir Icinga Basis mat der klassescher Web-Interface - Nagios wéi - installéiert a lafen op Ärem System. Mat Nagios Plugins kënnt Dir elo ufänken nei Hosten an extern Servicer ze addéieren fir ze kontrolléieren an ze iwwerwaachen andeems Dir Icinga Konfiguratiounsdateien op /etc/icinga/ Wee ännert. Wann Dir intern Servicer op Remote Hosten iwwerwaache musst, da musst Dir en Agent op Remote Hosten wéi NRPE, NSClient ++, SNMP installéieren fir Daten ze sammelen an op den Icinga Haaptprozess ze schécken.

Lies Och

  1. Install NRPE Plugin a Monitor Remote Linux Hosts
  2. Install NSClient++ Agent a Monitor Remote Windows Hosts