LinuxTechnicalReview02 Monitoring

download LinuxTechnicalReview02 Monitoring

of 125

Transcript of LinuxTechnicalReview02 Monitoring

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    1/125www.linuxtechnicalreview.de1

    Welches Tool eignet sich fr welchen Zweck be-

    sonders gut? Was ist die Schokoladenseite, was

    der Pferdefu? Die Redaktion hat die wichtigstenFeatures der bekanntesten berwachungstools fr

    kleine und mittlere Umgebungen auf den folgenden

    Seiten gegenbergestellt.

    Feature-

    Vergleich

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    2/125

    bersichten

    www.linuxtechnicalreview.de 2

    Opensmart Nagios Big Sister Big BrotherVersion 1.0 2.7 1.0.2 v. 3.2

    Homepage opensmart.sourceforge.net www.nagios.org www.bigsister.ch/bigsister.htm www,bb4.com

    untersttzte Plattformen Linux, HP/UX, Solaris, *BSD, All POSIX (Unix, Linux, betriebssystemunabhnig viele Unixe - Windows XP/

    (Server) AIX, Windows BSD) 2000/2003/Vista

    Entwickler 4 2 + 11 fr Plugins 14 2

    Preis - - - $ 100 pro monitored

    Node

    Architektur

    Frontend Browser-GUI Browser-GUI Browser-GUI Browser-GUI

    zentrale Agent-Konfiguration mglich nein nein nein (geplant)

    zentrale Agent-Updates mglich nein nein nein (geplant)

    Statuschecks

    Fllungsgrad Filesysteme ja (disk) ja (check_disk, ja (diskfree) ja

    check_disk_smb)Lnge Mailqueue ja Sendmail (mailq) ja (check_) ja Qmail (qmqueue) optional

    Memory Usage nein nein ja (memory) nativ unter Windows, op-

    tional unter Unix

    Swap benutzt ja (swap) ja ja (load) nativ unter Windows, op-tional unter Unix

    Performancedaten

    Auslastung Platten-IO nein nein ja (diskload) ja

    CPU Idle Time nein ja ja (load) ja

    Load Average ja (load) ja ja (cpuload) ja

    Funktionschecks

    Erreichbarkeit (Ping) ja (ping) ja (check_ping) ja (ping) ja

    Port offen ja (sockets) ja (check_sockets) ja (tcp) ja

    Prozess luft ja (proc) ja (check_procs) ja (procs) ja

    Returncode beliebiger Befehlja (simple) - ja (command) ja

    Webapp-Check (URL-Abruf) ja (webapp) ja (check_httpd) ja (http, realhttp) nativ unter Windows, op-

    tional unter Unix

    Standard-Services

    DHCP nein ja ja optional

    DNS ja (dns) ja ja ja

    FTP ja (ftp) ja (check_dns) ja ja

    NTP ja (ntp, ntp-remote) ja (check_ntp) ja (ntp) ja

    POP3 nein ja ja (tcp) ja

    RPC nein nein ja (rpc) optional

    SMTP ja (smtp) ja (check_smtp) ja (tcp) ja

    SSH nein ja ja (tcp) ja

    SNMP

    SNMP-Support nein ja (check_snmp) ja neinSNMP-Traps nein ja ja ja

    Log-Checks

    Regulrer Ausdruck ja (logs) ja (check_log2) ja (syslog) nativ unter Unix, optional

    unter Windows

    Windows Event Log ja (eventlog) - ja (eventlog) ja

    Konfigurationsoptionen

    eigene User-/Rechte- nein ja nein N/Averwaltung

    Gruppieren von Hosts nein ja ja ja

    Gruppieren von Services nein ja ja ja

    Abhngigkeiten zw. - ja ja optionalServices

    Wartungsfenster ja ja ja ja

    Tabelle 1: Featurevergleich

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    3/125

    bersichten

    www.linuxtechnicalreview.de3

    Zenoss Zabbix Open NMSVersion v. 1.1 v. 1.1.5 v. 1.2.9

    Homepage sourceforge.net/projects/ sourceforge.net/ www.opennms.org

    zenoss projects/zabbix

    untersttzte Plattformen (Server) All BSD Platforms, All POSIX - AIX, FreeBSD, OpenBSD, Linux, Solaris, OS XLinux, Mac OS X, Solaris HP-UX, Linux, MacOS, Solaris,

    SCO Open Server, Tru64/OSF

    Entwickler 10 4 32

    Preis - - -

    Architektur

    Frontend Browser-GUI (Python, AJAX) Browser-GUI eigenes, (event management daemon)

    zentrale Agent-Konfiguration - nein nein, fr Version 1.3.2 geplant

    zentrale Agent-Updates - nein nein, fr Version 1.3.2 geplant

    Statuschecks

    Fllungsgrad Filesysteme ja ja optional (ber SNMP-Agent)

    Lnge Mailqueue N/A ja optional (ber SNMP-Agent)

    Memory Usage ja ja optional (ber SNMP-Agent)

    Swap benutzt ja ja optional (ber SNMP-Agent)

    Performancedaten

    Auslastung Platten-IO ja ja optional (ber SNMP-Agent)

    CPU Idle Time ja ja optional (ber SNMP-Agent)

    Load Average ja ja optional (ber SNMP-Agent)

    Funktionschecks

    Erreichbarkeit (Ping) ja ja ja

    Port offen ja ja (nur TCP) jaProzess luft ja ja optional (ber SNMP-Agent)

    Returncode beliebiger Befehl ja optional (Nach- ja

    arbeit erforderlich)

    Webapp-Check (URL-Abruf) ja ja ja

    Standard-Services

    DHCP N/A nein ja

    DNS ja ja ja

    FTP ja ja ja

    NTP ja ja ja

    POP3 ja ja ja

    RPC N/A nein nein

    SMTP ja ja ja

    SSH ja ja jaSNMP

    SNMP-Support ja ja ja

    SNMP-Traps ja ja ja

    Log-Checks

    Regulrer Ausdruck ja ja ja

    Windows Event Log ja ja nein

    Konfigurationsoptionen

    eigene User-/Rechteverwaltung N/A ja ja

    Gruppieren von Hosts ja ja ja

    Gruppieren von Services ja ja ja

    Abhngigkeiten zw. Services N/A ja ja

    Wartungsfenster konfigurierbar N/A N/A ja

    Netzwerk-Visualisierung N/A ja nein, fr Version 1.3.2 geplant

    Tabelle 1: Featurevergleich Fortsetzung

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    4/125

    bersichten

    www.linuxtechnicalreview.de 4

    Pandora FMS moodss Bartlby GPM SisIYA NINOv.1.2.0 v. 21.5 v. 1.2.7 4 (Beta) 0.4-23 v. 4.1.8

    sourceforge.net/ moodss.sourceforge.net www.bartlby.org gpm-system. sisiya.sourceforge. sourceforge.net/

    projects/pandora sourceforge.net net projects/nino

    All BSD Platforms, All All POSIX, OS X Linux Plattformunabhngig Unix/Linux betriebssystemunab-POSIX, Linux, Solaris, (Java-basiert, getestet hngig

    Win2K, WinXP, Win2003, unter Windows, Linux)HP-UX, IBM AIX

    7 1 1 3 1 1

    - - - - - -

    Browser-GUI (PHP) eigenes Browser-GUI (PHP) 1. Java-basier te Browser-GUI (PHP) Browser-GUI

    GUI, 2. Web-GUI

    N/A ja (via HTTP/s ja - nein

    und Cron) N/A ja (via HTTP/s ja - nein

    und Cron)

    ja ja ja ja ja ja

    ja nein ja (Exim4) nein N/A optional

    ja ja ja ja ja ja

    ja ja ja ja ja ja

    ja ja nein ja N/A ja

    ja ja nein ja ja ja

    ja ja ja ja ja ja

    ja ja ja nein ja ja

    ja nen ja nein ja neinja nein ja nein ja ja

    ja nein ja nein N/A ja

    ja nein ja nein N/A ja

    ja optional nein nein N/A nein

    ja optional ja nein N/A ja

    ja optional ja nein ja ja

    ja optional nein nein ja nein

    ja optional ja nein ja ja

    ja optional nein nein N/A nein

    ja optional ja nein ja ja

    ja optional ja nein ja ja

    ja ja ja nein N/A ja

    ja ja nein nein N/A ja

    nein ja nein nein ja optional (ber SNMP)

    ja nein nein nein N/A optional (ber WMI)

    ja optional ja nein N/A ja

    ja optional ja nein ja ja

    nein, geplant fr v. 1.3 optional nein nein N/A ja

    nein, geplant fr v. 1.3 optional nein nein nein nein

    nein N/A nein N/A N/A

    nein, geplant fr v. 2.0 ja nein nein N/A ja

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    5/125www.linuxtechnicalreview.de1

    Monitoringals Managementbaustein

    An welchen Zielen soll man sich bei der Konzeption

    einer Monitoring-Lsung orientieren? Die IT Infra-

    structure Library kann hier mit praxiserprobten Vor-

    gaben weiterhelfen. Wilhelm Dolle

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    6/125

    Studien

    www.linuxtechnicalreview.de 2

    Die bestndig wachsende Zahlvon Servern undDiensten in Unternehmen schraubt auch dieAnsprche an ein zentralisiertes Managementoder zumindest Monitoring in die Hhe. In gro-en, komplexen und heterogenen Rechnerland-schaen setzt man in den allermeisten Fllennoch Lsungen von kommerziellen Anbieternein. Fr solche Schwergewichte im Markt wiebeispielsweise HP Openview, BMC Patrol oderIBM Tivoli sprechen auch tatschlich eine ganzeReihe von Grnden, wie der olgende Artikeldiskutieren wird.Allerdings gelten diese Argumente nicht in je-dem Fall. Deshalb greien zumindest kleine undauch mittelstndische Anwender zunehmend

    zu quelloffenen Lsungen, in den meisten Fl-len sowohl aus Kostengrnden als auch ausder Erkenntnis heraus, dass man den komplet-ten Funktionsumang einer groen Lsung garnicht immer bentigt.Doch auch im Open-Source-Bereich ist dieAuswahl inzwischen gro, und es stellt sich dieFrage, nach welchen Kriterien man eine passendeSoware auswhlen kann. Der erste Schritt liegtvielleicht in der Antwort au die Frage, was manwarum beobachten will. Daraus ergeben sich diebentigten Funktionen. Fr eine entsprechende

    Analyse gibt es verschiedene Verahren, eines,das sich an der IT Inrastructure Library ITILorientiert, stellt dieser Beitrag vor.

    IT Infrastructure LibraryDie wachsende Abhngigkeit von Inormations-systemen hrte Ende der 80er Jahre zur Kon-zeption und Entwicklung der IT InrastructureLibrary (ITIL). Urheber war die Central Com-puter and Telecommunications Agency (CCTA),eine IT-Dienstleistungsorganisation der briti-schen Regierung. Ziel des Projektes war es, dieKosten von IT-Dienstleistungen zu verringern

    und gleichzeitig deren Qualitt zu steigern. BeimStart des Projekts gab es noch keine umassendeGrundlage, die den Weg zu wirtschalichen undzweckmigen IT-Dienstleistungen gewiesenhtte. Inzwischen sind die anerkannten Verah-rensweisen des IT-Servicemanagement in ITILdokumentiert.ITIL versucht dabei keine Standardisierung,sondern verolgt einen sogenannten Best-Practice-Ansatz. Der beinhaltet in der Praxiserolgreiche Modelle und Organisationsormen,die jedes Unternehmen adaptieren und au seine

    Bedrnisse zuschneiden kann. ITIL beschreibt

    auerdem nicht, wie etwas zu erledigen ist, son-dern nur, was zu tun ist. Zu ITIL gehrt die ISO-Norm 20000, die aus einem britischen Standard(BS 15000) entstand. ITIL ist bis heute die ein-zige umassende, nicht-proprietre und ffent-lich zugngliche Verahrensbibliothek in diesemBereich. Ihre Verasser hatten vor allem Anwen-der im Blick, die r die Planung, berwachungund Steuerung von IT-Services verantwortlichsind.Die erste Version der Library kam 1995 heraus,zwischen 1999 und 2003 erschienen die Publi-kationen der Version 2, und aktuell arbeitet manan der Version 3, deren Verffentlichung in die-sem Jahr ansteht. Zustzliche Inormationen

    und weiterhrende Links ber ITIL findet manunter anderem au den Webseiten des deutschenAblegers des Inormation Technology ServiceManagement Forum (itSMF, [1]).

    ITIL und MonitoringITIL gliedert die Prozesse des IT-Service-Ma-nagements grob in zwei Bereiche: Service-Deli-very und Service-Support. Service-Delivery be-schreibt die Prozesse zur Planung und Lieerungder IT-Services, die ein Unternehmen bentigt.Zustzlich wird definiert, wie die erorderlichen

    Voraussetzungen und Manahmen r die Er-bringung dieser Services aussehen.Service-Delivery ist wiederum in n themati-sche Blcke unterteilt: Service-Level-Manage-ment (qualitative und quantitative Steuerung derIT, Service-Level-Agreements, SLAs), Finance-Management r IT-Services (Verwaltung undSteuerung der IT-Kosten), Capacity-Manage-ment (Planung der IT-Ressourcen r qualita-tiv und quantitativ ausreichende Perormance),Availability-Management (gewhrleistet dievereinbarte Vergbarkeit von IT-Services) undContinuity-Management r IT-Services (Er-

    stellung, Pflege und Verifikation eines Notall-planes).Service-Support beschreibt sowohl die Pro-zesse zur Untersttzung und zum Betrieb derIT-Services als auch den Zugang der Anwenderund Kunden zum richtigen IT-Service. Wie Ser-vice-Delivery ist auch Service-Support in Blckeunterteilt: die Funktion Service-Desk (ersterAnsprechpartner r Anwender), Incident-Ma-nagement (Bearbeitung von IT-relevanten An-ragen und Strungen), Problem-Management(Ergrnden der Ursachen von Strungen in

    der IT-Inrastruktur), Configuration-Manage-

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    7/125

    Studien

    www.linuxtechnicalreview.de3

    insbesondere die Trendanalysen, um Engpssenund Ausllen durch rechtzeitiges Austockenvon Ressourcen vorzubeugen. (Daneben lassensich Perormance und Ressourcenverbrauchauch durch Simulation schtzen, wie ein weite-rer Beitrag dieser Ausgabe demonstriert.)Ein Beispiel ist die Darstellung von CPU-, Spei-cher- und Bandbreitenauslastung eines E-Mail-Anbieters im letzten halben Jahr. Aus dieserDarstellung kann man dann extrapolieren,wann man sinnvollerweise seine Kapazittenerweitern sollte. Typische Open-Source-Toolsr diese Art von Monitoring sind der Klassi-ker MRTG [3]oder Cacti [4], au das ein weite-rer Beitrag dieser Ausgabe aushrlich eingeht.

    Beide Werkzeuge gehren zu den verbreitetstengrafischen Monitoring-Tools und sind leicht andie Bedrnisse des Capacity-Managements an-zupassen.

    Service-Level-ManagementZielsetzung des Service-Level-Managements istdie Pflege und stndige Verbesserung der mitdem Kunden vereinbarten IT-Services. Zu die-sem Zweck trif das Service-Level-ManagementVereinbarungen hinsichtlich der zu erbringen-den Leistungen in SLAs, die es berwacht und

    dokumentiert. Typische Leistungszusagen be-treffen beispielsweise eine bestimmte Verg-barkeit oder eine definierte Antwortzeit einesServices.

    Availability-ManagementZielsetzung des Availability-Managements ist es,kostengnstig ein bestimmtes Vergbarkeitsni-veau r alle IT-Services zu gewhrleisten. DasAvailability-Management stellt eine wichtigeKomponente dar, um die vom Service-Level-Management ausgehandelten SLAs einzuhal-ten. In den SLAs knnen allerdings neben An-

    orderungen an die Vergbarkeit auch nahezubeliebige weitere Eigenschaen eines Servicesestgelegt sein, unter anderem beispielsweiseQualittskriterien.Fr die Vergbarkeit wird meist ein Schwell-wert estgelegt der nicht ber- beziehungsweiseunterschritten werden dar. Fr das Monitoringerstellt man zustzlich weitere darber bezie-hungsweise darunterliegende Warnschwellen,die darau hinweisen, dass eine Verletzung derzugesicherten Service-Level droht. Im diesemTeilbereich des Monitoring stellt vor allem Na-

    gios [5], mit dem sich zahlreiche Beitrge die-

    ment (Statusberwachung der IT-Inrastruk-tur; Sammeln, Verwalten und Bereitstellen vonDokumentationen ber die IT-Inrastruktur),Change-Management (Steuerung, Planung undkontrollierte Durchhrung von nderungen)und Release-Management (Rollout-Planung,Integration, Tests und Archivierung von Hard-und Soware-Installationen).Zustzlich gibt es innerhalb von ITIL noch dasIT-Security-Management. Dieses beschigtsich vor allem mit der Einhrung und Durch-setzung eines definierten Sicherheitsniveaus rdie IT-Umgebung. Dabei wird detailliert au dieprimren Sicherheitsziele Vertraulichkeit, In-tegritt und Vergbarkeit eingegangen. Durch

    eine Risikoanalyse ermittelt man dabei die kun-denspezifischen Anorderungen an die Sicher-heit. Der interne, minimale Sicherheitsanspruchwird dabei als IT-Grundschutz bezeichnet. AlsGrundlage r ein IT-Security-Managementlsst sich die Norm ISO 27001 beziehungsweisedas IT-Grundschutzhandbuch des Bundesamtesr Sicherheit in der Inormationstechnik (BSI)heranziehen [2]. Darber hinausgehende An-sprche sind individuell zu bearbeiten.Bezogen au ITIL, ist Monitoring insbesonderer die olgenden Disziplinen wichtig:n

    Capacity-Managementn Service-Level-Managementn Availability-Managementn Problem-Managementn IT-Security-ManagementDa die einzelnen Bereiche zum Teil unterschied-liche Ziele verolgen, ist die Wahl des geeignetenMonitoring-Werkzeugs beziehungsweise derpassenden Klasse von Werkzeugen sehr wichtig.

    Capacity-ManagementDas Capacity-Management hat die Augabe,stndig die korrekte Kapazitt an IT-Ressourcen

    zu vertretbaren Kosten und entsprechend denKundenbedrnissen zur Vergung zu stellen.Diese Bedrnisse sind blicherweise in SLAsestgehalten. Das Monitoring sollte also in die-sem Fall die Auslastung verschiedener Kom-ponenten der Inrastruktur widerspiegeln unddabei nicht nur eine Momentaunahme lieern,sondern eine Trendanalyse erlauben.Beispiele r die zu berwachenden Kompo-nenten sind die CPU-Kapazitt, Speicherplatzau Storage-Systemen, Netzwerkbandbreite oderauch die Zahl der vergbaren und verwende-

    ten Lizenzen. Das Capacity-Management nutzt

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    8/125

    Studien

    www.linuxtechnicalreview.de 4

    Der AutorWilhelm Dolle ist Senior

    Security Consultant

    bei der Hisolutions AG,

    einem Beratungshaus

    fr Information Security

    und Risk Consulting in

    Berlin, und seit vielen

    Jahren im IT-Sicherheits-

    umfeld ttig. Er ist CISA,

    CISSP, lizensierter ISO

    27001 / Grundschutzau-

    ditor und ITIL-Service-

    Manager.

    einbarten Zeitraums gewhrleisten. Nach denenglischen Begriffen nennt man diese Haupt-ziele auch CIA-Triade.Von diesen Primrzielen leiten sich blicher-weise noch sekundre Ziele wie Nichtabstreit-barkeit oder Anonymitt ab. Das IT-Security-Management soll einerseits die Schaffung einesgewissen Grundschutzniveaus erlauben, ande-rerseits soll es die Einhaltung der Sicherheits-anorderungen gewhrleisten. Auerdem sindweitere externe Anorderungen wie regulatori-sche oder gesetzliche Regelungen und Aspekteaus der Sicherheits-Policy der beteiligten Unter-nehmen zu bercksichtigen. Besonders r dasHauptziel der Vergbarkeit gilt r das Monito-

    ring das oben beschriebene. Allerdings solltenhier zustzlich spezielle Werkzeuge wie Nmap,Nessus oder Snort zum Einsatz kommen. DemSecurity-Monitoring und den dar vergba-ren Open-Source-Tools ist ein eigener Beitrag indieser Ausgabe gewidmet.

    FazitMchte man die Anorderungen an ein moder-nes IT-Service-Management nach ITIL erllen,so bentigt man dar nicht zwangslufig kom-merzielle Soware. Open-Source-Soware bie-

    ten in vielen Fllen eine analoge oder au jedenFall eine ausreichende Leistung, um Servicesauch innerhalb von komplexen IT-Inrastruktu-ren beobachten zu knnen.Ein bisher allerdings noch ungelstes Problemist die Integration der verschiedenen Kompo-nenten in ein komplettes System-Management-Framework. Diese Augabe hat sich inzwischenjedoch das Open Management Consortium(OMC, [6]) au die Fahnen geschrieben. Inter-essierte Anwender sollten die Ergebnisse dieservielversprechenden Initiative im Auge behalten.(jcb) nnn

    Infos

    [1] Deutsche Seiten des Information Technology

    Service Management Forum: [http://www.itsmf.

    de/bestpractice/index.asp]

    [2] Bundesamt fr Sicherheit in der Informati-

    onstechnik: [http://www.bsi.de/gshb/index.htm]

    [3] MRTG: [http://oss.oetiker.ch/mrtg]

    [4] Cacti: [http://www.cacti.net]

    [5] Nagios: [http://www.nagios.org]

    [6] Open Management Consortium: [http://www.

    openmanagement.org]

    ser Ausgabe beschigen, eine sehr ausgereieund verbreitete Lsung dar, die mit den meistenkommerziellen Anbietern mithalten kann undsich bereits in vielen Unternehmen im proessi-onellen Einsatz bewhrt.Nagios ist ein leistungshiges Werkzeug zurberwachung von komplexeren IT-Strukturen.Es lassen sich sowohl Dienste als auch Inra-strukturkomponenten sehr einach beobach-ten. Da Nagios ein Plugin-Konzept verolgt, istes sehr einach um selbstgeschriebene Kompo-nenten zu erweitern. Eine aktive Communitynutzt diesen Vorteil auch ausgiebig aus, sodassim Laue der Zeit Nagios-Plugins r sehr vieleEinsatzlle entstanden sind.

    Auerdem bietet Nagios eine Eskalationsstra-tegie, die es erlaubt, statusabhngig bestimmteAktionen auszulsen, also beispielsweise denService-Level- oder Availability-Manager audie bevorstehende Verletzung des SLA hinzu-weisen, unter Umstnden bevor der Anwenderetwas mitbekommt.

    Problem-ManagementDie Zielsetzung des Problem-Managements be-steht in der Lokalisierung, Dokumentation undVerolgung von strukturellen Strungen und in

    deren (vorbergehender) Lsung. Um dies zuerreichen, hrt man sowohl proaktive als auchreaktive Manahmen durch. Proaktiv versuchtdas Problem-Management unter anderem,durch Monitoring potenzielle Faktoren r St-rungen zu identifizieren, bevor die eigentlichenStrungen berhaupt aureten. Zu den Werk-zeugen r diese Art der berwachungen zhlendie schon erwhnten Tools MRTG, Cacti undNagios. Reaktiv wird unter anderem Monitoringdurchgehrt, um bekannte Fehler zu berwa-chen oder die Untersuchung von Strungen zuerleichtern. Dar eignen sich auch zahlreiche

    Linux-Bordwerkzeuge, wie ein eigener Artikelspter beschreibt.

    IT-Security-ManagementIT-Security-Management ist bei ITIL Teil einesRahmenkonzeptes r Inormationssicherheit.Die Hauptziele dabei sind: die Vertraulichkeit(Confidentiality) wahren, also der Schutz vonInormationen vor unautorisierter Kenntnis-nahme und unbeugter Benutzung, die Integri-tt (Integrity) sichern, also die Richtigkeit undVollstndigkeit der Inormation und die Verg-

    barkeit (Availability) innerhalb des im SLA ver-

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    9/125www.linuxtechnicalreview.de1

    Fr das System-Monitoring mit einer quelloffenen

    und kostenfreien Open-Source-Lsung ist Nagios

    lngst nicht mehr die einzige Alternative. Die Kon-

    kurrenz konzentriert sich dabei mit Vorliebe aufdas Enterprise-Segment, in dem auch Geld zu ver-

    dienen ist. Grbt das der kommerziellen berwa-

    chungssoftware, die um dieselben Kunden wirbt,

    inzwischen schon das Wasser ab? Dieser Artikel

    beschreibt, was kostenpflichtige Angebote in die

    Waagschale zu werfen haben. Ingo Averdunk

    Eher vom Band

    als durch Bastelei

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    10/125

    Studien

    www.linuxtechnicalreview.de 2

    Kommerzielle Monitoring-Programme unter-scheiden sich scheinbar nur wenig von den Al-ternativen aus dem Open-Source-Lager. Beideuntersttzen eine Vielzahl von Plattormen,greien au umangreiche Metriken der ber-wachten Systeme zu und erlauben das Erkennenvon Strungen, sei es durch Schwellwertber-schreitung, Vergbarkeitsmessung oder Pat-ternmatching.Monitoring-ools, die nicht blo eine ber-schaubare Umgebung berwachen, sondern sichunternehmensweit bewhren sollen, mssendar besondere Anorderungen erllen. Vorallem wichtig sind hier die Skalierbarkeit, die Si-cherheit, die vorausschauende Fehlererkennung

    (proaktives Monitoring), ein aussagekrigesReporting oder die Fhigkeit, komplexe Zusam-menhnge sinnllig zu visualisieren. Darberhinaus verstrkt sich besonders in einer groenUmgebung die Gewichtung bestimmer Anor-derungen die wichtigsten davon diskutiertdieser Beitrag.

    Zentrale KonfigurationZu eben diesen Anorderungen, die mit zuneh-mender Unternehmensgre immer mehr anRelevanz gewinnen, gehrt die zentrale Konfi-

    guration. Denn nur so ist es mglich, den ber-blick zu bewahren, berall einheitliche Policiesdurchzusetzen oder die Module und berwa-chungsparameter effizient zu pflegen. Auch dasChange- und Release-Ma-nagement vereinacht sichdurch die zentrale Steuerungmerklich.Ein zweiter Aspekt betridie Nachvollziehbarkeit:Die Vergbarkeit von An-wendungen ist hufig diezentrale Metrik von Service

    Level Agreements unddamit zugleich ein sensiblerPunkt in der Beziehung zwi-schen dem Servicedienst-leister und seinem Kunden.Entsprechend wichtig ist,dass hier ausschlielich ko-ordinierte und autorisierteEingriffe mglich sind unddass ein Auditlog zuverls-sig protokolliert, wer welchenderungen wann durchge-

    hrt hat.

    Warehousing & ReportingEine unternehmensweite Monitoring-Lsunggeht in der Regel weit ber die einache Reaktionau Schwellwertberschreitungen hinaus. So istdie Visualisierung von Messdaten eine o ge-stellte Anorderung. Dar speichert man die ge-sammelten berwachungsdaten normalerweisein einem Datawarehouse. Au dieser Grundlagelassen sich schlielich Charts generieren, diedie historische Entwicklung und rends veran-schaulichen. So lsst sich beispielsweise erken-nen, ob ein Filesystem stndig wchst und zu-knig mit einem Speicherengpass zu rechnenist. Die Verbindung von historischen Daten ausdem Datawarehouse und aktuellen Daten des

    Monitors helen den Support-Mitarbeitern, einProblem schneller zu isolieren und Gegenma-nahmen zu ergreien.Zustzlich zu diesen Reports die hufig gleichin eine Helpdesk-Konsole eingebettet sind sol-len sich aus denselben Daten auch proessionelleReports r interne wie externe Kunden erstel-len lassen. Und schlielich bedient sich auch dasCapacity-Management hier, denn die Messwerteermglichen Aussagen ber die Auslastung ent-scheidender Ressourcen wie Memory, CPU oderI/O jetzt und in der Zukun.

    Ein solches Warehouse kann durchaus Giga-bytes an Daten erzeugen. Die Datenhaltung unddas Reporting mssen daher mit solchen Mas-sen effizient umgehen knnen. E

    Abbildung 1:Integration verschiedener Monitoring-Module im Tivoli Enterprise Portal am Bei-

    spiel SAP-Monitoring.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    11/125

    Studien

    www.linuxtechnicalreview.de3

    tere Aspekte kommen o hinzu, zum BeispielAnzahl der aktiven Benutzer, Mandantenhig-keit, Rollen und Rechte der Benutzer und Um-ang der Datensammlung im Datawarehouse.

    Agentenbasiert oderagentenlosAn dieser Stelle kommt unweigerlich auch dasTema agentenbasiertes versus agentenlosesMonitoring zur Sprache, das schon Gegenstandvieler Diskussionen war.Frher arbeitete das System-Monitoring ber-wiegend mit Agenten au den Zielsystemen, wh-rend Netzmanagement in der Regel agentenlosarbeitete. Allerdings bedingt ein agentenbasiertes

    Management ein abgestimmtes Betriebskonzept,wollen doch Ablue wie Deployment der Agen-ten, Pflege der Agentensoware und Betrieb die-ser Inrastruktur gut durchdacht sein.Daher haben sich am Markt inzwischen Lsun-gen etabliert, die weitgehend ohne Agenten aus-kommen. Sie arbeiten in erster Linie au Basisvon SNMP und ermitteln die Vergbarkeit berIP- und Port-Probeing.Wie die agentenbasierten Lsungen, habenauch agentenlose durchaus Nachteile. Bei ih-nen schlgt etwa die auwndige Pflege von

    Credentials (in der Regel Benutzername undPasswort) negativ zu Buche. Auch ergeben sichSicherheitsbedenken, wenn nicht die Version 3

    des SNMP-Protokolls zumEinsatz kommt. O sind hierzudem Skripte und Konfigu-rationdateien au die Zielsys-teme zu transerieren.Fr eine detaillierte, proak-tive und automatisierte ber-wachung von Betriebssyste-men und Anwendungen kn-nen aber auch diese Systeme

    nicht darau verzichten, dieMonitore au dem Zielsystemauszuhren, o unter Zuhil-enahme von Inrastruktu-ren wie Secure Shell. Nur inEinzelllen verwenden Ab-ragen von einem enterntenSystem beispielsweise RFCs(Remote Function Calls).Weil sich r beide echno-logien mit und ohne Agen-ten Einsatzbereiche finden

    lassen, haben sich viele Her-

    SkalierbarkeitEin wichtiger Punkt r den unternehmenswei-ten Einsatz einer Lsung ist die Skalierbarkeit.So haben Unternehmen nicht selten mehrereausend Server im Einsatz, internationale Kon-zerne sogar Zehntausende von Servern. Jederdieser Server beherbergt Middleware, Daten-banken oder Anwendungen. Wenn man an-nimmt, dass pro Server im Schnitt zehn Eventspro ag anallen, dann wird deutlich, welcheEvent-Volumen zu Stande kommen knnen.Nur durch mchtige Korrelationen und Auto-mationen lsst sich sicherstellen, dass am Endeeine geringe Anzahl von Events brig bleibt, dieHelpdesk oder Experten noch beherrschen.

    Solche Umgebungen erzwingen eine hoch-ska-lierbare Monitoring-Architektur. Die berwa-chung verteilt sich ber mehrere, o redundantausgelegte Ebenen. Die einzelnen Ebenen un-gieren dabei als intelligente Manager, um Kor-relation aber auch Automation weitgehend un-abhngig von einer zentralen Instanz durchh-ren zu knnen. Auch lassen sich diese Ebenennutzen, um die Verteilung von berwachungs-kommandos und Parametern effizient zu orga-nisieren und so das dabei anallende Datenau-kommen oder die Anzahl der Verbindungen zu

    minimieren.Skalierbarkeit bezieht sich nicht allein au dieAnzahl der zu berwachenden Systeme wei-

    Abbildung 2:Das Tivoli Software Availability Portfolio beschreibt die Interaktion von System-,

    Netz-, und Security-Management in eine einheitliche Servicemanagement-Lsung unter Ver-

    wendung von Konfigurationsdatenbank (CMDB) und Portal (Service Dashboard).

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    12/125

    Studien

    www.linuxtechnicalreview.de 4

    JMX und ABAP-Programme. Dieser Entwick-lungsauwand ist kaum im nichtkommerziellenBereich zu leisten. Zudem arbeiten Herstellervon Anwendung und berwachungsprogrammgemeinsam an der Zertifizierung dieser Kom-bination. Ein so zertifiziertes Monitoring sollsicherstellen, dass nicht die Monitore selbst Pro-bleme in der Anwendungslandscha auslsen,es gibt also Antwort au die Frage Quis custo-des custodiet? (Wer wird die Wchter bewa-chen?)

    Mageschneiderte MonitoreNeben Modulen r kommerzielle Anwendun-gen ist es selbstverstndlich notwendig, auch r

    kundenspezifische Lsungen Monitore selbstentwickeln zu knnen. Hierzu bieten Herstel-ler von Monitoring-Suiten generische Agentenoder oolkits an. IBM ivoli bietet beispiels-weise ber den Universal Agent ein derartigesreichhaltiges Spektrum an Adaptoren zumBeispiel der Klassen API, File, SNMP, ODBC,Socket und Script die r die Integration voneigenen Lsungen zur Vergung stehen. Da-neben hat IBM mit der Open Process and Au-tomation Library [1]eine Platorm etabliert, dieentsprechende Best Practices r Kunden zum

    reien Download anbietet.Zunehmend setzen sich lose gekoppelte Kom-ponenten gegenber monolithischen Anwen-dungen durch, man spricht von Composite Ap-plications und Service Oriented Architectures(SOA). eile der Anwendung lauen au unter-schiedlichen Komponenten und Plattormen ab,vom Webserver au Linux-Farmen bis zur Da-tenbank au dem Mainrame. Damit wird auchr das Monitoring solcher Applikationen eineLsung notwendig, die au all diesen Plattor-men einsetzbar ist und die an unterschiedlichenOrten ermittelte Einzelergebnisse zu einer Ge-

    samtschau kombinieren kann.

    SicherheitO umasst das Monitoring gerade auch dieunternehmenskritischen Server, daher ist einesicherheitskritische Bewertung zwingend er-orderlich. Sie umasst Temen wie die sichereKommunikation zwischen einzelnen Kompo-nenten oder die Robustheit des Codes gegen At-tacken.Ein hufiges Problem dabei ist die Kommuni-kation zwischen Monitoring-Server und Agen-

    ten ber Firewalls hinweg. In diesem Bereich

    steller kommerzieller Lsungen wie IBM ivoli,BMC, HP oder CA dazu entschieden, in ihremPortolio beide Mglichkeiten vorzusehen. IhreKunden haben so die Mglichkeit, die r ihreUmgebung beste echnologie auszuwhlen.

    Anwendungs-MonitoringDas Monitoring von Anwendungen und Midd-leware erordert ein hohes Ma an Kenntnis derinternen Strukturen, der kritischen Parameterund deren Schwellwerte. Das Identifizieren vongeeigneten Metriken, die Konfiguration des Mo-nitoring und die Integration in den Lie-Cycleder Anwendung kann durchaus eine beachtlicheEigendynamik entwickeln und wertvolle Res-

    sourcen binden.Daher ist es vorteilha, das Monitoring solcherKomponenten in eine generische Monitoring-Struktur einzubetten. Anstelle von Punktlsun-gen nimmt man lieber eine Lsung mit vielleichtnur 90-prozentiger Abdeckung in Kau, die sichaber auch effizient betreiben lsst.Hersteller von kommerziellen Monitoring-Sui-ten haben eine Vielzahl spezialisierter Moduleim Angebot. Sie ermglichen beispielsweise diemageschneiderte berwachung von Daten-banken (DB2, Inormix, Oracle, MySQL, Sybase,

    MS-SQL und andere), von ERP- und CRM-Pro-grammen (etwa SAP, Siebel oder Peopleso),von Web-Inrastrukturen (Websphere, BEA,Jboss, Apache), von Middleware (MQ-Series,Message Broker) oder Collaboration Soware(Lotus Notes, Exchange). Heutzutage sind sol-che Module in der Regel mit so genannten Best-Practices kombiniert, die eine Auswahl vonrelevanten Metriken vorgeben. Damit wird derAuwand r Installation und Konfiguration,aber auch das ntige Know-how au der Anwen-derseite reduziert.Die Integration in eine Produktlsung erleich-

    tert den Einsatz beim Endkunden. Das Suchenvon geeigneten Plugins, deren Konfigurationund Integration in eine Monitoring-Lsung unddie Wartung und Pflege dieser Lsung wird zumGroteil vom Hersteller der Monitoring-Suitebernommen.Diese Monitoring-Module sind mittlerweileuerst mchtig und durchaus vergleichbar mitanwendungsspezifischen berwachungspake-ten. Fr eine umassende berwachung einerSAP-Landscha verwenden sie beispielsweiseeine Vielzahl von Schnittstellen, zum Beispiel

    CCMS, IDOC, SAP syslog, Statistical Records,

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    13/125

    Studien

    www.linuxtechnicalreview.de5

    Zudem untersttzen sie moderne Netzwerk-technologien wie Multi Protokoll Label Swit-ching (MPLS).

    IntegrationEiner der wesentlichen Grnde, warum groeUnternehmen kommerzielle berwachungs-tools einsetzen, ist die Integration in ein ber-geordnetes System- und Servicemanagement.O agieren berwachungstools dabei nicht iso-liert sondern integriert in ein Monitoring-Por-tal (Dashboard). Alle beobachteten Ereignisselauen hier zusammen. Die einzelnen Eventslassen sich dann miteinander korrelieren und ineiner grafischen Konsole prsentieren. Gerade

    bei greren Umgebungen ist es hier besonderswichtig, r bersichtlichkeit zu sorgen, dennallzu schnell kann sich der Benutzer in einer zudetaillierten Anzeige verlieren.O ist diese Konsole in einen Servicedesk inte-griert, sodass sie automatisch rouble ickets(Incidents) generieren kann. Sollte die Eskala-tion nicht ohnehin im Servicedesk-ool erol-gen, kann sie auch direkt der Event-Managersteuern. Man unterscheidet hier o zwischenunktioneller Eskalation (Weiterleitung an dieentsprechende Fachgruppe) und hierarchischer

    Eskalation (Weiterleitung, wenn das Problemnach einer vorgegebenen Zeit ortbe-steht).

    Reaktion auf StrungenEine o genutzte Funktion ist die au-tomatische Reaktion au Fehler undder Versuch einer Fehlerbehebungbereits durch den Monitor-Agenten.Ein einaches Beispiel dar ist das au-tomatische Neustarten von Dienstennach einem Ausall oder das Lschenvon temporren Dateien, sobald ein

    Filesystem voll lu. Eine grafischeAnzeige der Ergebnisse ist Bestand-teil eines jeden Monitoring-Pakets.Neben einer tabellenartigen, priori-sierten Liste der Ereignisse kommenzunehmend baumartige Strukturenin Mode, welche die Bedeutung einesEreignisses r ein Business-Systemverdeutlichen.Damit der Administrator schnell undsicher au ein bestimmtes Ereignisreagieren kann, lassen sich Hand-

    lungsanweisungen mit dem Monitor

    hat sich beispielsweise seit langem IBM ivolierolgreich positioniert. Die Lsung erlaubteine SSL-verschlsselte Kommunikation, beider nicht nur der Port rei whlbar ist, sondernauch die Richtung des Kommunikationsau-baus. Komponenten der ivoli-Lsung bndelnden Verkehr innerhalb eines Subnetzes, agierenals Proxy und gleichzeitig als Application LayerGateway. Das erlaubt eine sichere Kommuni-kation selbst in komplexen und umangreichenFirewall-Umgebungen.

    NetzberwachungEin Aspekt des Monitoring ist die Netzberwa-chung primr der aktiven Netzkomponenten

    wie Router, Switches oder Hubs. Auch Proto-kolle oder die Perormance in diesen Netzenlassen sich berwachen. Entscheidend r dieQualitt der berwachung ist dabei die korrekteAbbildung der Netzwerktopologie.Whrend die Pflege von kleineren Netzen auLayer-3- Ebene vielleicht noch realisierbar ist,ist dies in greren Umgebungen nicht mehrpraktikabel. Kommerzielle Netzwerklsungenstellen daher auwndige Autodiscovery- undautomatische opologieunktionen zur Ver-gung. Sie gewinnen ihre Inormation neben dem

    OSI-Layer 3 auch aus den tieeren Schichten.

    Abbildung 3:Das Zusammenspiel von Verfgbarkeitsinformation (links oben), De-

    tailinformationen (rechts oben) und spezifischen Handlungsanweisungen (unten)

    verdeutlicht die Mglichkeiten eines integrierten Monitoring-Portals.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    14/125

    Studien

    www.linuxtechnicalreview.de 6

    Wirtschaftliche AspekteNeben diesen technischen und unktionellenAspekten unterscheiden sich kommerzielleools auch in wirtschalicher Hinsicht vonOpen-Source-Lsungen. Als Erstes stehen hiero die Lizenz- und Wartungskosten zur Dis-kussion, die bei einer kommerziellen Lsunganallen. O ist dies auch der wesentliche Mo-tivationsgrund, sich nach reier Soware umzu-sehen.Au der anderen Seite muss man aber in Kaunehmen, dass die Integration und Konfigura-tion der Module und Plugins dann eben nichtber das Produkt gelieert wird, sondern selbstzu leisten ist. Nachdem viele Unternehmen in

    den letzten Jahren au Kosteneinsparungen o-kussiert waren, ehlt dort nun die notwendigeErahrung r Open-Source-Produkte. Immerhufiger sind sie gezwungen, au die Dienstleis-tung von Spezialisten und externen Beratungs-husern zurckzugreien, was die Kostenvor-teile von Open-Source-Lsungen schnell wiederrelativieren kann.Ein von Unternehmen o georderter, zentra-ler, namentlich bekannter Ansprechpartner, derzudem auch die Verantwortung bernimmt, istim Open-Source-Bereich nicht immer die Re-

    gel. Selten ist auch ein proessioneller Supportr 24 Stunden an sieben Wochentagen. Gerader unternehmenswichtige Anwendungen undr den I-Betrieb zhlt das Monitoring allemalzu dieser Kategorie ist dies eine unabdingbareForderung.

    FazitEine unternehmensweite Monitoring-Lsungist weit mehr als das einache berwachen vonDiensten oder Ressourcen. Temen wie Visuali-sierung, Reporting, aber auch Netzmanagementund Anwendungsmanagement gehren seit

    langem zu den Anorderungen, nicht nur vongroen Unternehmen. Die zunehmende Not-wendigkeit, Monitoring mit einer Incident- undProblemmanagement-Lsung zu verbinden,zeigt die Richtung der knigen Entwicklung:von einer technisch motivierten Lsung hin zurprozessorientierten, ast schon abrikhnlichenAutomation, die alle ntigen Komponenten in-tegriert. (jcb) nnn

    Infos

    [1] Open Process and Automation Library (OPAL);

    [http://www.ibm.com/software/tivoli/opal]

    verlinken und in der Konsole einblenden. DieseHandlungsanweisungen knnen kundenspezi-fisch und somit eng au die Arbeits- und Prozes-sumgebung des Unternehmens zugeschnittensein. Au der anderen Seite stellen Hersteller ih-ren Kunden zunehmend Knowledge-Bases zurVergung, die Probleme beschreiben und Re-aktionen hierzu empehlen. Eine Verlinkung mitdiesem externen Wissen ist zunehmend geragt,erspart das doch unter Umstnden den mhsa-men Aufau einer eigenen Wissensdatenbank.

    Anreicherung von EventsUm Probleme effizient bearbeiten zu knnen, istes mglich, Events mit zustzlichen Inormatio-

    nen anzureichern und mit weiteren Datenquel-len zu verknpen. Neben den schon erwhntenHandlungsanweisungen knnen das auch Inor-mationen zum Standort, zum Ansprechpartnerr die betroffene Resource, zum verantwort-lichen Servicemanager oder dem betroffenenSLA sein.Diese Integration gewinnt besonders dann anBedeutung, wenn nicht nur Spezialisten mit derLsung arbeiten, sondern au der ersten Ebenebeispielsweise zunchst ein allgemeiner Help-desk die meisten Probleme zu bewltigen ver-

    sucht.CMDBEine besondere Bedeutung hat hier die Integra-tion mit einer Konfigurationsdatenbank (Confi-guration Management Database, CMDB). bereine CMDB lassen sich alle r ein Betriebsmit-tel relevanten Konfigurationsinormationen undderen Beziehungen abruen. So knnen etwaSoll- und Istzustand verglichen werden, wobeiInventory- und Discovery-ools zum Einsatzkommen. Dabei kann man nachvollziehen, wel-che nderungen wann durchgehrt wurden.

    Wie wichtig dieses Wissen ist, veranschaulichteine Zahl: 85 % aller Probleme haben ihre Ur-sachen in nderungen in der I (Quelle: ivoliPrimary Research 2005).Die in der CMDB hinterlegten Inormationengeben auch Auschluss ber die Bedeutung desBetriebsmittels aus technischer und wirtscha-licher Sicht. War es redundant ausgelegt oderein Single Point o Failure? Ist es eine unterneh-menskritische Anwendung? Wurden ServiceLevel Agreements (SLAs) vereinbart, und sinddiese in Geahr? Werden Vertragsstraen bei

    lngerem Ausall llig?

    Der AutorIngo Averdunk ist als

    Consulting IT Architect

    bei IBM Tivoli ttig. Zu

    seinem Verantwor-

    tungsbereich gehrt

    Architekturberatung

    fr strategische Kun-

    den. Ingo Averdunk

    hat einen Abschluss in

    Informatik und besitzt

    das Zertifikat ITIL Ser-

    vice Manager.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    15/1251

    Das darf manberwachen

    Monitoring ist berwachung. berwachung bedeu-

    tet Kontrolle. Kontrolle von betriebsinternen Ablu-

    fen, aber auch von Mitarbeitern. Ist der betriebliche

    Big Brother ein juristisches Problem? Fred Andresen

    www.linuxtechnicalreview.de

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    16/125

    Studien

    www.linuxtechnicalreview.de 2

    Jger und Sammler,so hat sich der Mensch seitUrzeiten stets definiert. In der heutigen Arbeits-welt gilt das gleiche: Wer au der Jagd nach derbesten Betriebsorganisation ist, muss erst ein-mal eine Bestandsaunahme durchhren. Zurbloen Kontrolle, oder um das Ergebnis in eineVerbesserung umzusetzen. Deshalb muss sichauch jeder Admin irgendwann damit auseinan-dersetzen, wer in seiner EDV wann was macht.Das damit verbundene Speichern und Auswer-ten von Daten betri aber nicht nur die Ma-schinen, denn notwendigerweise sind auchdie Menschen betroffen, die die Maschinen be-dienen.

    Glserne Mitarbeiter sind keintechnisches ProblemIn Betracht kommen hier die TeilbereicheNetzzugriffe (etwa au bestimmte Server oderVerzeichnisse des Intranets), Zugriffe au In-ternet-Content, Teleonie- oder E-Mail-Ver-kehr zwischen Mitarbeitern oder nach auen.All das lsst sich in Relation zur Zeit setzen; sokann man Spitzenzeiten erkennen oder indivi-duellen Netzverkehr an bestimmte Uhrzeitenbinden. Dies ist heute bereits Standard. Zumin-dest mittelristig mglich scheinen aber auch

    Systeme, die anhand von Video- oder Inrarot-berwachung Bewegungsprofile der Mitarbeiterzwischen Schreibtisch, Kopierer und Teekcheauswerten, etwa um durch Umorganisieren dieBrowege zu verkrzen.Niemand wird bestreiten, dass ein Unterneh-men, das im Wettbewerb erolgreich sein willoder auch nur ums schlichte berleben kmpf,vitales Interesse an der Optimierung internerAblue hat. Solche Verbesserung setzt zwin-gend die lauende Bestandsaunahme und damitein Messen und Auswerten voraus.Ohne Zweiel steht es einem Unternehmer zu,

    zu pren, ob und inwieweit seine Arbeitnehmeroder Vertragspartner ihre arbeits- oder dienst-vertraglichen Pflichten erllen. In den Fllen,in denen eine solche Leistungsberprungdem Gesetzgeber oder der Rechtsprechung zuweit geht, greien diese au zwei Anstze zurck,das Kontrollrecht zu begrenzen. Ein Ansatz istdie Bewertung der arbeits- oder dienstvertrag-lichen Pflichten selbst, also das Zurechtrckendes Vertragsinhalts. Ein Beispiel hierr ist, auso genannte betriebliche bungen abzustellen,also Verhaltensmuster, die im Betrieb schon seit

    lngerer Zeit durch den Unternehmer geduldet

    werden oder sich eingespielt haben. Betrieblichebungen sieht man dabei als nderungen etwaeines Arbeitsvertrages an, sie gelten also als Ver-tragsinhalt.Wird in einem Betrieb zum Beispiel durch denArbeitgeber ber einen gewissen Zeitraum tole-riert, dass die Mitarbeiter die vom Unternehmenzur Vergung gestellten E-Mail-Konten auchr private Mails benutzen, so gilt dies als er-laubt, auch wenn die einzelnen Arbeitsvertrgekeine Regelung hierzu treffen. Das gleiche giltdann selbst in den Fllen, in denen das im Ver-trag ausdrcklich verboten ist. Gerade die Frage,ob in einem Betrieb private Mails der Mitarbei-ter gestattet sind, ist in der Praxis von entschei-

    dender Bedeutung r die Protokollierung, Fil-terung und berwachung aller E-Mails.Ein anderer Ansatz, das Kontrollrecht einzu-schrnken, ist die Anerkennung des Persn-lichkeitsrechts jedes Mitarbeiters, das diesenvor harschen Einschnitten in seine Privatsphreschtzt. Die Obergerichte haben schon vor etli-chen Jahren dieses Persnlchkeitsrecht zemen-tiert und wenden es unter anderem auch als Be-grenzung arbeitsvertraglicher Kontrollrechte an.

    Privates berwachen

    Das Interesse des Unternehmers an Optimie-rung der EDV-Ablue findet dort seine Grenze,wo die individuelle Sphre der Arbeitnehmeroder reier Mitarbeiter beginnt. Dabei ist zubeachten, dass sich die Grenzen beider Sph-ren berlappen und eine exakte Grenzziehungschwierig und nur im Einzelall sicher eststell-bar ist. Der Arbeitnehmer (und auch der reieMitarbeiter) hat ein Recht au angemessenePrivatsphre am Arbeitsplatz. Das bedeutet, dieKontrolle seiner Arbeistleistung in qualitativerwie auch in quantitativer Hinsicht ist gewissenEinschrnkungen unterworen. Das bedeutet

    somit auch, die berwachung dessen, was er tut,ist im gleichen Mae eingeschrnkt.Der Schutzbereich des Persnlichkeitsrechtsumasst das Recht des Arbeitnehmers, auch anseinem Arbeitsplatz eine angemessene Privat-sphre zu erhalten. Kerninhalte des Persnlich-keitsrechts, die bei der Arbeit ebenalls berhrtsein knnen, sind das Recht am eigenen Wortund das Recht am eigenen Bild. Aber auch derZwang, bestimmte Handlungen auszuhrenoder zu unterdrcken, kann durch den perma-nenten psychologischen Druck veranlasst sein,

    wenn sich der Arbeitnehmer einer dauerhafen

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    17/125

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    18/125

    Studien

    www.linuxtechnicalreview.de 4

    Kommunikation ist allesUnabhngig von der berwachung betriebsin-terner Ablue, unterliegt jede Form der per-snlichen Kommunikation einem besonderenSchutz. Die berwachung des privaten E-Mail-und Teleonie-Verkehrs ist ebenso unzulssig,wie die der privaten Internetzugriffe. Monito-ring-Tools, die au diese Bereiche abzielen, sindgrundstzlich unzulssig.Weil nur die private Kommunikation der Mitar-beiter geschtzt ist, die rein betriebliche jedochnicht, kommt es darau an, ob das Monitoringberhaupt private Kommunikation erasst. Sindden Mitarbeitern die private Internetnutzung,private E-Mails oder Teleonate gestattet, dar

    man hier nichts mehr berwachen. Nur, wenndiese Arten persnlicher Kommunikation nichterlaubt sind, dar der Unternehmer davon aus-gehen, dass auch alle Kommunikationsdatenseiner Vergung unterliegen und seine Monito-ring-Tools darau ansetzen.

    Betriebsinteresse steht zurckMonitoring ist grundstzlich zulssig, allerdingssind die Rechte der Mitarbeiter, die sozusageninzident mit berwacht werden, zu berck-sichtigen. Der Einsatz des Monitoring-Systems

    muss den Mitarbeitern bekannt sein, und seineFunktionsweise sollte so klar beschrieben sein,dass jeder Beschfigte zumindest nachvollzie-hen kann, welche seiner Ttigkeiten einer Aus-wertung unterliegt. Ist jedem klar, dass die Aus-wertung der betriebsinternen EDV-Ablue derVerbesserung der Betriebsorganisation und da-mit auch der Arbeitserleichterung der einzelnenMitarbeiter dient, wird es kaum Streit geben.Falls doch, ist das Monitoring so anzupassen,dass es die Persnlichkeitsrechte der Mitarbeiterausreichend schtzt. (jcb) nnn

    Infos[1] Wikipedia zu Monitoring: [http://de.wikipedia.

    org/wiki/Monitoring]

    [2]Betriebsverfassungsgesetz: [http://bundesrecht.

    juris.de/bundesrecht/betrvg/gesamt.pdf]

    [3] Internationale Arbeitsorganisation: [http://www.

    ilo.org/public/german/region/eurpro/bonn/

    index.htm]

    [4] Bildschirmarbeits-Verordnung: [http://

    bundesrecht.juris.de/bildscharbv/]

    [5] Bundesarbeitsgericht zur Gruppenberwa-

    chung: [http://www.lexrex.de/rechtsprechung/

    innovativ/ctg1086615676632/1386.html]

    kann ebenso nichtig sein, wie eine ausdrcklicheEinverstndniserklrung des Arbeitgebers imArbeitsvertrag. Kommt es zum Streit, knntensolche Klauseln wertlos sein.Die Internationale Arbeitsorganisation (Interna-tionale Labour Organisation, ILO, [3]), eine Un-terorganisation der Vereinten Nationen (UN),hat zum angemessenen und mavollen Einsatzdes EDV-Monitoring eine Reihe von Grundst-zen (siehe Kasten) augestellt, die die Mitglieds-staaten beachten.Eine weitere Einschrnkung der berwachungs-mglichkeiten ergibt sich auch r ratlose Be-triebe aus der Verordnung ber Sicherheitund Gesundheitsschutz bei der Arbeit an Bild-

    schirmgerten (BildscharbV, [4]). Nach Ziff. 22des Anhangs zu dieser bundesweit gltigen Vor-schrif, die r die meisten Betriebe gilt, ist ohneWissen der Benutzer keine Vorrichtung zur qua-litativen oder quantitativen Kontrolle zulssig.Im Gegensatz zur technischen Einrichtungdes BetrVG ist r die Vorrichtung der Bild-scharbV die Zweckbestimmung entscheidend.Ist die berwachung der Arbeitsleistung derMitarbeiter hier zwar denkbar, aber erkennbarnicht das Ziel der Vorrichtung, steht das Verbotdem Einsatz nicht entgegen. Die Kombination

    aus PC und Programm gilt auch im Sinne derBildscharbV als Vorrichtung.

    Abteilung, Marsch!Grund- und Menschenrechte sind individuelleRechte. Das Argument liegt demnach au derHand, wenn das Monitoring nicht au individu-elle Arbeitspltze also au einzelne Arbeitneh-mer ausgerichtet ist, wren die gesammeltenDaten ja nicht einzelnen Personen zuzuordnen,und deshalb knnten keine individuellen Rechteverletzt sein. Dieser Ansatz ist jedoch alsch.Das Bundesarbeitsgericht hat bereits in seinem

    Beschluss vom 26.7.1994 [5] estgehalten, dasstechnische berwachungsmanahmen einerArbeitsgruppe geeignet sind, einen Gruppen-druck auzubauen, der insoweit mittelbar diereie Entaltung der Persnlichkeit der einzelnenGruppenmitglieder und damit deren individu-elle Rechte beeintrchtigt.Je weniger Personen eine solche Gruppe um-asst, desto grer ist die Wahrscheinlichkeit,dass einzelner Netzverkehr von einem der Grup-penmitglieder verursacht ist. Daraus olgt: Jekleiner die gemonitorte Gruppe, desto eher sind

    individuelle Persnlichkeitsrechte betroffen.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    19/125www.linuxtechnicalreview.de1

    Eher unbekannt, doch leistungsstark:

    ZabbixDie Featureliste liest sich wie das Ergebnis einer

    Kreuzung der bekanntesten Open-Source-Moni-

    tore in einem unbekannten Produkt. Denn was

    viele Konkurrenten erst mit Untersttzung durchThird-Party-Software schaffen, das bringt Zabbix

    gleich mit.

    Daniel Drrer, Bogdan Taru, Markus Feilner

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    20/125

    Projekte

    www.linuxtechnicalreview.de 2

    Bis vor einigen Monaten war Zabbix [1] nurEingeweihten ein Begriff. In letzter Zeit aber ge-winnt das sechs Jahre alte Open-Source-ber-wachungstool an Popularitt, ist es doch ange-treten, dem Platzhirsch Nagios das Revier strei-tig zu machen.Dabei gibt seit zwei Jahren die Firma SIA Zabbixmit Sitz in der lettischen Hauptstadt Riga R-ckendeckung. Sie bietet proessionellem Supportund Untersttzung bei Entwicklung und Test.Ob das Produkt dadurch tatschlich schon demAnspruch gerecht wird, die besten Features derKonkurrenz zu vereinen, zeigt der Test au denolgenden Seiten.

    InformationsbeschaffungBereits beim Sammeln von Inormationen, derGrundunktion jeder berwachungssoware,gibt sich Zabbix kaum eine Ble. Es beherrschtalle gngigen Methoden: aktive und passive,solche, die sich au Netzwerkprotokolle sttzen,und natrlich auch SNMP. (Mit dem SNMP-Protokoll beschigt sich ein weiterer Artikeldieser Ausgabe.)Direkt nach der Installation stehen bereits rund100 eingebaute Tests zur Vergung, mit denensich grundlegende Funktionen und Ressourcen

    wie die CPU-Last oder der Speicherverbrauchbeobachten lassen. Fr viele dieser Tests kommtein so genannter Agent zum Einsatz, der entwe-der au dem zentralen Server oder dem ber-wachten Client als Inormationsbeschaffer ttigist. In manchen Fllen sammelt er permanentInormationen, gibt sie aber nicht ungeragt

    weiter. In anderen ist er auch selbststndig ttigund kann etwa aus eigener Initiative eine Log-datei regelmig nach bestimmten Musterndurchorsten.Dieser Agent hlt sich au vielen Unix- undWindows-Plattormen heimisch, so unter Linux,Solaris, HP-UX, AIX, FreeBSD, OpenBSD, MacOS X, Tru64/OSF1, Windows NT4.0, Windows2000, Windows 2003 oder Windows XP.Sollte der Agent r eine bestimmte berwa-chungsaugabe noch nicht geschult sein, kannman ihm leicht mit einem eigenen Perl- oderShellskript oder einem C-Modul au die Sprngehelen. Zuknige Zabbix-Versionen sollensogar mit einer Diensteerkennung ausgerstet

    sein, mit deren Hile er automatisch die wich-tigsten Services ins Auge assen knnte.Gerte im Netz, die SNMP sprechen, kann Zab-bix direkt beragen, denn es beherrscht das Es-peranto der Devices ebenalls. Daneben kanndie Soware zahlreiche Netzwerkdienste testen,indem sie sich als zugehriger Client ausgibtund eine Konversation beginnt. Die Antwort desGegenbers verrt in der Regel viel ber seinenGesundheitszustand. Solche Checks sind wiedie SNMP-Abragen natrlich nicht au dasLAN beschrnkt.

    Zentrallager fr DatenAlle Beobachtungswerte gelangen in eine zen-trale Datenbank, von wo aus sie zum Beispiel invielltig konfigurierbare Diagramme einflieen.Mglich sind Kurzzeitdarstellungen und Status-bersichten ebenso wie Langzeitstatistiken, wie

    Abbildung 1:Ein bersichtliches Webfrontend bildet die Zabbix-Zentrale, zustndig fr Konfiguration

    und Kommunikation mit dem Anwender. Im Bild: die Liste der berwachten Parameter.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    21/125

    Projekte

    www.linuxtechnicalreview.de3

    Kartierte InformationenZabbix kann darber hinaus Statusinormati-onen mit Karten (Maps) verknpen, die dieInrastruktur entweder physisch oder logischabbilden. Diese Karten lassen sich zudem soverschachteln, dass man von einer bersichts-darstellung in immer detailliertere Ansichtenhinein absteigen kann. Eine Karte als Aus-gangspunkt beschleunigt erahrungsgem dieFehlersuche, weil sie dem Administrator einenschnellen berblick verschaf. Dabei lsst sichder Zugriff au bestimmte Zoom-Stuen oderBereiche an die Berechtigungen bestimmterNutzer knpen.Die Karten lassen sich komplett ber das Fron-

    tend im Browser erstellen. Alles ntige findetsich im Dialog Configuration | Maps | CreateMap. Hier legt der Administrator eine neueKarte an, benennt sie und platziert anschlieendvia Add Element beliebige von Zabbix ber-wachte Objekte. Auch die Verbindungen zwi-schen den Hosts sind sowohl darstell- wie auchberwachbar.

    TemplatesBeim schnellen Integrieren neuer Hosts in dasberwachungssystem helen Vorlagen dem

    Administrator. Diese Templates r Web-, Ap-plication-, Datenbank- oder Mailserver oderauch Desktoprechner legen est, welche Diensteoder Systemparameter zu berwachen, welcheChecks dar auszuhren sind und in welchenGrafiken Zabbix die Werte darstellt. Auch rganze Hostgruppen stehen Templates zur Ver-gung, so dass Administratoren Serverarmenoder Cluster mit wenigen Mausklicks hinzu-gen und in gemeinsamen Grafiken berwachenknnen.

    man sie beispielsweise r die Kapazittsplanungbentigt.Eine besondere Spezialitt von Zabbix sind Di-

    agramme, in denen sich die Darstellung mehre-rer Werte (Items) berlagert. Die Abbildung 3zeigt beispielha eine Grafik mit dem aktuellenVerlau der Prozessorauslastung whrend derletzten Stunde in den Kategorien idle, user, niceund system.Der Dialog Configuration | Graphs | CreateGraph ist der Ausgangspunkt beim Erstelleneiner solchen Grafik. ber seine SchaltflcheEdit lassen sich beliebige Items aus einemDrop-down-Men whlen.

    Abbildung 2:Zabbix sammelt Informationen ber verschiedene Kanle, ne-

    ben seinen Agenten verwendet es SNMP oder zapft Netzwerkprotokolle an.

    Abbildung 3:Verschiedene Zeitreihen in einem Diagramm sind eine Spezialitt von Zabbix.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    22/125

    Projekte

    www.linuxtechnicalreview.de 4

    Monitoring-Lsung installiert. Dar legt derInstallateur zunchst eine leere Datenbank an im Beispiel unter MySQL etwa mittels createdatabase zabbix;. Danach kommt das mitgelie-erte Create-Skript r die jeweilige Datenbankzum Zug, dass die ntigen Datenbankobjete er-zeugt. Unterhalb des Installationsverzeichnisses

    findet es sich in create/mysql:$ cat schema.sql | mysql -u root zabbix

    $ cd ../data/

    $ cat data.sql | mysql -u root -p zabbix

    $ cat images.sql | mysql -u root -p

    Dann kann es losgehen. Weil sich Zabbix imMoment strmisch weiterentwickelt, empfiehlt

    Dashboards fr jedenEin besonders interessantes Feature von Zabbixstellen die so genannten Screens dar. Das sindAnsichten, in denen sich beliebige Tabellen,Listen, Karten oder Diagramme au einer Bild-schirmseite kombinieren lassen. ber Configu-ration | Screens | Create Screen kann der Admi-nistrator die gewnschten Beobachtungspunkter eine au seine Bedrnisse zugeschnitteneAnsicht auswhlen.Zabbix beinhaltet wie jede Soware seiner ArtAlgorithmen, die die Beobachtungsergebnissemit bestimmten Grenzwerten vergleichen, dieauch in Service Level Agreements (SLAs) est-geschrieben sein knnen. Bei einer Verletzung

    dieser Limits, die sich au Fehlerraten, Ressour-cenauslastung oder auch Perormancekenn-werte beziehen knnen, lst Zabbix ber einenTriggermechanismus beliebige Aktionen aus.Au diese Weise lsst sich sowohl die Alarmie-rung steuern wie auch jede andere Aktion star-ten, die beispielsweise zur Schadensbegrenzungoder Selbstheilung sinnvoll erscheinen mag. Zu-stzlich kann der Admin Zeitenster estlegen,in denen ein bestimmter Trigger reagieren oderpausieren soll.Die Standardkonfiguration berwacht bereits

    direkt nach der Installation so viele Items, dasses o sinnvoll erscheint, zuerst die nicht ben-tigten zu deaktivieren (unter Configuration |Items). Dasselbe lsst sich auch schon au derEbene der Vorlagen einstellen. Dazu whlt manals Gruppe Templates und als Host das ent-sprechende Template.

    Zabbix-InstallationDie Installation des Zabbix-Servers und seinerAgenten stellt den Administrator vor keine gro-en Probleme. Allerdings muss er dar ber-wiegend au der Kommandozeile operieren, wo-

    gegen sich die olgende Konfiguration dann astvollstndig in der Browser-GUI erledigen lsst.Im Beispiel kam ein Ubuntu Server LTS 6.0.6(installiert mit LAMP-Option) zum Einsatz, beieinem weiteren Agenten ein Red Hat EnterpriseLinux 4.Damit die Installation gelingt, sollte allerdingseine Reihe von Voraussetzungen erllt sein(siehe Tabelle 1).Auerdem empfiehlt sich das Anlegen ei-nes Accounts r den Benutzer zabbix. Undschlielich sollte auch die Datenbank ertig und

    arbeitshig eingerichtet sein, bevor man die

    Abbildung 4:Netzwerkdarstellungen, die den Status der berwachten Ge-

    rte reflektieren, lassen sich direkt in Zabbix entwerfen.

    Abbildung 5:Neue Hosts lassen sich auf der Grundlage von Templates

    leicht integrieren.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    23/125

    Projekte

    www.linuxtechnicalreview.de5

    con) gelangen leider nicht automatisch nach/etc, allerdings finden sich im Installations-verzeichnis im Unterordner misc/con/ Vor-lagen mit einer Beispielkonfiguration. Sie lassensich einach nach /etc/zabbix kopieren.In der Konfigurationsdatei des Servers zabbix_server.con sind olgende Eintrge anzupassen:

    ListenIP=

    DBHost=

    DBName=zabbix

    DBUser=

    DBPassword=*********

    Anschlieend starten die Beehle

    zabbix@monitoring:/etc/zabbix$ U

    /usr/local/bin/zabbix_server

    zabbix@monitoring:/etc/zabbix$ U

    /usr/local/bin/zabbix_agentd

    den Zabbix-Server und seinen Agenten. DasKommando zabbix_agentd startet dabei denZabbix-Agenten als Stand-alone Daemon, dasProgramm zabbix_agent ist r den Start desAgenten ber den inetd vergbar. Wer sichdavon berzeugen mchte, dass Server undAgent tatschlich lauen, schaut in die Protokoll-dateien standardmig liegen sie in /tmp,

    lassen sich aber genauso gut in das passendere/var/log-Verzeichnis konfigurieren. PassendeInit-Skripte r den automatischen Start liegenim Unterverzeichnis misc/init.d/ r die meis-ten Distributionen bereit.

    Konfiguration des Frontendsund AufrufDer Code des Webrontend von Zabbix ist kom-plett in PHP geschrieben und muss vom Instal-lateur in das Document-Root des Webserversbewegt werden.

    sich die Installation aus den Quellen. Der Quell-code steht au der Zabbix-Homepage [1] zumDownload bereit. Das Configure-Skript ben-tigt olgende Optionen:

    $ ./configure \

    --enable-server \

    --enable-agent \--with-mysql \

    --with-net-snmp

    Der Parameter --with-net-snmp ist optio-nal. Der Parameter --with-mysql hngt vonder Datenbank ab, die als Backend verwendetwird. Im Beispiel soll der Zabbix-Server sichau dem lokalen Rechner selbst berwachen.Dar braucht es auerdem einen Agenten, also--enable-agent. Nach configure komplet-tieren make und make install den Dreisatzohne Besonderheiten.

    KonfigurationIm Anschluss an das ber-setzen trgt der Installateurdie ntigen Ports in /etc/services ein.

    zabbix_agent 10050/tcp

    zabbix_trap 10051/tcp

    Die Konfigurationsdateiendes Zabbix-Servers (zab-bix_server.con) und des

    Agenten (zabbix-agentd.

    Abbildung 6:Bildschirmdarstellungen so genannte Screens lassen sich

    in Zabbix frei zusammenstellen. Das Beispiel zeigt eine Karte, die signali-

    siert, dass im Bundesland Baden-Wrttemberg zwei Probleme aufgetreten

    sind. Darunter wurde ein CPU-Last-Graph platziert.

    Apache ab 1.3.12

    MySQL ab 3.22 oder PostgreSQL ab 7.0.2

    MySQL- oder ProstgreSQL-Header und -Libraries

    PHP ab 4.0 oder 5.0

    PHP GD- oder GD2-Modul

    PHP MySQL- oder PostgreSQL-Modul

    NET-SNMP oder UCD-SNMP-Header und -Libraries

    OpenSSL-Header und -Libraries

    GNU Make

    GNU C Compiler

    Tabelle 1: Bentigte Softwarekomponenten

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    24/125

    Projekte

    www.linuxtechnicalreview.de 6

    Die Konfiguration des Zabbix-Agenten vollziehtsich auch unter Windows in einer Konfigura-tionsdatei mit identischer Syntax wie unter Li-nux/Unix, eine Liste der spezifischen Windows-Parameter gibt es au der Zabbix-Website unter[3]. ZabbixW32.exe ist ein reines Beehlszei-lentool, das zum Beispiel einen Syntaxcheck derKonfigurationsdatei aushren oder als Queller das Windows Event Log dienen kann. AuWunsch integriert sich der Client in die Win-dows-Diensteverwaltung und wird von ihr au-tomatisch gestartet und angehalten.

    Zabbix konfigurierenIm Webrontend ist der Zabbix-Server ber dieArbeitsaunahme seines Agenten zu unterrich-ten. Das geschieht ber Login | Configuration |Hosts | Create Host. Bereits unmittelbar danachsind dank der automatischen Checks zahlreicheBeobachtungswerte abragbar. Ein Klick au denReiter Monitoring besttigt das. Ganz rechtsin dieser Liste der Trigger befindet sich jeweilseine Spalte r jeden berwachten Host. WeitereEinstellungen erordern von nun an kein Editie-ren von Konfigurationsdateien mehr, sondern

    nur noch die Mens der GUI. E

    zabbix@monitoring:/var/www$ sudo cp -R U

    /home/zabbix/install/zabbix-1.1.6/U

    frontends/php/ ./zabbix

    Danach ist ihm die verwendete Datenbank berseine Konfigurationsdatei bekannt zu machen:

    zabbix@monitoring:/var/www/zabbix$ U

    sudo vim include/db.inc.php

    //$DB_TYPE ="ORACLE";

    //$DB_TYPE ="POSTGRESQL";

    $DB_TYPE ="MYSQL";

    $DB_SERVER ="DB-Host";

    In dieser Zeile sollte der Admin r dieses Bei-spiel DB-Host durch localhost (oder die IP

    des Datenbankservers) ersetzen. Die olgendenZeilen enthalten die Zugangsdaten r den Da-tenbankserver:

    $DB_DATABASE ="zabbix";

    $DB_USER ="DB-User";

    $DB_PASSWORD ="**********";

    Danach ist das Frontend bereits startklar,man erreicht es ber die URL [http://Monito-ring-Host/zabbix]. Die Anmeldung ist mit demStandardbenutzer admin ohne Passwort mg-lich.

    Einschleusen eines AgentenSolange es keinen Host berwacht, schaut dasWebrontend allerdings noch recht leer aus.DieInstallation der Agenten erolgt in analogenSchritten, allerdings reicht hier configure --en-able-agent aus. Au dem Client ist nach dembersetzen lediglich in der Konfigurationsdateizabbix_agentd.con der Server einzutragen.Das gelingt mit Server=192.168.111.249. DieAdresse muss mit dem Wert des Listen-Parame-ters der Server-Konfiguration bereinstimmen.Nun startet der Zabbix-Agent nach /usr/local/

    bin/zabbix_agentd.

    Windows-AgentenDer Zabbix-Agent r Windows-Systeme Zab-bixW32.exe verwendet den Perormance DataHelper PDH, um Inormationen unter Win-dows 2000 und XP zu sammeln. In WindowsNT 4.0 ist PDH nicht enthalten, ein Artikel ausder Microso Knowledge Base [2]beschreibt dienachtrgliche Installation. WMI (Windows Ma-nagement Instrumentation) wird offensichtlichnoch nicht untersttzt, ebenso ehlt ein Client

    r Vista.

    Abbildung 7:Eine Statusbersicht vermittelt einen raschen berblick.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    25/125

    Projekte

    www.linuxtechnicalreview.de7

    Daneben lassen sich die Beobachtungswerteauch individuell verknpen, und beispielsweiseautomatisch mit den Eckdaten von Service LevelAgreements (SLAs) vergleichen. Auch aushr-liche Reports und Zusammenassungen gene-riert Zabbix au Wunsch. Darber hinaus bietetes umangreiche Mglichkeiten der Dokumen-tation, Analyse und Inventarisierung der ber-wachten Systeme.Redundante Checks und unntige Alarme ver-meidet Zabbix durch Abhngigkeiten, die derAdministrator in der Konfiguration der Triggereintrgt. Fllt beispielsweise ein Router aus, soerkennt Zabbix automatisch, dass diverse Serverdahinter nicht mehr erreichbar sind und hrt

    die berflssigen Checks und Alarmierungennicht durch. Mit der Zuordnung der Trigger zuFehlerkategorien von Inormation bis Desas-ter bietet Zabbix Eskalationsstuen mit ange-passten Benachrichtigungsmethoden.

    Zabbix-BenutzerverwaltungFr den Einsatz in greren Unternehmen ntz-lich ist die flexible Benutzer- und Rechteverwal-tung von Zabbix. Auch sie kann der Administ-rator komplett im Webrontend konfigurieren(Abbildung 8). Im oberen Teil der Abbildung

    sind die Daten eines neu angelegten Benutzersund einige Einstellungen zu sehen. In der unte-ren Hle dieses Dialoges stehen die User-Be-rechtigungen.Der Administrator hat r den Beispiel-User o-ensichtlich sehr strenge Vorgaben gewhlt: DerBenutzer dar nur Screens betrachten (Read

    AlarmierungMeldet ein Agent eine Strung, kann er den Ad-ministrator au den blichen Wegen benachrich-tigen: ber E-Mail, SMS, Pager oder beliebigeexterne Programme. Das Zabbix-Forum auSourceorge [4]enthlt zahlreiche Anleitungendazu; die Spanne der Mglich-keiten reicht von Audio Alertsbis zur Benachrichtigung berWinPopUps.Als Grundlage r Alarme die-nen Zabbix wahlweise auch ku-

    mulierte Daten oder die Ergeb-nisse von Berechnungen. EinAdministrator erhlt in diesemFall bereits eine E-Mail, wennder bentigte Speicher oder diedurchschnittliche CPU-Auslas-tung einer Gruppe von Hosts,zum Beispiel eines Clusters, ei-nen vordefinierten Schwellwertbersteigt. Die Vitalitt der ge-samten Inrastruktur zeigt diezentrale Statusbersicht (Abbil-

    dung 7).

    Abbildung 8:Die Benutzerverwaltung von Zabbix erlaubt ein fein abge-

    stuftes Berechtigungskonzept.

    Abbildung 9:In der kommenden Zabbix-Version soll die Installa-

    tion komplett in der Web-GUI ablaufen.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    26/125

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    27/125

    Projekte

    www.linuxtechnicalreview.de1

    Applikations-Monitoring mit

    OpensmartMit flexiblen Konfigurationsmglichkeiten, leis-

    tungsfhigen Built-In-Checks und besonderen

    Strken bei der Logauswertung empfiehlt sichOpensmart fr kleinere und mittlere berwa-

    chungsaufgaben. Holger Schulthei

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    28/125

    Projekte

    www.linuxtechnicalreview.de 2

    Eine besondere Strke von Opensmart sindseine agilen Agenten: Au den Systemen, die sieberwachen, haben sie die Lizenz r selbststn-dige Aktionen. So lieern sie nicht nur Mess-werte, sondern knnen beispielsweise auch al-leine einache Fehler beheben. Sie arbeiten nichtimmer stur nach Schema F, sondern sind inder Lage, Randbedingungen ins Kalkl zu zie-hen, die ihnen der Admin vorgibt. So beachtensie etwa Wartungsenster und untersttzen imFehlerall automatisch die Ursachenorschungdurch zustzliche Tests. Oder sie starten in hochvergbaren Umgebungen autonom Dienstenach, die zuvor andernorts ausgeallen waren.Die Agenten vergen ber ein groes Reper-

    toire eingebauter Checks, die nur noch konfigu-riert werden mssen. Wo diese Tests nicht aus-reichen, lassen sich beliebige eigene Prskripteintegrieren.Daneben zeichnen Opensmart leistungshigeWerkzeuge r die Log-Auswertung aus. Siekommen mit verschiedenen Formaten zurechtund knnen zuverlssig das Vorhandenseinoder Fehlen beliebiger Textmuster in den Ein-trgen pren.Dem Admin grei dieses Monitoring-Systemschlielich mit einer integrierten Sowarever-

    teilung und einem Updatemechanismus r dieeigenen Komponenten unter die Arme.

    SystemarchitekturAu den ersten Blick berrascht die Architekturvon Opensmart nicht sonderlich: Wie blich,sammeln verteilte Agenten au enternten Ma-schinen Statusinormationen oder Perormance-daten und melden sie einer Zentrale weiter. DieEmpangskomponente heit hier Collector-Ser-ver, nimmt die Da-ten via CGI-Skriptentgegen und legt

    sie in einer zentralenDatenbank ab. DerenInhalt bewertet undprsentiert schlie-lich eine Browser-GUI.Fr die Kommuni-kation mit seinenAgenten verwendetder Opensmart-Ser-ver XML over HTTPoder auch HTTPS.

    Wenn nicht alle

    berwachten Rechner direkt zum Opensmart-Server berichten knnen beispielsweise weilsie in einem anderen Subnetz oder einer DMZzu Hause sind , kann auch ein HTTP(S)-Proxydie Vermittlung bernehmen (Abbildung 1).Mit dem zweiten Blick allerdings stt man aueinige unerwartete und ntzliche Eigenheitenvon Opensmart, die besonders die Administra-tion erleichtern.

    Config-ServerDazu zhlt ein so genannter Config-Server, derdie zentrale Verwaltung von Konfigurationsda-teien der Agenten bernehmen kann. Er prvia HTTP-HEAD-Request, ob die au dem

    Server zentral hinterlegte Agent-Konfigurationneuer als die lokale ist, und berschreibt sie vorOrt gegebenenalls mit der jngeren Versionvom Server.Den Filetranser bernimmt ein HTTP-Ser-ver (Apache), von dem sich der Agent mittelsHTTP-GET bedient. Symlinks machen es da-bei mglich, dass viele Agents au ein und die-selbe Config-Datei zugreien, was den Pflegeau-wand von Fall zu Fall dramatisch verringert.

    Deployment-Server

    Neben dem Config-Server existiert als weitereBackend-Funktion ein Deployment-Server,der die Agents mit einer aktuellen Version derOpensmart-Clientsoware versorgt. Dies er-leichtert insbesondere Updates in Umgebun-gen mit vielen Agenten. Auch hier wird nurvia HTTP(S) kommuniziert. Abbildung 2zeigtschematisch den Ablau. Um das Soware-Re-pository des Deployment-Servers selbst zu ak-tualisieren, gibt es ein Kommandozeilentool

    Intranet InternetOpenSMART-Server

    XML over HTTP XML over HTTPS

    Abbildung 1:Die Agenten bermitteln dem zentralen Server ihre Daten in XML-Form via HTTP oder HTTPS.

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    29/125

    Projekte

    www.linuxtechnicalreview.de3

    whrend der Installationsvorbereitung Gedan-ken zur Ressourcenausstattung des Opensmart-Servers machen. Ausschlaggebend dar ist dieAnzahl der Agenten, ihr Aurufintervall und dieGesamtzahl der Checks.

    FrontendDie Browser-GUI des Opensmart-Serversprsentiert die Ergebnisse aller Agenten un-ter [http://Server-IP/cgi-bin/monitorgui.cgi]bersichtlich (Abbildung 3). Die Darstellungberuht au den Daten, die der Collector-Servervon den Agents erhalten und in der Datenbankabgelegt hat. Dabei sind verschiedene Ansichtenmglich, wie beispielsweise Alle Fehler oder

    gefiltert nach bestimmten Hosts oder Checks.Grundstzlich unterscheidet Opensmart dabeizwischen den Zustnden NORMAL, INFO,WARNING, ERROR und FATAL. Au-grund dieser Klassifizierung kann dann entwe-der eine Fehlerbehandlungsroutine au Client-seite oder eine Notiy-Regel (au Serverseite)ausgehrt werden.Die Option Konfig der GUI dient dem Editie-ren der Filter- und Notiy-Regeln. Eine Notiy-Regel stt als Reaktion au bestimmte Ereig-nisse definierte Aktionen an und benachrichtigt

    damit beispielsweise den Admin ber Strun-gen. Opensmart lieert einige vorgeertigte No-tiy-Skripte bereits mit.Hinter dem Reiter Deployment verbirgt sichder Zugang zur Konfiguration der gleichnami-gen Komponente. Hier lassen sich Updates reinzelne Agents planen. Anstehende Ausliee-rungen symbolisiert eine gelbe Ampel, ehlge-

    namens osmart-updater, das von opensmart.sourceorge.net wahlweise den aktuellsten Tes-ting- oder Stable-Tree der Agent-Soware her-unterldt und r die Verteilung bereitliegt.

    Webserver-KonfigurationDa sich sowohl Config- als auch Deployment-

    Server r den Filetranser der Funktionen einesWebservers bedienen, mssen sie auch in des-sen Konfiguration bedacht werden. Ein Beispieldar zeigt Listing 1. Sind mehrere Rechner zuberwachen, empfiehlt es sich au jeden Fall,mod_perl zu verwenden (das jedoch per De-ault deaktiviert ist). Damit lsst sich wertvolleCPU-Zeit sparen. Auch sollte sich der Admin

    Server Client

    Config-Version?

    neuereConfig

    Daten

    Abbildung 2:Ist die auf dem Server hinterlegte Konfiguration fr den

    Agenten aktueller als die lokale, so besorgt sich der Agent selbststndig

    die neuen Einstellungen.

    01# osmart.apache.conf

    02

    03 ServerName osmart.company.com04 ErrorLog /var/log/apache/osmart-error.log

    05 CustomLog /var/log/apache/osmart-access.log

    common

    06

    07 DocumentRoot /home/osmart/htdocs

    08 ScriptAlias /cgi-bin/ /home/osmart/cgi-bin/

    09

    10 Options +ExecCGI +FollowSymlinks

    11 Order allow,deny

    12 Allow from all

    13

    14

    15

    16 Order allow,deny

    17 Allow from all18 Header set Cache-Control no-cache

    19 Options +Indexes

    20

    21

    22

    23 Order allow,deny

    24 Allow from all

    25 Header set Cache-Control no-cache

    26 Options +Indexes

    27

    28

    29

    Listing 1: Apache-Konfiguration

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    30/125

    Projekte

    www.linuxtechnicalreview.de 4

    Au der Downloadseite [1]finden sich die ol-genden drei Tar-Archive:n opensmart-server-version.tgz: Beinhaltet

    das Server-Paket von Opensmart.n opensmart-docs-version.tgz: Dokumenta-

    tion r Server und Checks, die au dem Ser-ver lauen.

    n opensmart-agent-version.tgz: Dieses Tar-File beinhaltet den Opensmart-Agenten mitallen Built-In-Checks.

    Server-InstallationNach dem Entpacken wird die Server-Installa-tion durch das Kommando export OSMART_HOME=$HOME /usr/bin/perl ./source/server/

    install_server $OSMART_HOME gestartet.Die Variable $OSMART_HOME bestimmtdabei das Zielverzeichnis der Server-Installa-tion. Hier ist es das Home-Verzeichnis des Be-nutzers, der die Installation startet.Zu beachten ist, dass der Benutzer, unter des-sen Kennung Apache lu, Schreibrechteau die Logdatei $OSMART_HOME/logs/opensmart.log haben muss. Fr die Konfi-guration der Datenbank liegen Create-Skripteunter $OSMART_HOME/install/createdb_RDBMS_.sql. Das Schema lsst sich mit dem

    Beehl cat createdb_mysql-1.0.sql | mysql -uosmart -p 'geheim' osmart anlegen. Die Kon-figurationsdatei, die der Opensmart-Server rdie Datenbank-Verbindung bentigt, liegt unter$OSMART_HOME/etc/opensmart.db.config

    schlagene eine rote. Eine grne Ampel steht r

    eine erolgreiche Aktualisierung.Der Menpunkt Reporting schlielich er-mglicht die Auswertung von Daten, welche dieAgenten gelieert haben. Diagramme knnenetwa Load-Kurven, die Anzahl lauender Pro-zesse, die Auslastung von Swapspace oder Fest-platten darstellen. Die Vergbarkeit von Ser-vices lst sich momentan noch nicht auswerten,das ist aber au jeden Fall r eine der nchstenReleases geplant.

    Systemvoraussetzungen

    Opensmart stellt keine hohen Ansprche. Alles,was au dem zu berwachenden Server bentigtwird, ist ein Perl-Interpreter in Version 5.005oder hher und etwa 1 MByte Speicherplatz rdie Installation des Ag.ents.Au der Serverseite braucht Opensmart einenApache-Webserver, dessen mod_perl Funk-tion (optional), die Perl-Module XML::Simple,Chart::Lines und DBI sowie eine Datenbank.Die Datenbank nimmt alle Werte au. Darkommen derzeit MySQL (ab Version 4.1), Post-greSQL, Oracle oder DB2 in Frage.

    Abbildung 3:Default-Ansicht der Monitor-GUI.

    01# For MySQL Databases:

    02$data_source="DBI:mysql:osmart";

    03

    04# 2. Username and Password.

    05$user_name = "osmart";

    06$passwd = "geheim";

    07

    08# 3. Opensmart uses auto_commit

    09$has_autocommit=1;

    Listing 2: Datenbank-Konfigu-

    ration fr MySQL

    01export $OSMART_HOME=$HOME

    02

    03# Notify-Server alle 5 Minuten

    ausfuehren

    04* */5 * * * $OSMART_HOME/bin/

    notifysrv

    05

    06# archive_errors jede halbe Stunde

    ausfuehren

    07* */30 * * * $OSMART_HOME/bin/

    archive_arrors

    Listing 3: Crontab-Eintrge

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    31/125

    Projekte

    www.linuxtechnicalreview.de5

    im Browser etwas anderes zu lesen sein als Youhaven't sent any data, dann msste man imLogfile des Webservers oder auch in der Open-smart-Protokolldatei ($OSMART_ROOT/logs/opensmart.log) nach Hinweisen suchen.Zum Abschluss der Installation werden nochzwei Cronjobs bentigt. Der erste, notiysrv,pr in der Datenbank, ob sich eine Statusnde-rung ergeben hat. Je nachdem triggert eine No-tiy-Regel dann ein Kommando wie notiy_by_

    bereit. Im Beispiel wird eine MySQL-Datenbankverwendet (Listing 2). Fr andere Datenbankenfinden sich jeweils geeignete Beispiele im Ver-zeichnis $OSMART_HOME/etc/opensmart.db.config.example.

    Test des ServersEin Test des Collector-Servers [http://Ser-ver-IP/cgi-bin/collectorcgi.pl]zeigt, ob der Open-smart-Server grundstzlich unktioniert. Sollte

    001

    002

    003 004

    005

    006 http://192.168.1.1/cgi-bin/

    collectorcgi.pl

    007

    008

    009 http://192.168.1.1/conf/

    010

    011

    012 http://192.168.1.1/cgi-bin/

    deploymentcgi.pl

    013

    014 015

    016

    017

    018

    019

    020 .*

    021 WARNING

    022 85

    023 PERCENT

    024

    025

    026 .*

    027 ERROR028 95

    029 PERCENT

    030

    031

    033

    034 /mnt/tmp

    035 NORMAL

    036 105

    037 PERCENT

    038

    039

    040

    041

    042 043

    044 squid

    045 ERROR

    046

    048 sudo /etc/init.d/squid restart

    049

    050

    051 sshd

    052 WARNING053

    054

    055 xinet

    056 ERROR

    057

    058

    059 crond

    060 ERROR

    061

    062

    063

    064 066

    067

    068 /home/opensmart/bin/uptime

    069 uptime

    070 WARNING

    071

    072

    073

    074

    075 /home/opensmart/bin/checkfan

    Listing 4: Agent-Konfiguration

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    32/125

    Projekte

    www.linuxtechnicalreview.de 6

    mance ntig: Tte man dies nicht, verlnger-ten sich nach und nach die Antwortzeiten desFrontends. Bei einer groen Anzahl von Agen-ten, lassen sich die einzelnen Opensmart-Backend-Komponenten auch au verschiedeneRechner verteilen.

    Agent installierenDer Opensmart-Agent wird, hnlich wie derServer, durch ein Installationsskript augespielt:

    mail, notiy_by_sms oder auch notiy_by_rss. An dieser Stelle kann der Admin aber aucheigene Skripte r die Alarmierung hinterlegen.Es hat sich als sinnvoll erwiesen, den Notiy-Server alle 5 Minuten durch Cron aushren zulassen (Listing 4).Der zweite Cronjob, archive_errors (Listing3), hat die Augabe, in regelmigen Abstndendie Inhalte von bestimmten Datenbanktabellenzu archivieren. Das ist aus Grnden der Peror-

    076 fan

    077

    078 079

    080

    081

    082

    083

    084 0.0.0.0

    085 22

    086 WARNING

    087

    088

    089

    090 0.0.0.0

    091 3128092 ERROR

    093

    094

    095

    096

    097

    098

    099 1

    100 6

    101 WARNING

    102

    103

    104 105 15

    106 8

    107 ERROR

    108

    109 a

    110

    111

    112

    113 Verfuegbarkeit-www.linux-magazin.

    de

    114 192.168.1.1

    115 3128

    116 GET http://www.linux-magazin.de

    HTTP/1.0

    117 Linux New Media AG118 ERROR

    119 ping -c 4 www.google.de

    120

    121

    122

    123

    124

    125

    126 60

    127 WARNING

    128

    129130

    131 90

    132 ERROR

    133

    134

    135

    136

    137

    138

    139

    140 md0

    141 ERROR

    142 143

    144

    145 md1

    146 ERROR

    147

    148

    149

    150

    152

    153

    Listing 4: Agent-Konfiguration Fortsetzung

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    33/125

    Projekte

    www.linuxtechnicalreview.de7

    Apache-Webserver. Eine vollstndige Tag-Ree-renz r den Agenten ist unter [2]zu finden.In unserem Beispiel wird das Betriebssystem(hier Debian Sarge) sowie die Applikation Squid[3]berwacht. Aus der Liste der Built-In-Checks[4]werden dar die olgenden ausgewhlt:n uptime: Hat der Proxyserver unerlaubter-

    weise gebootet (Listing 4, Zeile 67-71)?n disk: Filesysteme ab einem Fllgrad von

    85 Prozent werden augrund der Konfigura-tion mit dem Status WARNING dargestellt,ab 90 Prozent wird ein ERROR gemeldet(Zeile 18-39). Wichtig: Wird ein Filesystemwie etwa Ext3 verwendet, so ist zu berck-sichtigen, dass meistens die Option Reser-

    ved-Block-Count nicht au Null steht undsich somit die Ausgabe von d von derRechnung Gesamtkapazitt - Benutzer-Spei-cher unterscheidet.

    n proc: Elementare Betriebssystem-Prozessesowie der Squid-Prozess werden berwacht(Zeile 42-62).

    n logs: Regulre Ausdrcke filtern System-und Squid-Logfiles au Fehler.

    n load: Steigt der Load-Average des Systems,kann unter Umstnden eine Beeintrchtigungdes Dienstes die Folge sein ( Zeile 96-109).

    n

    lxswraid: Dieser Check signalisiert md-

    export OSMART_HOME=$HOME /usr/bin/perl ./source/agent/install_agent $OSMART_HOME.Es ist darau zu achten, dass dieses Kommandomit den voll qualifizierten Angaben zum Perl-Interpeter augeruen wird, da alle Check-Skripte diesen Interpreter in ihre Hash-Bang-Zeile bernehmen. Gestartet wird der Agentdurch den Auru von $OSMART_HOME/bin/osagent. Im Moment ist dies jedoch noch nichtsinnvoll, da vorher eine Konfigurationsdatei zuerstellen ist. Spter wird der Agent durch einenCrontab-Eintrag alle 5 Minuten augeruen.

    Konfiguration des Agenten

    Im Gegensatz zur Installation erordert die Er-stellung und Pflege der Konfigurationsdatei($OSMART_HOME/etc/osagent.con.xml)r den Agenten mehr Auwand. In unseremBeispiel wird die Datei zuerst au dem Con-fig-Server platziert. Listing 4 beschreibt un-ter anderem den globalen Konfigurationsteildes Agents (Zeile 4-14), in dem die IP-Adresse192.168.1.1 den Opensmart-Server darstellt.Hier knnte anstatt des Protokolls HTTP auchHTTPS oder eine Authentifizierung des Clientsvia Basic-Auth konfiguriert werden. Vorausset-

    zung dar ist ein entsprechend konfigurierter

    01

    02[ .. ]

    03

    04

    05

    06 /var/log/messages

    07

    08 10

    11 300

    12 ERROR

    13

    14

    15

    16

    17 100

    18 NORMAL

    19 syslogd.*restart

    20 session.*closed.*for.*user

    21 session.*opened.*for.*user

    22 last message repeated \d+ times

    23 [ .. ]

    24

    25

    26

    28

    29 20030 WARNING

    31 .*

    32

    37 [ .. ]

    38

    39 [ .. ]

    40

    Listing 5: Logfiles filtern

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    34/125

    Projekte

    www.linuxtechnicalreview.de 8

    der ein nicht unktionshiger Squid oder

    eine ausgeallene Internetverbindung inrage.Ein Kommando im RUNIF_CUSTOM-Tagwie ping -c 4 www.google.de kann die Fall-unterscheidung treffen. Wird eine RUNIF-Bedingung r einen Check verwendet undtrif sie nicht zu, so wechselt im Frontend derStatus von ACTIVE au INACTIVE.

    SelbstheilungWie die RUNIF-Tags, ist auch das Tag FIX-CMD in allen Konfigurationsbereichen ver-wendbar. Jeder Built-In-Check kann so versu-

    chen, eine Fehlerbehebung zu starten, sobalddas Check-Ergebnis ungleich NORMAL ist.Listing 4Zeile 48 zeigt ein FIXCMD-Tag rden Proc-Check. Lu der Prozess Squid nichtmehr, so wird versucht, diesen durch ein Kom-mando (FIXCMD) wieder zu starten. In unse-rem Beispiel wre dies der Beehl sudo /etc/init.d/squid restart.

    Logfiles durchstbernEines der hilreichsten Tools aus OpensmartsWerkzeugkiste ist der Check LOGS. Er er-mglicht es, Logfiles zeilen- oder blockweise

    au das Vorhandensein oder Fehlen bestimmterMuster zu durchsuchen. Listing 5beschreibt dasLOGS-Element anhand des Squid-Proxyser-ver-Beispiels. Zum einen wird das System-Log-file /var/log/messages gepr, zum anderen/var/log/squid/cache.log, in dem alle Squid-relevanten Meldungen stehen.Doch zunchst zum LOGFILE-Element von/var/log/messages (Zeile 5-33). Unterhalbdieses Elements sind zwei Logfilter-Klassen de-finiert. Alle Eintrge, au die Filter der Klasse 1nicht zutreffen (Zeile 16-24), werden von Klasse

    2 erasst (Zeile 28-32). Dabei wird die Reihen-

    Devices im Zustand degraded, nicht seltenaugrund eines Plattenausalls (Zeile 137-148).

    n sockets: berwachung von Sockets im Sta-tus LISTEN (Port 22/ssh, Port 3128/squid).Ein Beispiel ist in Zeile 81-94 zu sehen.

    n swap: Pr anhand von Schwellwerten(hnlich wie Disk) den Fllgrad des Swap-Speichers (Zeile 124-134).

    n webapp: Sendet eine HTTP-Anrage andie Adresse www.linux-magazin.de und wer-tet die Rckgabe durch regulre Ausdrcke() aus (Zeile 111-121).

    Conditional-Tags

    Um Checks nur unter bestimmten Bedingungenablauen zu lassen, stehen so genannte RUNIF-Tags (conditional checks) zur Vergung, diezusammen mit jedem anderen Test verwendbarsind. Sie bewirken, dass der Agent Checks nurin bestimmten Zeitenstern startet (RUNIF_TIME), nur dann aushrt, wenn ein definiertesVerzeichnis existiert (RUNIF_DIR), eine be-stimmte Zeitspanne seit der letzten Aushrungverstrichen ist (RUNIF_INTERVAL) oder einbenutzerdefinierter Beehl den Returncode 0lieert (RUNIF_CUSTOM). Diese Konditionen

    sind in vielen Fllen sehr ntzlich, zum Beispiel:n RUNIF_TIME: Eine Datenbank wird inder Zeit zwischen 02:00 und 03:00 Uhr mor-gens r ein Offline-Backup gestoppt. An-sonsten soll der Datenbankprozess allerdingsberwacht werden. Dieses Zeitenster wird ineiner Cron-hnlichen Syntax im RUNIF-Tag verpackt: * 03-02 * **

    n RUNIF_DIR: Ein Heartbeat-Cluster (Ak-tiv/Passiv) arbeitet mit Shared Storage, derimmer vom aktiven Knoten gemountet wird.Nur au diesem Knoten lu dann auch der

    Applikations-Prozess mysql-sae. Mit Hileeiner RUNIF_DIR-Bedingung (zum Bei-spiel /mnt/san/lost+ound) kann nun der Agent est-stellen, ob sein Knoten der aktive ist und ober also hier auch nach dem Applikations-Pro-zess schauen muss.

    n RUNIF_CUSTOM: Um die Funktion un-seres Proxyservers zu testen, wird ein HTTP-Request an www.linux-magazin.de gesendet.Lieert dieser Request nicht das gewnschteErgebnis (nmlich die HTML-Seite des Li-

    nux-Magazins), so kme als Ursache entwe-

    Groe Erleichterung beim Umgang mit XML-

    Dateien schafft das Tool xmllint [6]. In vielen

    Distributionen ist dieser XML-Parser bereits als

    Paket enthalten. Ein Aufruf von xmllint -noout

    osagent.conf.xml vermittelt sofort eine ber-

    sicht ber syntaktische Fehler. Auerdem ms-

    sen Umlaute in der Konfigurations-Datei XML-

    gem maskiert werden, da sonst der Parser

    des Agents dies als Fehler darstellt.

    Tipp zum Editieren der Konfigu-rationsfiles

  • 7/25/2019 LinuxTechnicalReview02 Monitoring

    35/125

    Projekte

    www.linuxtechnicalreview.de9

    olge der Verarbeitung der Logfilter-Elementedurch die Prioritt beeinflusst: Eine Logmel-dung (zum Beispiel eine Syslog-Zeile) wird zu-erst gegen die Logfilter-Klasse mit der gerings-ten Prioritt gepr, anschlieend gegen die mitder nchsthheren Prioritt und so weiter. Da-bei knnen so viele Logfilter-Elemente wie ntigdefiniert werden.Innerhalb des LOGFILTER-Elements werdenmit den REGEX-Tags die regulren Ausdr-cke im Perl-Stil ormuliert, die darber entschei-den, ob die Logzeile den Filter passiert. Eine Zu-sammenassung von gngigen Perl-Regex-Aus-drcken ist unter [5]zu finden. Die Unterteilungder REGEX-Ausdrcke in mehrere LOGFIL-

    TER-Klassen hat den Vorteil, dass eine Logaus-gabe A als NORMAL gilt, whrend die Log-ausgabe Bals WARNING interpretiert wirdund eine Logausgabe C als FATAL.Eine weitere Funktion von LOGS bietet dieMAXAGE-Klasse (Zeile 10-13): Ist der letzteschreibende Zugriff au das berwachte Log-file lter als xMinuten, so wird ein Fehlerstatusgese