Exchange Leistungstest

Wenn Sie ein System zusammengestellt, installiert und angeblich korrekt installiert haben, dann sollten Sie trotzdem einen Minimalcheck auf die Geschwindigkeit des Systems durchführen. Oftmals sind alte Treiber, falsche Steckplätze oder Einstellungen und einiges mehr Ursache für eine mangelnde Performance. Daher gibt es auch hier das neue System einem Test zu unterziehen. In meiner bisherigen Tätigkeit ist es durchaus vorgekommen, dass von mehreren identischen Server ein System sehr viel langsamer war als seine identischen Brüder. Auch 100 MBit Netzwerkkarten an einem 100 MBit Switch können im falschen PCI-Slot sehr schnell auf wenige MBit ausgebremst werden.

Hier gilt es generell zwischen zwei TestMöglichkeiten zu unterscheiden:

  • Nach der Installation/vor dem Produktionsbetrieb
    Wichtige Systemkomponenten wie Netzwerk und Speichersubsystem können und sollten auf einen sicheren, stabilen und schnellen Betrieb getestet werden.
  • Im Produktionsbetrieb
    Auch wenn Exchange im Betrieb ist, sollte die Leistung des Systems überwacht werden. Dies kann passiv über Kontrollmechanismen geschehen (Exchange überwachen und kontrollieren). Aber auch aktiv kann das System kontrolliert werden, z.B. durch Testnachrichten und der Kontrolle der Laufzeiten.
    Es ist zu überlegen, in wie weit die Tests vor dem Produktionsbetrieb nach einer Änderung der Konfiguration (z.B. Service Pack, Treiberupdate, Speicher, Prozessor und Festplattenerweiterungen) erneut durchgeführt werden.

Allerdings reicht es nicht zu müssen, sondern die Messmethoden und Ergebnisse wollen sorgfältig ausgewählt und interpretiert werden. Wie immer gilt aber beim müssen der Spruch der Elektrotechnik: "Wer misst, miss meistens Mist". Allein der Aufruf einer genannten Programms ergeben keine nutzbaren Werte, sondern die Interpretation und die EinsatzUmgebung haben einen großen Anteil an der Nützlichkeit einer Messung.

Tests zwischen Installation und Produktion

Nach der Installation ist die Korrektheit der Installation zu kontrollieren. Dies betrifft sowohl Einzelkomponenten als auch das Gesamtsystem. Die Werte der Einzelsysteme erlauben einen Rückschluss auf die geeignete Konfirgration. Entsprechend den Überlegungen für das Design (Siehe Exchange Sizing) werden bestimmte Performancedaten erwartet.

Sofern mehrere Server existieren oder vom Hersteller entsprechende Vergleichwerte genannt werden, sind direkte Vergleiche interessant. Diese Werte können auch Später für Updates, Installation von Service Packs, neuer Treiber oder Erweiterungen der Hardware oder neue Server herangezogen werden.

Festplattenperformance

Durch einen einfachen Test lässt sich die Performance der Festplattensubsysteme unter Windows testen. Diverse Freewaretools erlauben hier einen einfachen Geschwindigkeitstest. Beim Betrieb unter Windows ist wichtig, dass die Testdateien entsprechend groß sind, da sowohl das Betriebssystem als auch die Controller und Festplatten mittlerweile recht große Cachespeicher haben. So sind RAID-Controller mit 128 MByte Cache im "Write Back"-Mode keine Seltenheit. Beim Einsatz in großen Servern und SAN Umgebungen sind sogar mehrere Gigabyte als Cachespeicher üblich.

Wichtig ist bei all den Tests auch die Schreibmuster. Wenn Sie wissen, wie die Exchange Datenbank arbeitet (siehe Datenbankgrundlagen) können Sie die Festplatten und Raids entsprechend auslegen und die Partitionen entsprechende formatieren (Stichwort Stripegröße und Clustegröße)

  • DT
    Das kleine und sehr feine Testprogramm DT eines Compaq Mitarbeiters eignet sich, um unter Windows direkt auf Festplatten bestimmte Schreib- und Lesemuster zu simulieren und entsprechend Vergleiche anstellen zu können. DT eignet sich aber auch zum Testen von Bandlaufwerken und seriellen Schnittstellen oder zum Anlegen von größeren Dummydateien, z.B. als Festplattenplatzreserve.
    Siehe dazu auch Produkte: DT Performance Messung
  • HDBENCH (DOS) und HDBENCHW (Win32)
    Diese beiden Programme des HEISE Verlags werden genutzt, um die reine Festplattenperformance zu ermitteln und anzuzeigen. Nur wenn auf den Festplatten keine Partitionen sind, werden auch Daten geschrieben
    Beide Programme sind Kommandozeilenversionen. Die Ergebnisse können bei Einzelfestplatten mit den Messergebnissen in der Zeitschrift C't verglichen werden.
  • SPECsfs
    Dieser im Dateiserverbereich und NAS-Umfeld gerne zitierte Test prüft den Durchsatz des Systems als Dateiserver mit verschiedenen Zugriffsmustern und ist eher ein kombinierter Test, der Neben der Netzwerklast auch die Dateiserverleistung und das Festplattensystem misst.
  • IOMeter
    Diese Programm von Intel/OpenSource erlaubt ebenfalls die Festplatten Subsysteme zu müssen
    http://www.intel.com/design/servers/devtools/iometer/
    http://sourceforge.net/projects/iometer/
  • IOZone
    http://www.iozone.org/
  • CrystalDiskMark
    http://crystalmark.info/software/CrystalDiskMark/index-e.html

Es macht keinen Sinn Mess- und Erfahrungswerte zu veröffentlichen, da Sie nur bei Kenntnis der Testsysteme verwertbar sind. Ich kann ihnen aber als Dienstleistung das Sizing, die Installation und den Test und die Kontrolle anbieten (Siehe Net at Work). Nur eines mit auf den Weg: Ein RAID-1 ist manchmal doppelt so schnell wie ein RAID-5. zwei gespiegelte große Festplatten könnten daher besser und günstiger sein als ein RAID-5 aus drei kleineren Festplatten.

Netzwerkperformance

Auch die Netzwerkkarten sind für Exchange essentiell für die Funktion und bei Connector Servern ist auch die Anbindung und der Durchsatz wichtig. Ist die 100MBit Karte wirklich gut am Hausnetzwerk angeschlossen und ist die Verbindung stabil, oder ist das Kabel vielleicht zu lang oder das Autodetect der Komponenten greift nicht sauber.

Daher ist es wichtig, auch die Performance der Netzwerkkarte zu müssen. Dies ist natürlich mit einem einfachen "XCOPY" möglich, aber indirekt wird damit auch die Performance des Serverdienstes mit einbezogen. Selbst mehrmaliges Kopieren kleiner Daten aus dem Cache verfälschen die Daten, da trotzdem der Serverdienst und der gesamte Overhead der Kommunikation und der Client involviert sind. Gefragt sind daher Programme, die direkt über das Protokoll (z.B.: TCP/IP über Winsock) arbeiten und den Durchsatz müssen

  • NETIO
    Diese Portierung des Unix-Tools setzt wahlweise auf TCP oder NetBIOS auf. Ein System dient als Server und ein anderes als Client. Aufgrund der reinen Netzwerkkommunikation wird der Netzwerkkartentreiber und das Netzwerk exzessiv mit verschiedenen Blockgrößen getestet. Damit ist es problemlos möglich, 100MBit Karte voll auszulasten und selbst Gigabitkarten mit über 300MBit zu betreiben. Allerdings sind nur zwei System involviert, so dass das langsamste den Takt vorgibt und einschneller Client oder ein zweiter Server notwendig ist.
  • PERFORM3
    Dieses Programm gibt es schon seit den alten NetWare Zeiten und dabei wird über eine Dateifreigabe gearbeitet. Mehrere Clients starten das Programm und der erste Client koordiniert den Ablauf. Alle Clients lesen immer wieder die gleiche Testdatei mit unterschiedlichen Paketgrößen. So wird recht gut der Serverdienst und indirekt die Gesamtperformance bezüglich SMB, RPC und TCP/IP ermittelt.
  • NETBENCH
    Von ZIFF Davis gibt es das bekannte NetBench, welches auf ähnliche Weise die Performance eines Servers ermittelt.
  • SPECsfs
    Dieser im Dateiserverbereich und NAS-Umfeld gerne zitierte Test prüft den Durchsatz des Systems als Dateiserver mit verschiedenen Zugriffsmustern und ist eher ein kombinierter Test, der Neben der Netzwerklast auch die Dateiserverleistung und das Festplattensystem misst.
  • RPCPING
    RPCPING ist kein Tool zur Messung von Performance oder Durchsatz, sondern ein Programm um die Funktion von RPC zu prüfen und eignet sich daher als Dauertest, (z.B. im Stabilität und Zuverlässigkeit auch über WAN-Leitungen) etc. zu kontrollieren. Es ist im Verzeichnis Support der Exchange 2000 CD bzw dem Service Pack enthalten.

Es kann durchaus interessant sein, bei den Messungen per SNMP oder Webbrowser den Switch zu überwachen oder mit dem Netzwerkmonitor die Datenpakete zu protokollieren und dem Performance Monitor die Belastung der einzelnen Komponenten aufzuzeichnen um Grenzen und Reserven zu erkennen.

Hauptspeicher und Prozessor

Neben den Tests von Netzwerksystem und Festplatten kann der Gesamtrechner einer Betrachtung unterzogen werden. Nun macht es nicht sehr viel Sinn, die Grafikperformance eines Exchange Server zu untersuchen, auch wenn ich immer wieder Server mit aktiven OpenGL-3D-Bildschirmschonern sehe. Trotzdem können solche Benchmarks Fehlkonfigurationen oder Schwächen eines Servers im Bereich Hauptspeicher und Prozessor aufzeigen.

  • WinBench
    Der Ziff Davis Verlag hat mit WinBench eine umfangreiche Sammlung einer Testsuite um die Performance zu ermitteln. Diese Programme müssen primäre natürlich Arbeitsplatzsysteme und sind nur bedingt für Server geeignet. Oft installieren Sie eine große Menge DLLs und Programme als Testgrundlage und das ist auf einem Server nicht sinnvoll. Nach der Ausführung dieses Tests auf dem Testsytem ist daher eine Neuinstallation als eigentlicher Server vorzuziehen.
  • CTMEM, CTCPU
    Auch hier ist der Heise Verlag mit Testprogrammen für Speicherbausteine und deren Leistung als auch Prozessoren vertreten, die eingesetzt werden können
  • SpecINT
    Diverse Tests sind für die Messung der Rechenleistung der CPU optimiert.

Aber die CPU-Leistung alleine ist nicht ausschlaggebend für einen Server. Gerade Server holen ihre Leistung aus den Festplatten, da SpeicherAusbau und Rechenleistung sehr stark gewachsen sind aber bei Festplatten Datendicht und Transferleistung nicht im gleichen Maß gewachsen sind. Die Positionierungszeiten der Köpfe sinken kaum noch. Aber die Werte CPU, Hauptspeicher und Bus-Durchsatz sind natürlich interessant, um Ausreißer zu erkennen oder Falschkonfigurationen auf die Spur zu kommen.

Anwendungsperformance Exchange

Neben den Messwerten auf den Einzelkomponenten kann auch die Gesamtperformance des Exchange Servers getestet werden. So können mehrere Testprogramme die Leistungsfähigkeit messbar machen. Dazu zählen:

Gerade die Benchmarks auf Exchange selbst sind aber nicht einfach mal so installiert und aufgerufen, sondern sollten geplant und konfiguriert werden. Dabei ist es hilfreich das zu erwartende Benutzerverhalten zu ermitteln und entsprechend die Tests einzurichten.

Zu den Exchange Benchmarks gibt es auch von diversen Herstellern weitergehende Informationen, Vergleichswertre und Testwerte, z.B.:

Sonstige Tests

Wichtig sind auch Tests, wenn zusätzliche Produkte (z.B. Virenscanner) installiert werden, zum den Einfluss auf die Performance

Tests im Betrieb

Während des produktiven Betriebs sind Tests, die das System bis auf die Grenze belasten nicht möglich. Allenfalls während geplanter Servicezeiten oder Downzeiten und nach Updates kann ein Test möglich sein. Wobei auch hier natürlich keine destruktiven Tests durchgeführt werden können. Auch Tests wie MMB2 etc. scheiden meist aus, da dazu Exchange Benutzer notwendig sind und diese sich im auch im Produktionsfeld nur schwer verbergen lassen.

Im Produktionsbetrieb sind daher Tests vorzuziehen, die die Funktion und Erreichbarkeit der Dienste prüfen und je nach Einstellung z.B. einen Alarm auslösen.

So können Testprogramme regelmäßig Mails per SMTP an Exchange senden und die erfolgreiche Absendung in einer bestimmten Zeit kontrollieren. Ebenso können andere Programme Mailboxen öffnen und eine Testnachricht lesen und die Zeit und den Erfolg müssen. Informationen finden Sie dazu auf Überwachen mit Performance Monitor und SNMP.

Weitere Links