Exchange Sizing - Festplatten und RAID ?

Ein sehr guter Artikel zum Sizing von Disks finden Sie auf dem Exchange Team Blog

Worte zu Redundanz und Geschwindigkeit

Sie sollten NIE einen Server ohne redundante Festplattensysteme installieren, denn Festplatten = Mechanik = Ausfall und he mehr Festplatten Sie einsetzen, desto eher sollten sie an eine Hot Spare Festplatte denken. Dabei gilt:

  • RAID0
    sehr schnell aber mangels Redundanz nicht geeignet
    Einsatzbereich z.B. beim Videoschnitt etc. für temporäre Daten etc.
  • RAID1
    schnell durch paralleles Lesen und Schreiben aber 50 % Verlust, also für kleinere Datenmengen mit Tempo, aber sicher nicht für größte Datenmengen. Dazu sind Festplatten teuer. Wenn Leistung aber zählt, ist RAID 1 oder RAID10 die erste Wahl.
  • RAID10
    Kombination aus RAID 0 und 1, d.h. schneller (Stripe) und redundant, aber auch hier 50% Verlust.
  • RAID5
    langsamer aber gute Platznutzung mit Redundanz (Parity Bit). Ideal für große Daten, die aber nicht extrem schnell geschrieben werden müssen.

Details zu den RAID-Level und deren Einsatzzweck finden Sie bei den Herstellern guter Controller.

Je mehr Festplatten Sie zusammenschalten, desto größer ist die Gefahr eines "Doppelfehlers". Mein persönliches Limit ist bei ca. 7 Platten. Auch die kritische Zeit nimmt zu, d.h. bis eine reparierte Festplatte wieder synchron ist. Mit zunehmender Anzahl an Festplatten kann man Überlegungen anstellen, die Datenbank zu teilen (PRIV.EDB und PUB.EDB). Exchange 200 erlaubt noch weitere Teilungen. Bei vielen Festplatten sollte man überlegen, ob man alle Platten der gleichen Größe nimmt (Austauschbarkeit) auch wenn es teurer ist oder "zu groß" aussieht.

RAID ist aber nicht nur eine Frage der Größe und der Anzahl der Festplatten und der Kosten sondern auch der Performance. So ist ein RAID-1 in der Regel fast doppelt so schnell wie ein RAID-5 mit 3 Festplatten. Oftmals ist der Server im Hinblick auf die CPU und Speicherauslastung "Idle", aber die Festplatten sind auf Volllast. Dann wurde an der falschen Stelle gespart.

Angenommen Sie brauchen 90 GB Kapazität, dann können Sie dies mit 9 GB Platten erreichen. Angenommen die Platten schaffen 100 I/O pro Sekunde.

RAID-Level

Anzahl der Platten

Leseperformance

Schreibperformance

Verfügbarkeit

RAID-0

10

1000

1000

niedrig

RAID-0+1

20

1000

2000

sehr hoch

RAID-5

11

275

1100

sehr hoch

(Zahlen aus der Exchange Core Dokumentation: Storage Solutions für Exchange 2000 Server). Die unterschiede sind nicht so gravierend, wenn weniger Festplatten zum Einsatz kommen. Ein RAID-5 aus 11 Festplatten wird hoffentlich auch niemand projektieren aber es wird deutlich, dass es nicht einfach reicht "irgendwie" ein paar Festplatten zu verkabeln. Oftmals lohnt es sich, auf eine CPU oder einige MHz Takt zu verzichten und das Geld in das Festplattensubsystem zu stecken.

RAID-Level und Kosten

Es ist wie beim Autokauf: Viel Leistung kostet viel Geld. Ob Sie die Leistung auch brauchen, müssen Sie selbst wissen oder in Erfahrung bringen. Aber was bedeutet eigentlich "Geld" ?. Vielleicht eine kleine Rechenaufgabe, die Sie so vermutlich jedes Jahr immer wieder verwenden können, solange Sie einfach die Größe der Platten der aktuelle Hardware einsetzen. für die Rechnung nutze ich daher folgende virtuelle Eckparameter:

  • Größe und Preis der Disks
    Kleine Disk = 100 GB = 100 Euro
    Große Disk = 200 GB = 200 Euro
    Meistens werden RAIDs mit schiefen Festplatten wie 36GB, 72GB, 144GB etc. gebaut, aber so ist es einfacher zu rechnen. Auch die Preisannahmen sind einfach nur Musterwerte, deren Verhältnis aber meist passt.
  • HotSpare
    Ich rechne absichtlich eine "HotSpare" mit ein, da die beim RAID1 oder RAID10 mit vielen Disks ratsam ist und erst recht bei einem RADI5 angeraten ist. Hier könnten Sie das RAID5 mit der HotSpare auch als RAID6 betreiben um kürzer "kritisch" zu sein.
  • Keine "Gehäuse"
    Zur Vereinfachung spare ich die Berechnung von "Einschubplätzen, auch wenn das nicht immer Fair ist, da ein RAID5 mit 3 Festplatten einen Schacht mehr braucht als ein RAID1 mit 2 Disks.

Hier ein paar Beispielrechnungen, die sie miteinander vergleichen können:

Kapazität RAID-Level Disks + HotSpare Slots Kosten Performance Benmerkung

200 GB

RAID1

2x200GB + 1x200GB

3

600

hoch

Nur möglich, wenn die Kapazität der Festplatten groß genug ist.

RAID5

3x100GB + 1x100GB

4

400

niedrig

Das Standard RAID5. Kann jeder aber Performancewunder sind keine zu erwarten

RAID10

4x100GB + 1x100GB

5

500

sehr hoch

Achtung. Auch Einbauschächte, Strom und RAID-Controller mit vielen Ports kosten Geld

400 GB

RAID10

8x100GB + 1x100GB

9

1100

sehr hoch

Achtung. Auch Einbauschächte, Strom und RAID-Controller mit vielen Ports kosten Geld

RAID10

4x200GB + 1x200GB

5

1000

hoch

Größere Platten sind hier aufgrund der Anzahl letztlich günstiger, wenngleich wohl etwas langsamer

RAID5

5x100GB + 1x100GB

6

600

Durchschnitt

Standard RAID5 mit 5 statt 3 Disks..Performancewunder sind keine zu erwarten.

RAID5

3x200GB + 1x200GB

4

800

Durchschnitt

Standard RAID5. Kann jeder aber Performancewunder sind keine zu erwarten

1000 GB

RAID1

nicht möglich

entfällt

entfällt

entfällt

Nicht möglich, wenn es keine so großen Disks gibt

RAID10

10x200GB + 1x200GB

11

2200

sehr hoch

Achtung. Auch Einbauschächte, Strom und RAID-Controller mit vielen Ports kosten Geld.Achtung. Auch Einbauschächte, Strom und RAID-Controller mit vielen Ports kosten Geld.

RAID10

20x100GB + 1x100GB

21

2100

sehr hoch
Viele Disks

RAID5

11x100 GB + 1x100GB

12

1200

mittel

Hier stört mich die "kritische Zeit" bei einem Ausfall, da sehr viele GB beim Rebuild neu geschrieben werden müssen, was zudem die Performance stark beschränkt.

RAID5

6x200 GB + 1x200GB

7

1400

mittel

Sie sehen also, dass es in den meisten Fällen ein RAID1 oder RAID10 teurer ist, also ein RAID5 + Hot-Spare oder RAID6, Bei großen Kapazitäten wird es schon interessant ein SAN mit einem Storage System anzuschaffen, da ein einzelner Server mit vielen Disks auch meist nicht mehr in einem Chassis unterkommt.

Welches RAID für wen ?

Also können wir nun überlegen was wir zusammenfassen (Die Datenberuhen auf dem Stand von 2001 !!):

  • Kleiner Server
    1x RAID5 (z.B.: 3x 18 GB ) für alles gemeinsam, denn besser redundant als das letzte Quäntchen Tempo rauskitzeln
  • Mittlerer Server
    1x RAID1 (2x 18 GB) für System, Programme, Protokolldateien und Swapdatei
    1x RAID5 (3x 18 GB) für Dateifreigaben, Exchange Datenbank
  • großer Server
    1x RAID1 (2x 18GB) für System und Swapdatei
    1x RAID1 (2x 18GB) für Protokolldateien
    1x RAID5 (3x 18GB) für Datenbanken priv.edb
    1x RAID5 (3x 18GB) für Datenbanken pub.edb
    Bei Exchange 2000: Mehrere Bereich für Storagegroups und STM-Dateien

Und wenn man dann noch Platten frei hat, kann man sich über RAID10 etc. Gedanken machen. Wobei ab einer bestimmten Größe auch die Überlegung auf Cluster mit SAN oder mehrere Server durchaus ins Kalkül genommen werden sollte.

Im Hinblick auf das Active Directory mit Exchange 2000 bleibt nur zu sagen, dass die Last des AD entweder so klein ist, dass sich dafür keine eigene Festplatte rechnet. dann müssen sie mit dem ausgeschalteten Schreibcache leben. Oder ihre Struktur ist so groß, dass sie eh mehrere Server haben und dann werden Sie sowieso die Funktion "Verzeichnisdienste" von den Exchange Server getrennt halten. Active Directory Design ist eine ganz andere Baustelle.

Verschiedene Partitionen auf einer Festplatte bringen kein Tempo, sondern nur eine Abtrennung der Dateisysteme. Wenn wirklich mal eine NTFS Partition korrupt würde (mir noch nie passiert), dann wäre nicht die ganze Festplatte hinüber und ein Vollaufen eines Bereichs betrifft nicht die anderen Partitionen. Aber gegen Festplattenfehler, Headcrash oder eine verlorene Partitionstabelle hilft das auch nicht. Mehrere Partitionen auf einer Festplatte machen also nur Sinn um Bereiche abzugrenzen ohne Quotas einzusetzen und natürlich um die 4Gb Swapdateigröße zu umgehen. Ein Swapfile kann maximal 4 GB groß sein und es kann nur eine PAGEFILE.SYS pro Partition geben (auch mit Windows 2000). 

Versuchen Sie um Himmels willen nicht, sich einen Server "selbst" zu bauen, vor allem wenn es der erste ist. Ohne besseres Wissen zu den Hintergründen wie Exchange arbeitet, landen Sie sehr wahrscheinlich einen Missgriff. Sie können ja mal bei Compaq oder Siemens entsprechend Designführer zu Exchange lesen. Ein Exchange Server sollte kein "Einzelstück" sein, sondern schon mehrfach so laufen. Glauben Sie mir einfach oder lesen sie den Artikel zum "-1018". Oder lassen Sie sich vom Hersteller eine Garantie mit Haftung geben, damit sie wenigstens jemanden dann "zur Sau" machen können. Ich verspreche Ihnen, das Exchange in kurzer Zeit wichtiger sein wird, als es ihre Dateiserver je gewesen sind.

Aber nun mal zu einer Beispieldimensionierung. Genaue Werte gibt es natürlich nicht ohne den Einsatzfall zu können. Alle heute neu gefertigten Rechner sind von der CPU-Leistung alle viel zu schnell für einen "kleinen" Exchangeserver. Der Engpass in einem System von heute ist wirklich die Platte.

Was brauchen wir für das System ?

(Die Daten basieren auf einer Planung im Jahre 2003. Bei der jährlichen Zunahme an Daten und Diensten sollten sie aktuell sicher höhere Werte ansetzen.

  • Windows NT 4.0 Basis braucht ca. 30-40 Megabyte RAM um "rund" zu laufen und ca. 2-3 GB Plattenplatz
    Windows 2000 können wir mal mit 80 MB annehmen
  • Soll der Server noch Dienste wie WINS, DNS, DHCP oder Domäne machen, dann addiere noch mal 5-10 MB
    Windows 2000 sollte man da schon 32 MB wegen Active Directory einrechnen
  • Exchange 5.5 selbst ist mit 64 Megabyte zufrieden, aber wie ein Dateiserver wird Exchange erst schnell, wenn er Hauptspeicher als Cache hat. Also bei heutigen Preisen sollten 200 MB drin sein
  • Für Exchange 2000 gilt, dass mehr RAM langsame Festplattenzugriffe  reduziert, und unter 256 MB sollten Sie nicht anfangen. Auf der anderen Seite haben die Entwickler ein 900 MByte Limit eingebaut. Wenn ihr Server mehr Speicher hat, dann müssen sie hier noch etwas tunen. 
  • Sinnvoll ist  auf jeden Fall ein RAID-System. Getrennte Plattenbereiche für Datenbank und Protokolldateien wären sinnvoll
  • Und eine Datensicherung, die 20 GB in 2-3 Stunden sichern kann samt passender Software mit Exchangeagent (Siehe Backup und Restore)
  • Vielleicht soll der Server im Small Office Bereich noch etwas ISA-Server, Dateiserver, Druckserver und Proxy spielen ? Rechne selbst ein, was das an Plattenplatz braucht. CPU und Speicher kann man da schon fast ignorieren.
  • Ist dies dein "erster" Server ? dann teste ihn aus. LOADSIM, MAPISTRESS und andere Tools von Microsoft bringt schon Last auf das System.

Also landen wir bei einem System was etwa folgenden Aufbau hat:

  • P700 und mehr. auch Dualprozessor mag Exchange gerne
  • 256 MB ist für 5.5 auf NT4 machbar 
    W2K mit Exchange 2000 sollte mit  512 gut arbeiten können
    Aber platz für Nachrüstung lassen 
  • RAID-Controller mit zwei großen Platten als Raid1, wenn man Sparen will
    Schöner wären schon mindestens zwei unabhängige Festplattensysteme, aber da muss man schon argumentieren.
  • LAN-Karte ist eigentlich egal. 100 Megabit ist schon in Ordnung
  • Backup ist wichtig. Denke an das Wachstum und plane mal mal mit 30-40 GB Datenvolumen, was du in 2-3 Stunden sichern willst. Das wird schon eng mit DAT (mach ich eh nicht, aber das ist ein anderes Thema). Also planen sie ein DLT oder SLR -Laufwerk ein. Und natürlich eine Backup Software mit Exchange Agent. Ich selbst nutze Backup Exec mit Agent.

Es gibt ein Punkt der mit Exchange 2000 zu beachten ist:
Exchange 2000 braucht "ZWINGEND" Active Directory. Die Planung und Installation des Active Directory ist vor der Planung und Installation von Exchange 2000 zu erledigen.