A Nagios működése
A Unix/Linux szerverek üzemeltetése wikiből
(Változatok közti eltérés)
a (→Host template) |
a (→Service template) |
||
195. sor: | 195. sor: | ||
register 0 |
register 0 |
||
} |
} |
||
− | + | </pre> |
|
Használata: |
Használata: |
A lap 2006. november 9., 22:16-kori változata
1 Igény
- Sok szervert és szolgáltatást üzemeltetünk
- Ne az ügyfél vegye észre, ha nem megy a weboldala/levelezése/akármije
- Legyen szép statisztika arról, hogy mikor, mi nem ment, lehessen lobogtatni a szolgáltatónak
- Mutathassunk Szép Ábrákat a felső vezetőknek
2 Igények finomítása
- Létezést akarunk-e vizsgálni („bináris adat”)
- Nagios
- mon
- Finomabb árnyalatokat („analóg adat”)
- munin
- smokeping
- mrtg
- cricket
3 A Nagios előnyei
- Szabad
- Nagy tudású
- Kiszámítható
- Látványos
- Többé-kevésbé takarékos
- ÁBRA ***
4 A Nagios hátrányai
- Nyögvenyelős konfiguráció, bár ez a feladatból is következik
- Nehezen bővíthető, összetett belső struktúra
- Fejlettebb képességek sztochasztikus viselkedése
- Tud büntetni, ha nem kezeljük kellő tisztelettel (sms floodok)
- Kicsit zavaros fogalmak
5 Pár fogalom
- Host: szolgáltatások csoportja. Hostot nem ellenőriz, és nem tart számon, a host egy statisztikai kategória.
- Service: dolog, jól definiált állapotokkal. Ezeket monitorozzuk.
- Contact: objektum, telefonszámmal, munkaidővel, e-mail címmel, praktikusan kolléga.
- Contactgroup: egy ügyben érdekelt contactok csoportja. Értesítéseket ilyen csoportoknak küldünk.
- Host és service group: statisztikai kategóriák
- Parancsok: ellenőrző, üzenő, eseménykezelő, hátmasszírozó, stb. Sokféle van.
- Függőségek: ha nem megy a levelezés, ne küldjünk e-mailt.
6 Ellenőrzés
- Többféle időzítés: okos, buta
- Az okos elosztja egyenletesen a feladatokat, egyenletes terhelést okoz
- A buta könnyen átlátható, de nagy csúcsterheléseket okoz, ami nem jó
- Az ellenőrzések (elvben) nem tartják föl egymást, úgyhogy ha valami miatt lassú, akkor sok processz összegyűlhet.
Időzítésre példa:
bambi FTP 14:14:09 14:16:09 tomka.hu PING 14:14:10 14:16:10 bambi IMAP 14:14:18 14:16:18 bambi POP 14:14:37 14:16:37 sql.pba.hu HTTP 14:14:43 14:16:43 betatrans PING 14:15:13 14:17:13 bambi HTTP 14:15:41 14:17:41 m.pba.hu HTTP 14:15:42 14:17:42 m.pba.hu PING 14:15:46 14:17:46 bambi PING 14:15:47 14:17:47 bambigw PING 14:15:48 14:17:48 sql.pba.hu PING 14:15:53 14:17:53
7 A riasztás folyamata
- ÁBRA ***
De:
- Többféle állapot van
- Az ellenőrzés bonyolultabb
- Puha és kemény állapotok
- De nem akarom telerajzolni a falat
8 Állapotok
- OK/UP – örülünk
- WARNING – valamilyen határt átlépett
- UNKNOWN – például nem elérhető
- DOWN/CRITICAL – nem örülünk
- SOFT – még zajlik az ellenőrzés
- HARD – ezek már az élet szikár tényei
9 Konfigurálás menete
- Contactok, időtáblák, csoportok
- Host template-k
- Hostok
- Service templatek
- Service-ek
- Csinosítás
- Tesztelés
9.1 Példacontact, úgy is, mint állampolgár
define contact{ contact_name tudor alias Tomka Gergely service_notification_period 24x7 host_notification_period 24x7 service_notification_options w,u,c,r host_notification_options d,u,r service_notification_commands notify-by-email host_notification_commands host-notify-by-email email az-én@email.címem pager +36telefonszám }
9.2 Időtáblák
define timeperiod{ timeperiod_name workhours alias "Normal" Working Hours monday 09:00-17:00 tuesday 09:00-17:00 wednesday 09:00-17:00 thursday 09:00-17:00 friday 09:00-17:00 }
10 Template
- Objektum template pont olyan, mint egy objektum, csak register 0.
- Két megközelítés:
- egy definíció, sok objektum, kézzel kényelmes, nehezen átlátható
- template+sok definíció, egyszerűen gépesíthető, én ezt használom
- Külön fájlok, ne rongáljuk a hasznos példákat
10.1 Host template
define host{ name altalanos notifications_enabled 1 event_handler_enabled 0 flap_detection_enabled 0 process_perf_data 1 retain_status_information 0 retain_nonstatus_information 1 check_command checkhostalive max_check_attempts 20 notification_interval 0 notification_period 24x7 notification_options d,u,r register 0 }
Használata:
define host{ host_name gép.hu alias gép.hu address 1.2.3.4 use altalanos register 1 } define host{ host_name másikgép alias valami.domain.hu address 2.3.4.5 use altalanos parents bambigw register 1 }
10.2 Service template
define service{ name altalanos service_description PING check_command check_ping!100.0,20%!500.0,60% contact_groups sajat check_period 24x7 active_checks_enabled 1 passive_checks_enabled 0 parallelize_check 1 obsess_over_service 1 check_freshness 0 notifications_enabled 1 event_handler_enabled 0 flap_detection_enabled 1 process_perf_data 1 retain_status_information 1 retain_nonstatus_information 1 is_volatile 0 max_check_attempts 3 normal_check_interval 2 retry_check_interval 1 notification_interval 0 notification_period 24x7 notification_options c,r,w register 0 }
Használata:
define service{ host_name gép.hu use altalanos register 1 }; define service{ host_name másikgép use altalanos register 1 }; define service{ host_name másikgép use altalanos register 1 service_description HTTP check_command check_http };
10.3 Service template
define service{ name altalanos service_description PING check_command check_ping!100.0,20%!500.0,60% contact_groups sajat check_period 24x7 active_checks_enabled 1 passive_checks_enabled 0 parallelize_check 1 obsess_over_service 1 check_freshness 0 notifications_enabled 1 event_handler_enabled 0 flap_detection_enabled 1 process_perf_data 1 retain_status_information 1 retain_nonstatus_information 1 is_volatile 0 max_check_attempts 3 normal_check_interval 2 retry_check_interval 1 notification_interval 0 notification_period 24x7 notification_options c,r,w register 0 } Használata: <pre> define service{ host_name gép.hu use altalanos register 1 }; define service{ host_name másikgép use altalanos register 1 }; define service{ host_name másikgép use altalanos register 1 service_description HTTP check_command check_http };
11 Csinosítás
- Ikonok, pozíciók megválasztása
- Üzenetek fordítása, csinosítása
- Háttérképek
- Függőségek
- Eszkalációs szintek
- Különleges értesítések
12 Egyéb nagyszerűségek
- Flap detection: eső-kelő szolgáltatás esetére
- Események kezelése: külső parancsok végrehajtása, ha valami megdöglik, például újraindíthatja (megpróbálhatja) – AI veszély
- Host adatainak (diszktelítettség, cpu, memória) lekérdezése, beépített ügynökkel – a munin jobb erre a célra
13 Ki őrzi az őrzőt?
- Nincsen hivatalos megoldás HA/failover igényekre
- Lehet eventekkel és hasonlókkal bűvészkedni
- El kell fogadni, hogy a megbízhatósággal együtt járhat a kettőslátás
14 Webes felület
- Roppant csinos, professzionális külsejű és látványos
- Nem igazán többfelhasználós, de azért funkciók szerint szét lehet választani usereket:
- néz
- teszvesz
- leállít
- ÁBRA ***
15 Teljesítményigény
- Sávszélesség nagyban függ a pontos helyzettől, pl. check_http
- CPU-igény csekély, több tucat host és százas nagyságrendő szolgáltatás esetén sem elsöprő
- Dokumentáció szerint azért ezer gép figyelése már izzasztó
16 Verejtékigény
- A beállítás szöszölős
- A munkában nagy segítség
- A főnökséget elbűvöli
- It Picks Up Chicks
17 További információ
- www.nagios.org - kicsit rendezetlen és kócos, de türelemmel kezelhető
- magyar HOWTO - alapokról egy egyszerű install felépítése
- Barátok, rokonok, üzletfelek, levelezőlisták és csevegőcsatornák