GNU/Linux >> Znalost Linux >  >> Linux

4 kroky k definování kontaktů Nagios pomocí upozornění e-mailem a pagerem

Nagios je jedním z nejlepších dostupných řešení pro monitorování serverů a sítě s otevřeným zdrojovým kódem. Pomocí flexibilního rámce nagios můžete monitorovat téměř cokoli (včetně databáze a vlastní aplikace). Tento článek pomocí 4 jednoduchých kroků vysvětluje, jak nastavit definice kontaktů, které obdrží upozornění, když má hostitel nebo služba nějaké problémy.
 
Dříve jsme také diskutovali o tom, jak nastavit Nagios a monitorovat Windows server, monitorovat Linux Server, monitorovat VPN relace a monitorovat síťový přepínač.

1. Definujte Obecnou šablonu kontaktu v templates.cfg

Instalace Nagios poskytuje výchozí obecnou šablonu kontaktu, kterou lze použít jako referenci pro vytváření vašich kontaktů. Vezměte prosím na vědomí, že všechny směrnice uvedené v níže uvedené šabloně obecného kontaktu jsou povinné. Pokud jste se tedy rozhodli nepoužívat ve svých kontaktech definici obecné šablony kontaktu, měli byste si všechny tyto povinné definice definovat ve svých kontaktech sami.
 
Následující obecný-kontakt je již dostupný v /usr/local/nagios/etc/objects/templates.cfg. Také templates.cfg je standardně součástí nagios.cfg, jak je uvedeno níže.
 
Upozorňujeme, že kteroukoli z těchto direktiv uvedených v souboru templates.cfg lze přepsat, když definujete skutečný kontakt pomocí této obecné šablony.

# grep templates /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/templates.cfg

Note: generic-contact is available under
      /usr/local/nagios/etc/objects/templates.cfg

define contact{
        name                            generic-contact
        service_notification_period     24x7
        host_notification_period        24x7
        service_notification_options    w,u,c,r,f,s
        host_notification_options       d,u,r,f,s
        service_notification_commands   notify-service-by-email
        host_notification_commands      notify-host-by-email
        register                        0
        }

 

  • Jméno – Toto definuje název šablony kontaktu (generic-contact).
  • service_notification_period – Definuje, kdy může nagios posílat upozornění na problémy se službami (například výpadek Apache). Ve výchozím nastavení je to 24×7 časové období, které je definováno v /usr/local/nagios/etc/objects/timeperiods.cfg
  • host_notification_period – Definuje, kdy může nagios posílat upozornění na problémy s hostitelem (například selhání serveru). Ve výchozím nastavení je toto časové období 24×7.
  • service_notification_options – Definuje typ servisního upozornění, které lze odeslat. Ve výchozím nastavení to definuje všechny možné stavy služby včetně flappingových událostí. To také zahrnuje činnosti plánovaného odstávky služby.
  • host_notification_options – Definuje typ oznámení hostitele, která lze odesílat. Ve výchozím nastavení to definuje všechny možné stavy hostitele včetně událostí flapping. To také zahrnuje plánované činnosti prostoje hostitele.
  • service_notification_commands – Ve výchozím nastavení toto definuje, že kontakt by měl dostávat upozornění na problémy se službou (například výpadek databáze) prostřednictvím e-mailu. Můžete také definovat další příkazy a přidat je k této direktivě. Můžete například definovat svůj vlastní příkaz notify-service-by-sms.
  • host_notification_commands – Ve výchozím nastavení toto definuje, že kontakt by měl dostávat upozornění na problémy s hostitelem (například výpadek hostitele) prostřednictvím e-mailu. Můžete také definovat další příkazy a přidat je k této direktivě. Můžete například definovat svůj vlastní příkaz notify-host-by-sms.

2. Definujte jednotlivé kontakty v contacts.cfg

Jakmile potvrdíte, že jsou šablony obecných kontaktů definovány správně, můžete začít definovat definici jednotlivých kontaktů pro všechny lidi ve vaší organizaci, kteří by kdy dostávali oznámení z nagios. Upozorňujeme, že pouhé definování kontaktu neznamená, že obdrží upozornění. Později budete muset tento kontakt přiřadit buď k definici služby nebo hostitele, jak je uvedeno v dalších částech níže. Takže zde klidně definujte všechny možné kontakty. (například vývojáři, správci databází, správci systému, IT-manažeři, manažer zákaznických služeb, top management atd.)
 

Note: Define these contacts in /usr/local/nagios/etc/objects/contacts.cfg
define contact{
        contact_name                    sgupta
        use                             generic-contact
        alias                           Sanjay Gupta (Developer)
        email                           [email protected]
        pager                           [email protected]
        }
define contact{
        contact_name                    jbourne
        use                             generic-contact
        alias                           Jason Bourne (Sysadmin)
        email                           [email protected]
        }

3. Definujte skupiny kontaktů s více kontakty v contact.cfg

Jakmile definujete jednotlivé kontakty, můžete je také seskupit a odeslat příslušná upozornění. Například pouze správci databází potřebují být informováni o definici služby výpadku databáze. Takže může být vyžadována skupina db-admins. Také může být pouze správci unixového systému, kteří musí být upozorněni, když Apache selže. Takže může být vyžadována skupina unix-admins. Neváhejte definovat tolik skupin, kolik si myslíte, že je potřeba. Později můžete tyto skupiny použít v definicích jednotlivých služeb a hostitelů.
 

Note: Define contact groups in /usr/local/nagios/etc/objects/contacts.cfg

define contactgroup{
contactgroup_name          db-admins
alias                      Database Administrators
members                    jsmith, jdoe, mraj
}

define contactgroup{
contactgroup_name          unix-admins
alias                      Linux System Administrator
members                    jbourne, dpatel, mshankar
}

4. Připojte skupiny kontaktů nebo jednotlivé kontakty k definicím služby a hostitele

Jakmile definujete jednotlivé kontakty a skupiny kontaktů, je čas začít je připojovat ke konkrétní definici hostitele nebo služby, jak je uvedeno níže.
 

Note: Following host is defined under
     /usr/local/nagios/etc/objects/servers/email-server.cfg.
     This can be any host definition file.

define host{
use                     linux-server
host_name               email-server
alias                   Corporate Email Server
address                 192.168.1.14
contact_groups          unix-admins
}

Note: Following is defined under
      /usr/local/nagios/etc/objects/servers/db-server.cfg.
      This can be any host definition file.

define service{
use                             generic-service
host_name                       prod-db
service_description             CPU Load
contact_groups                  unix-admins
check_command                   check_nrpe!check_load
}

define service{
use                             generic-service
host_name                       prod-db
service_description             MySQL Database Status
contact_groups                  db-admins
check_command                   check_mysql_db
}

Linux
  1. Trim s Lvm a Dm-crypt?

  2. Spuštění skriptu s „. “ A se „zdrojem“?

  3. Práce s e-mailovými filtry a globálními e-mailovými filtry v cPanel

  1. Jak odeslat e-mail s přílohou a tělem z Linuxu

  2. AWK a názvy souborů s mezerou.

  3. Nejlepší postupy pro server Nagios?

  1. E-mailový klient s úpravou Vim

  2. Najděte rozdíl pomocí mtime - a +

  3. dělení a subvol strategie s btrfs