Im ADMIN-Magazin (02/14) haben wir kürzlich sar als Tool für alle Arten von Performancestatistiken vorgestellt. Es sammelt und protokolliert ein breites Spektrum an Messwerten, gibt sie auf der Kommandozeile aus und kann sie mit Hilfe zusätzlicher Software auch in Grafiken verwandeln. Doch sar ist nicht alternativlos. Ein weiteres Tool geht sogar noch ein Stück darüber hinaus: Der Performance Co-Pilot PCP.
Während sar aus dem Solaris-Universum stammt, kommt PCP ursprünglich aus der SGI-Welt. Inzwischen ist es aber auch für Linux, MacOS, Solaris, AIX, IRIX und sogar Windows verfügbar. Seine Architektur orientiert sich am Client/Server-Modell: Es gibt einersreits dezentrale Kollektoren, die vor Ort Performancedaten aus verschiedenen Quellen einsammeln - die Performance Metrics Domain Agents (PMDAs). Jede Quelle gehört zu einer so genannten Domäne, innerhalb derer sich alle Datenlieferanten dieselben Zugriffsmethoden und Semantiken teilen. Domänen können etwa der Linux Kernel, eine Datenbank, ein Service oder eine Applikation sein. Alle Agents beliefern einen oder mehrere Performance Metrics Collector Daemons (pmcd).
Den Quellen stehen andererseits Monitore gegenüber, die die gesammelten Daten mit Zeitmarken versehen ausgeben. Die Daemons und Monitore lassen sich bei Bedarf beliebig auf verschiedene Rechner verteilen - das erlaubt das Remote Monitoring und die Skalierung. Die mitgelieferten Agents stellen unter Linux schon fast Tausend verschiedene Messwerte bereit, der Anwender kann aber auch eigene Agents programmieren. Was genau für Messwerte abfragbar sind, verrät das Kommando pminfo, das die Namen aller Metriken listet. Die Werte für eine oder mehrere einzelne Metriken liefern pmval oder pmdumptext (per Default im Sekundenabstand). Dabei können beliebige Metriken in einer Ausgabetabelle kombiniert werden. Schließlich erzeugt pmstat einen groben System-Überblick.
Alle Messwerte sind nicht nur ad hoc abfragbar, sondern können für eine nachträgliche Analyse in Logs gespeichert werden. Installiert man das optionale GUI-Package von PCP, lassen sich die Messwerte aus den Logs oder aus dem Live-Betrieb auch zu Charts verarbeiten. Eine ganze Anzahl fertig konfigurierter Charts gehören zum Lieferumgfang, eigene sind leicht zu erstellen. Dabei lassen sich verschiedene Charts so synchronisieren, dass sie dieselbe Zeitachse verwenden.
Kurz: Mit einer ähnlichen Intention wie sar geht PCP in Sachen Skalierbarkeit und Erweiterbarkeit, beim Remote Monitoring und auch beim grafischen Aufbereiten der Messdaten noch einen Schritt weiter. Außerdem unterstützt es mehr Plattformen.