====== Sysstat ====== * Urspruenglicher Autor: Dirk Deimeke * Urspruengliches Datum: 30.12.2011 Monitoring ist eine der Kernaufgaben in der Administration. Warum und wie viel man ueberwachen sollte, ist in dem - meiner Meinung nach - besten Artikel zum Thema beschrieben: [[http://morgajel.net/2010/06/30/755|The Philosophy of Monitoring]]. Wir werden das sicherlich hier auch noch einmal ausfuehrlich thematisieren. Es gibt eine grosse Menge an Open Source Monitoring-Loesungen, die verschiedene Anwendungszwecke abdecken. Nur um einmal ein paar Namen zu nennen, fuehre ich hier [[http://www.cacti.net/|Cacti]], **[[http://munin-monitoring.org/|Munin]]**, [[http://nagios.org/|Nagios]], **[[http://www.icinga.org/|Icinga]]**, [[http://www.zabbix.com/|Zabbix]], **[[http://oss.oetiker.ch/smokeping/|Smokeping]]**, Centreon und viele andere mehr (die fett gedruckten setzen Ramon und ich fuer unsere Server ein). In die gleiche Richtung, wenn auch nicht ganz, stossen die [[http://sebastien.godard.pagesperso-orange.fr/|SYSSTAT-Utilities]]. Die Utilities gibt es für nahezu jedes Unix-artige Betriebssystem und sind vermutlich bei allen Linux-Systemen in den Standard-Paketquellen enthalten. Es gibt einen [[http://www.linux-magazin.de/Heft-Abo/Ausgaben/2008/09/Prozess-auf-Takt?category=0|guten Übersichtsartikel zu Sysstat]] im Linux-Magazin. {{:foo_linuxloadsar.png?nolink|}} Fuer mich besonders wichtig ist das "System Activity Reporting", bei Sysstat uebernimmt die Aufgabe das Programm ''sar''. Es bereitet die Daten, die durch den "System Activity Data Collector" (''sadc'') gesammelten Daten für Menschen lesbar auf. Der Datensammler ''sadc'' liest eine "lange" Reihe von aktuellen Systemwerten aus dem virtuellen [[https://secure.wikimedia.org/wikipedia/de/wiki/Procfs|proc]]-Dateisystem und schreibt sie in eine Binaerdatei. Da das nur sehr wenig Last erzeugt (nahezu gar keine), gibt es keinen Grund, den Datensammler nicht auf jedem installierten Linux oder Unix mitlaufen zu lassen. Die gesammelten Werte sind bei der Fehleranalyse oder der nachtraeglichen Untersuchung von Performance-Problemen enorm hilfreich. Doch jetzt einmal "Schritt fuer Schritt". Installiert wird Sysstat ueber das Paketmanagement oder man uebersetzt es sich durch den "klassischen Dreisatz" - ''./configure ; make ; make install'' - selber. Unter Debian-Systemen (und Ubuntu) muss in der Datei ''/etc/default/sysstat'' der Parameter ''ENABLED'' auf ''true'' gesetzt werden, sonst werden die Daten nicht gesammelt. Die Datensammlung selber passiert via ''cron''. In der Datei ''/etc/cron.d/sysstat'' finden sich die folgenden Zeilen:# The first element of the path is a directory where the debian-sa1 # script is located PATH=/usr/lib/sysstat:/usr/sbin:/usr/sbin:/usr/bin:/sbin:/bin # Activity reports every 10 minutes everyday 5-55/10 * * * * root command -v debian-sa1 > /dev/null && debian-sa1 1 1 # Additional run at 23:59 to rotate the statistics file 59 23 * * * root command -v debian-sa1 > /dev/null && debian-sa1 60 2 Dass ''debian-sa1'' benutzt wird, ist eine Besonderheit von Debian, ansonsten heisst das Programm einfach ''sa1''. Der erste Cron-Eintrag sorgt dafuer, dass alle 10 Minuten ein Satz von Werten aufgezeichet wird. Das reicht, um einen Ueberblick ueber das System zu haben. Wenn man eine hoehere Aufloesung moechte, ist das zu aendern. Der zweite Eintrag rotiert die Logdateien, bei Debian liegen sie unter ''/var/log/sysstat''. Welche Werte alle aufgezeichnet werden, zeigt ein ''sar -A'', fuer einen Ueberblick, empfehle ich aber das Java-Programm [[http://sourceforge.net/projects/ksar/|kSar]], das die Daten grafisch aufbereitet. Das oben im Artikel angezeigte Bild ist damit entstanden. Den kompletten Report fuer den gestrigen Tag von unserem Webserver findet Ihr in der PDF-Datei {{:bar.pdf|}} (3.5 MB). [[adminstoriesartikel|Zurück zur Uebersicht]]