Checkmk
Utvecklare | tribe29 GmbH (tidigare Mathias Kettner GmbH) |
---|---|
Initial release | 2008 |
Stabil frisättning | |
Förvar | |
Skrivet i | Python , C++ |
Operativ system | Linux |
Typ | Övervakning av IT-infrastruktur |
Licens | GNU GPL v2 och andra Open Source- licenser, Checkmk Enterprise License |
Hemsida |
Checkmk är mjukvara utvecklad i Python och C++ för övervakning av IT-infrastruktur . Den används för övervakning av servrar , applikationer , nätverk, molninfrastrukturer ( offentliga , privata , hybrider ), behållare , lagring , databaser och miljösensorer .
Checkmk finns tillgänglig i tre upplagor: en öppen källkodsutgåva ("Checkmk Raw Edition – CRE"), en kommersiell företagsutgåva ("Checkmk Enterprise Edition – CEE") och en kommersiell utgåva för leverantörer av hanterade tjänster ("Checkmk Managed Services Edition – CME) "). Dessa Checkmk-utgåvor är tillgängliga för en rad plattformar, särskilt för olika versioner av Debian , Ubuntu , SLES och Red Hat / CentOS , och även som en Docker Image. Dessutom erbjuds fysiska apparater av olika storlekar samt en virtuell apparat för att förenkla administrationen av det underliggande operativsystemet genom ett grafiskt användargränssnitt och för att möjliggöra lösningar med hög tillgänglighet.
Agenterna som används av Checkmk för att samla in data är tillgängliga för 11 plattformar, inklusive Windows .
Historia
Checkmk har sitt ursprung 2008 som ett agentersättande skalskript för Inetd och publicerades i april 2009 under GPL . Det baserades från början på Nagios och utökade detta med ett antal nya komponenter. Open source-utgåvan (Checkmk Raw Edition) fortsätter också att vara baserad på Nagios-kärnan och kombinerar detta med ytterligare open source-komponenter till ett komplett system.
Under många år har Checkmks kommersiella utgåvor utvecklats till ett fristående övervakningssystem – ett som har ersatt alla viktiga Nagios-komponenter med sina egna – inklusive sin egen övervakningskärna. Majoriteten av utvecklingen för de kommersiella utgåvorna, i synnerhet alla plugin-program , är också tillgängliga i Checkmk Raw Edition.
Medan Checkmk tidigare designades för att övervaka stora och heterogena miljöer på plats , stöder den från version 1.5+ (1.5p12) även övervakning av AWS , Azure , Docker och Kubernetes -tjänster.
Checkmk utvecklas av tribe29 GmbH i München Tyskland , som fram till 16.04.2019 verkade under namnet Mathias Kettner GmbH. Tillsammans med företagsnamnsbytet ändrades även produktnamnet "Check_MK" till "Checkmk".
tribe29 GmbH följer en öppen kärnverksamhetsmodell . Open source-utgåvan är tillgänglig under olika open source-licenser – mestadels GPLv2, medan stora delar av de kommersiella utgåvorna körs under den proprietära "Checkmk Enterprise License".
Produkten
Checkmk kombinerar tre typer av IT-övervakning:
- Statusbaserad övervakning, som (via trösklar) registrerar "hälsan" för en enhet eller applikation.
- Metrisk baserad övervakning som möjliggör inspelning och analys av tidsseriegrafer med hjälp av ett HTML5 -baserat grafsystem . En integration med Grafana är också tillgänglig.
- Loggbaserad och händelsebaserad övervakning, där nyckelhändelser kan filtreras bort och åtgärder kan utlösas baserat på dessa händelser.
För att säkerställa en mycket bred övervakning har Checkmk för närvarande 1700+ plug-ins i varje utgåva – som alla är licensierade under GPLv2. Dessa plug-ins underhålls som en del av produkten och kompletteras regelbundet med ytterligare plug-ins eller tillägg. Det är också möjligt att ansluta befintliga äldre Nagios-plugin-program.
För att förenkla installation och drift levereras alla komponenter i Checkmk helt integrerade. En regelbaserad 1:n- konfiguration samt en hög grad av automatisering påskyndar arbetsflöden avsevärt . Detta inkluderar:
- Automatisk upptäckt av värdar (där tillämpligt)
- Automatisk upptäckt av tjänster
- Automatiserad konfiguration av plugin-program via förkonfigurerade trösklar och regler
- Automatiserade agentuppdateringar (en CEE-funktion)
- Automatisk och dynamisk konfiguration som möjliggör övervakning av flyktiga tjänster med en livslängd på bara några sekunder, till exempel i Kubernetes-miljön (med start från CEE v1.6)
- Automatisk upptäckt av taggar och etiketter från källor som Kubernetes, AWS och Azure (från CEE v1.6)
Dessutom finns det även spelböcker för användning av konfigurations- och distributionsverktyg som Ansible eller Salt .
Checkmk används ofta i mycket stora distribuerade miljöer där ett stort antal platser (t.ex. 300 platser i Faurecia ) och/eller långt över 100 000 enheter (t.ex. Edeka ) övervakas. Detta är möjligt bland annat eftersom Checkmks mikrokärna förbrukar mycket mindre CPU- resurser än till exempel Nagios och därför erbjuder en betydligt högre prestanda på samma hårdvara [ originalforskning ? ] . Dessutom lagras den icke-beständiga datan i minnet i RAM , vilket avsevärt förbättrar åtkomsttiden.
Komponenter
Övervakningskärna
Checkmk RE använder Nagios övervakningskärna. Det erbjuder inte behållarövervakning och kräver en omstart för att tillämpa konfigurationsändringar.
Checkmk kommersiella utgåvan använder egenutvecklad "Checkmk Microcore" (CMC) övervakningskärna, skriven i C++. Den har bättre prestanda än Checkmk RE core [ original forskning? ] . Den stöder inspelning av föremål med kort livslängd, såsom behållare. Det krävs ingen omstart för att tillämpa konfigurationsändringar.
Konfiguration & Check Engine
Checkmk erbjuder självständig tjänstupptäckt och generering av inställningar. Checkmk använder sin egen metod när de utför kontrollerna . Under testperioden kontaktas varje värd endast en gång. Testresultaten överförs till övervakningskärnan som passiva kontroller . Detta förbättrar prestandan avsevärt på övervakningsservern , såväl som på värdarna som övervakas.
Checkmk använder olika metoder för att komma åt data i målsystemen. Dessa inkluderar agenter installerade på målsystemet, "specialagenter" som körs på övervakningsservern och kommunicerar med målsystemets API , SNMP API för övervakning av till exempel nätverksenheter och skrivare och HTTP / TCP -protokoll att kommunicera med webb- och internettjänster. Checkmk följer som standard "pull-principen", det vill säga att data efterfrågas explicit av övervakningssystemet för att snabbt identifiera när ett system plötsligt misslyckas och inte svarar på ett "pull". Som ett alternativ kan dock en "push" konfigureras med vilken systemet överför sina data direkt till Checkmk eller till en mellanvärd.
Datagränssnitt ("Livestatus")
Livestatus är huvudgränssnittet i Checkmk. Det ger liveåtkomst till all data från de övervakade värdarna och tjänsterna. Datan hämtas direkt från RAM-minnet, vilket undviker långsam hårddiskåtkomst och ger snabb åtkomst till informationen utan att överbelasta systemet för mycket. Åtkomsten sker via ett enkelt protokoll och det är möjligt från alla programmeringsspråk utan att behöva ett speciellt bibliotek.
Web-GUI ("Multisite")
Multisite är Checkmks webbgränssnitt. Förutom att ha en snabb sidlayout erbjuder den användardefinierbara vyer och instrumentpaneler, distribuerad övervakning genom att integrera flera övervakningsinstanser via Livestatus, integration av NagVis [ förtydligande behövs ] , en integrerad LDAP- anslutning, tillgång till statusdata via webbtjänster och mycket mer. Dashboards och vyer kan differentieras för olika användare eller grupper av användare, till exempel vSphere -specifika vyer för VMware-administratörer. Webb-gränssnittet är tillgängligt på engelska och tyska.
Uppstart
Checkmk är helt administrerbar via webbläsaren via dess Setup-modul. Detta inkluderar hantering av användare, roller, grupper, tidsperioder och mer. Behörigheter kan beviljas på ett detaljerat sätt med hjälp av ett rollkoncept. Befintliga rollbaserade åtkomstkontroller (LDAP, AD) kan användas för detta. Checkmk fungerar regelbaserat, så att konfigurationen förblir intuitiv även i komplexa miljöer, och den nödvändiga ansträngningen är låg. Automatisk upptäckt och konfiguration samt den automatiska agentuppdateringen påskyndar konfigurationsprocessen ytterligare. Ett HTTP-API kan också användas för att integrera CMDB:er för accelererad konfiguration.
Varningssystem
Flera aviseringskanaler kan ställas in och konfigureras med olika regler för varje användare. Till exempel kan e-postmeddelanden utlösas när som helst på dygnet, men aviseringar via SMS skickas endast för viktiga ärenden under jourtid. Aviseringarna kan ställas in för alla eller för specifika team, t.ex. meddela endast lagringsadministratörerna om en trasig hårddisk. Dubblettaviseringar grupperas så att ingen användare aviseras två gånger via en viss kanal. Dessutom kan användare konfigurera sina egna aviseringar själva. I distribuerade miljöer kan varningar hanteras centralt. För upptäckta problem kan åtgärder utlösas automatiskt (larmkontroll) via skript. Checkmk inkluderar integrationer till e-post- och SMS-gateways samt till kommunikations- och IT-tjänstehanteringslösningar som Slack , Jira , PagerDuty , OpsGenie , VictorOps och ServiceNow .
Business Intelligence
BI-modulen är integrerad i det grafiska användargränssnittet. Den aggregerar den övergripande statusen för affärsprocesser, deras beroende av komplexa applikationer och IT-infrastrukturelement från många individuella värdar och tjänster på ett regelbaserat sätt. Den kan också användas för att representera applikationer som består av mikrotjänster, som i sin tur består av Kubernetes-poddar och distributioner. Dessutom kan värsta scenarier simuleras i realtid och historiska data kan analyseras för att förstå orsakerna till prestandaförsämring.
Händelsekonsol
Event Console integrerar behandlingen av loggmeddelanden och SNMP-fällor i övervakningen. Den konfigureras via en flexibel uppsättning regler, och bestämmer om inkommande meddelanden ska kasseras eller hur de ska klassificeras. Det kan räkna, korrelera, förvänta meddelanden, skriva om meddelanden och mer. Liknande poster kan grupperas i en enda händelse (t.ex. flera misslyckade inloggningar) för att hålla reda på händelser. Den har också en inbyggd syslog- demon som tar emot meddelanden direkt på port 514, och en SNMP trap-mottagare som tar emot traps på port 162.
Grafisk statistik
De kommersiella Checkmk-utgåvorna använder sitt eget metriska och grafiska system. Tidsseriemått kan analyseras över långa intervall med hjälp av interaktiva HTML5-grafer. Den maximala upplösningen är en sekund. Data kan importeras från en mängd olika datakällor och måttformat ( JSON , XML , SNMP etc.) och lagras på disken hos en långtidsdatalagringsenhet.
Alternativt kan Graphite eller InfluxDB anslutas via ett exportgränssnitt. Från CEE version 1.5p16 finns även en plug-in tillgänglig för att integrera data direkt från Checkmk i Grafana för visualiseringsändamål. Checkmk Raw Edition använder för närvarande PNP4Nagios som sitt grafsystem.
Rapportering
Rapportering möjliggör direkt leverans av PDF- rapporter, ad-hoc eller automatiskt, med jämna mellanrum. Den inkluderar tillgänglighetsanalysen där historiken för staterna över en önskad tidsperiod kan tillhandahållas med ett klick. Tillgänglighetsberäkningar kan utesluta oövervakade tider, justera upplösningen eller ignorera korta intervall. Utöver tillgänglighetsberäkningarna inkluderar rapporteringen även SLA- rapportering där komplexa SLA:er kan övervakas. Rapporteringen är endast tillgänglig i de kommersiella versionerna av Checkmk.
Inventering av hårdvara/mjukvara
Hård-/mjukvaruinventeringen kan till exempel användas för att övervaka hårdvaru- och mjukvaruförändringar, för att verifiera förekomsten av installerade säkerhetsuppdateringar och för att uppdatera statisk data med dynamiska parametrar (till exempel uppdatering av aktuell diskanvändningsstatistik baserat på övervakningsdata ). Configuration Management Database (CMDB) i-doit har en djup integration som möjliggör utbyte av CMDB-data med övervakningsdata.
Se även
- ^ https://checkmk.com/download/archive ; hämtad: 21 februari 2023.
- ^ "Checkmk EULA" (PDF) . tribe29 GmbH. Arkiverad från originalet (PDF) 2019-08-21 . Hämtad 2019-05-31 .
- ^ "Användningsfall" . tribe29 GmbH . Hämtad 2019-06-15 .
- ^ "Checkmk Editions" . tribe29 GmbH . Hämtad 2015-11-27 .
- ^ "Öppen källkod IT-övervakning med Checkmk" . tribe29 GmbH . Hämtad 2019-07-01 .
- ^ "Ladda ned version" . tribe29 GmbH . Hämtad 2019-07-10 .
- ^ "Övervaka agenter" . tribe29 GmbH . Hämtad 2019-06-12 .
- ^ "Mathias Kettner (check_mk)" . Möt gemenskapen . Nagios Enterprises. 2009-08-17. Arkiverad från originalet 2012-01-06 . Hämtad 2015-11-27 .
- ^ Rieger, Götz (2012-11-03). "Einfach mal Nagios – Netzwerk-Monitoring mit OMD und Check_MK" (på tyska). c't . sid. 190 . Hämtad 2015-11-27 .
- ^ Huber, Mathias (2011-03-09). "Nagios-Erweiterung Check_mk i version 1.1.10" (på tyska). Linux Magazine . Hämtad 2015-11-27 .
- ^ Siering, Peter (2017-05-31). "Monitoring-System Check_MK i frischer version 1.4.0" (på tyska). Heise Online . Hämtad 2017-05-31 .
- ^ Kettner, Mathias. "Checkmk-mikrokärnan (CMC)" . Hämtad 2018-12-05 .
- ^ "Checkmk community tillkännagivande 1.5 Plus(1.5.p12)" . tribe29 GmbH. 2019-02-17 . Hämtad 2019-07-11 .
- ^ "tribe29 - Vår berättelse" . tribe29 GmbH . Hämtad 2019-06-14 .
- ^ Mueller, Christian (2019-04-17). "Grafana Data Source Plugin" . GitHub . Hämtad 2019-07-09 .
- ^ "Automatisk tjänsteupptäckt" . tribe29 GmbH . Hämtad 2017-02-17 .
- ^ "Övervakning av mycket dynamiska miljöer" . tribe29 GmbH . Hämtad 2019-05-07 .
- ^ "Ansible integration med Checkmk" . GitHub . 2019-05-01 . Hämtad 2019-05-08 .
- ^ "Saltintegration med Checkmk" . GitHub . 2019-05-02 . Hämtad 2019-05-09 .
- ^ "Global utplacering av Check_MK på Faurecia" . 2018-10-23 . Hämtad 2018-10-23 .
- ^ "EDEKA Vortrag" (på tyska). 2017-05-12 . Hämtad 2017-05-12 .
- ^ Heike Jurzik, Marcel Arentz (2019-07-01). "vSphere-Monitoring mit Checkmk" (på tyska). Linux-Magazin . Hämtad 2019-07-02 .
externa länkar
- Officiell hemsida
- Datorövervakning med Open Monitoring Distribution (Kelvin Vanderlip, 2012-03-01)
- Använda den öppna övervakningsdistributionen (Nagios) för att övervaka komplexa hårdvaru-/mjukvarusystem ( Joe VanAndel, 2012-03-29)