Ich plane den Aufbau eines Dateiservers mit OpenSolaris und ZFS, der zwei primäre Dienste bereitstellt - ein iSCSI-Ziel für virtuelle XenServer-Maschinen und ein allgemeiner Home-Dateiserver. Die Hardware, die ich betrachte, umfasst 2x 4-Port-SATA-Controller, 2x kleine Boot-Laufwerke (eines auf jedem Controller) und 4x große Laufwerke für die Speicherung. Dies ermöglicht einen freien Port pro Controller für die spätere Aufrüstung des Arrays.
Wo ich ein bisschen verwirrt bin, ist, wie man die Speicherlaufwerke einrichtet. Für die Leistung scheint die Spiegelung König zu sein. Es fällt mir schwer zu erkennen, welchen Vorteil die Verwendung von RAIDZ gegenüber der Spiegelung hätte. Mit diesem Setup sehe ich zwei Optionen - zwei gespiegelte Pools in einem Stripe oder RAIDZ2. Beide sollten vor 2 Laufwerksausfällen und / oder einem Controller-Ausfall schützen. Der einzige Vorteil von RAIDZ2 besteht darin, dass 2 beliebige Laufwerke ausfallen könnten. Der Speicher sollte in beiden Fällen 50% der Kapazität ausmachen, aber der erste sollte eine viel bessere Leistung haben, oder?
Die andere Sache, um die ich mich kümmern möchte, ist der Vorteil von gespiegelten Arrays mit mehr als zwei Geräten. Was wäre für die Datenintegrität, wenn überhaupt, der Vorteil einer RAIDZ gegenüber einem Drei-Wege-Spiegel? Da ZFS die Dateiintegrität beibehält, was bringt RAIDZ auf den Tisch ... negieren die Integritätsprüfungen von ZFS nicht den Wert der RAIDZ-Parität?