Jag är en extrem nagiosfanboy, i princip alla system och verktyg som är baserade på nagios gör mig glad. Ett av de allra nyaste och i mitt tyckte, bland de bästa i Communitykategorin är Icinga.
Projektet är en fork av Nagios och många av utvecklarna har tidigare utvecklat delar för nagios men nu har man valt att bryta sig loss, som jag förstår det, mycket på grund av nagiosprojektets motsträvighet med att ta in communitypatchar.
En av de allra största förändringarna är det helt ombyggda WebbUIt och ett rejält förbättrat API. Men har även släppt en modul för att kunna komma åt sin övervakning via mobilen.
Tack vare att Icinga är baserat och helt kompatibelt med Nagios så finns det en uppsjö av plugins att välja på, allt från att hålla koll på förändringar i växelkursen till att övervaka sin ESX-farm.
Läs gärna mer på: www.icinga.org
Företaget Op5 har tagit fram en produktserie med logghantering, övervakning och statistik. Jag har testat Op5 monitor som i mångt om mycket påminner om “vanliga” nagios med dess CGI:er, dock så har Op5 gjort en mängd bra förbättringar i bakgrunden, de bidrar dessutom till communityn med sina projekt. Bland annat så finns merlin(en modul för att distribution och lastbalansering.) och Ninja (nagios is now just awesome) som är ett webbgränssntt för nagios.
Jag gav mig på att testa trialversionen av Op5 Monitor som finns att ladda ner från Op5s hemsida, som sig bör så ska Op5 Monitor installeras på RedHat 5 eller CentOS 5, inte mina privata favoriter men ett absolut måste i en enterprisemiljö, Op5 erbjuder också en egen hårdvaruappliance, jag skulle föredra att använda Redhar/CentOS istället för en appliance, främst då det kan finnas säkerhetsluckor som inte tätas tillräckligt fort i en appliance, vilket är ganska jobbigt om du vill säkerhetscertifiera din miljö. Men har man inte de kraven så är en appliance ett snabbt och enkelt sätt att komma igång.
Efter att ha installerat CentOS i en virtuellmaskin och laddat hem Op5 Monitor och packat upp paketet, så är det väldigt enkelt att komma igång, produkten kommer med ett installationsscript som tar hand om alla dependencies etc med hjälp av pakethanteraren yum, det känns som en stabil lösning. Efter att själva installationen är färdig så är det bara att logga in i webbgränssnittet och börja konfigurera upp hostar och services. Har man tidigare erfarenhet av Icinga / nagios så tror jag att man kommer tycka att det är mycket enklare att komma igång, för Op5 Monitor, påminner väldigt mycket om Nagios och dess webbgränssnitt. I mina ögon är det varken bra eller dåligt, Nagios är en bra produkt även om webbgränssnittet är sjukt fult, men det är ganska mycket snyggare i Op5 Monitor.
Jag skulle säga att Op5 Monitor är en bra produkt som passar alla, eftersom det är en kommersiellprodukt som bygger på öppen källkod så finns det gott om hjälp att finna på internet om man är dum och väljer att inte köpa supportavtal. Dessutom, om jag får lov att vara lite patriotisk, så är Op5 ett svenskt bolag och Op5 Monitor byggs i Göteborg, där även supporten sitter.
För alla oss som har webbtjänster som vi vill övervaka så finns även Op5 Cloud Monitor som man enkelt kan installera i City Cloud.
Jag har i min jakt på bra och opensourceade monitoringsystem nu sprungit över ett projekt som heter shinken (http://www.shinken-monitoring.org/), jag har inte hunnit testa det än, men det står på min agenda och kommer att fixas efter att jag gett mig på CityCloud, Op5 och Centreon.
Vad jag kan se så är Shinken byggt helt från grunden i python, men man har valt att göra konfigurationen på samma sätt som i nagios och icinga, vilket på många sätt är perfekt för då blir det enkelt att byta plattform. Inte för att byta övervakningsplattform är något man gör i en handvändning, men produkter som underlättar jobbet är alltid välkomna.
När man har byggt Shinken så har man fokuserat på att göra det skalbart och distribuerat, och det ser ut att vara enkelt att skala upp och ner vid behov. Precis hur enkelt det är får vi ser när jag bestämmer mig för att testa det. Tills dess finns det mer att läsa på http://www.shinken-monitoring.org/ och http://en.wikipedia.org/wiki/Shinken_%28software%29
Jag skrev i posten: http://www.abergman.se/op5-har-slappt-op5-monitor-5-2-0/ om Op5 Monitor, där påstår jag att Op5 monitor troligtvis är den enda kommersiella uppstickaren på marknaden, vilket är både rätt och fel. Det må vara den enda på den Svenska marknaden, men inte globalt, vi har bland annat Centreon som precis som Icinga och Op5 Monitor är Nagiosbaserad. Vad jag kan se så finns det ingen officiell centreonpartner i sverige, men förhoppningsvis kommer det att komma inom kort.
abergman.se planerar ett test av Centreon inom kort, men redan nu kan ni kontakta mig för demo eller hjälp med en installation.
Op5 är kanske den enda kommersiella uppstickaren på marknaden som bygger sin lösning kring Nagios, vilket är samma bas som Icinga bygger på.
Nu har Op5 släppt version 5.2.0 av Op5 Monitor, och ska man tro pressreleasen så är den helt fantastisk, men det är ju klart, den bygger ju på nagios! Man har bland annat utökat stödet för distribuerad övervakning och klustring.
Läs hela releasen här: http://blogs.op5.com/blog/2010/11/op5-monitor-5-2-0-released/
Idag släppte Op5 sin plugin för att övervaka Vmware ESX-servrar via Nagios, pluginen hittar du här: http://www.op5.org/community/projects/check-esx-plugin
Jag har ingen möjlighet att testa det själv, men communityn som har hunnit testa den verkar gilla det och jag är övertygad om att vi kommer få se prov på pluginen in action inom en snar framtid.
Eftersom den stödjs av Nagios så fungerar den garanterat med Icinga, och det är absolut inte dåligt! Den enda haken som jag ser det är att man behöver Vmware SDKt skrivet i perl för att använda pluginen.. Det känns sådär hett!
Det finns en uppsjö applikationer som låter dig ansluta och hantera din icingainstallation, men jag fastnade för en app som heter TouchMon(http://www.s-team.at/en/touchmon). Den är hyfsat dyr, då den kostar 99kr att köpa för fullversion, den låter dig ansluta till flera installationer samtidigt och den är reklamfri, men för den som vill testa så finns det en gratisversion som har reklam och är begränsad till att ansluta till en installation.
Vi har en webbserver med ett antal vhostar som vi vill övervaka, dock så kommer standardkonfigurationen till Icinga med en servicecheck som kontrollerar HTTP med hjälp av IP:t, så för att få den att kontrollera det jag vill så skriver jag om service checken till:
check_http -H $HOSTADRESS$
Det gör att check_http tar emot www.test.se istället för bara en ip, nu vill jag också kolla så att jag får den HTTP-status jag förväntar mig, detta då check_http tycker att både 200 och 301 är OK, men efter som min site inte ska redirecta(301) så vill jag att den bara ska tycka att 200 är ok, det åstadkommer jag med:
check_http -H $HOSTADDRESS$ -e 200
Där -e betyder “expect”, alltså förväntar sig checken HTTP-status 200. För att hålla koll på mina redirects så använder jag samma kontroll fast med 301 istället för 200.
För att underlätta för mig själv har jag definierat upp ett nytt kommando som heter just HTTP-redir och som bara accepterar 301 som http-status, sedan styr jag med hostgroups vilken sida som kontrolleras på vilket sätt.
Såhär ser det ut på en maskin som både har en HTTP-adress och en HTTP-redir:
Jag vill veta hur mina cronjobb går, om de går igenom eller om de failar någonstans längs vägen. För att samla ihop det med Icinga så väljer jag att skriva om mina cronjobb script så att de beroende på exit-code kör ett annat script som lägger in informationen i Icinga.
Den första delen i det är att skapa en service som du kan använda för att ta emot passive service checks, det kan vara en helt vanlig service, men den skillanden att du lägger till “active_checks_enabled 0″ i definitionen. Så den ser ut såhär:
define service{
use local-service
service_description Cron Jobs
host_name localhost-test
check_command check_mailq!10!20
active_checks_enabled 0
}
Notera att det finns ett check command i defintionen, men det kommer inte att köras pga “active_checks_enabled 0″, det måste bara vara där för sakens skull. Glöm inte att knyta check:en till en host också!
I nagios egen dokumentation finns ett litet bash-script för att skicka commandon till .cmd-filen, du hittar det här: http://nagios.sourceforge.net/docs/3_0/volatileservices.html
För att exekvera scriptet sedan så kör du bara:
# ./submit_passive_check.sh localhost-test 'Cron Jobs' 0 'Cron has run!'
Där du byter ut “localhost-test” till ditt eget hostnamn, siffran i mitten är exitcode och severitycode i Icinga, 0= OK 1= Warning 2= Critical och 3 är Unknown. Lek med det lite själv och se hur det går! Lycka till!
Jag stötte på ett problem med att postfix av någon anledning hade hängt sig på en av våra hostingservrar, det resulterade i att en massa mail inte gick iväg(typ 500st låg i kön), detta drabbade alla siter som ligger hostade på den maskinen, så det är viktigt att det inte händer igen. Som tur var så räckte det med att starta om postfix för att få mailen att flöda igen.
Vi övervakar våra siter och maskiner med icinga som är en fork av nagios, det gör att man lika gärna kan använda nagiosplugins till icinga.
Pluginpaketet “Nagiosplugins” (http://nagiosplugins.org/) innehåller ett script för check av mailq som standard, vilket jag såklart använde!
Jag skapade ett nytt ‘command’ i min commands.cfg:
define command{
command_name check_mailq
command_line $USER1$/check_mailq -w $ARG1$ -c $ARG2$
}
Där -w är gränsen för Warning och -c är gränsen för critical $ARG1$ och $ARG2$ är placeholders för argument som specificeras när kommandot anropas. För att kunna använda mitt kommando så la jag in det direkt på hosten, eftersom det bara är den maskinen jag vill köra den kontrollen på.
define service{
host_name localhost
service_description Check Mailq
check_command check_mailq!10!20
}
Som ni ser så anger jag 10 mail i kö som warning gränsen och 20 mail i kö som critical, om det är så att det blir för många falsklarm så får jag justera det senare. Så här ser det sedan ut i Icinga WebUI:

Senaste kommentarerna