Betriebssysteme > Solaris/x86 und OpenSolaris
Backup-Server mit ZFS - ein paar Fragen
meik:
--- Zitat von: stoerte am 07. März 2008, 16:07:37 ---Hallo,
ich möchte mir gerne einen Backup-Server für meine Daten einrichten. Wie bei vielen anderen auch, ist mir, als ich die Features von ZFS gesehen habe, sofort klar geworden, das ist es. Nach ein wenig Recherche, bleiben dennoch ein paar Fragen.
1. Welches OS würdet ihr empfehlen? Solaris Express Developer Edition 1/08 oder Solaris 10? (Meine einzigen Anforderungen sind Stabilität und ZFS mit RAID-Z soll laufen)
--- Ende Zitat ---
Solaris 10. Das ist vielleicht nicht so sexy und hat noch nicht alle Features, die es in Nevada gibt, aber auf einem Backup-Server würde ich eher etwas konservativ sein.
Ansonsten könnte evtl. Project Indiana interessant sein. Das soll demnächst in einem offiziellen Release kommen und
Ich würde auf jeden Fall die Platte so partitionieren, dass du Live Upgrade nutzen kannst. Damit kannst du relativ schmerzfrei ein Update auf einer zusätzlichen Partition installieren und - sollte damit etwas nicht klappen - relativ schmerzfrei wieder zur vorherigen Umgebung zurück kehren. Live Upgrade ist Teil von Solaris, Doku und Blueprints zu dem Thema gibt es reichlich.
--- Zitat ---2. Ist es möglich das OS auf eine CF-Card (die an einem IDE-Adapter angeschlossen wird) zu installieren und davon zu booten? Hat damit schon jemand Erfahrungen gemacht?
--- Ende Zitat ---
Scheinbar geht das ja. Habe ich selber noch nicht ausprobiert.
--- Zitat ---3. Wenn ich einen Pool mit RAID-Z aufgebaut habe und nach einiger Zeit merke, dass der Speicherplatz nicht mehr ausreicht und ich habe sagen wir mal 4x500GB verbaut und ich möchte die durch 4x1TB austauschen. Wie bekomme ich das hin? Soviel ich weiss, kann ich einzelne Platten durch "replace" ersetzen. ABER: wenn ich die erste TB-Platte einbaue und die restlichen 3 Platten nur 500GB gross sind, dann gehen ja von der 1 TB Platte 500GB verloren (a la RAID5, wo alle Platten die gleiche Grösse haben). Ersetze ich nun sukzessiv die restlichen 500er Platten durch die 1TB Platten, dann würde ich bei allen Platten nur 500 GB benutzen und der Rest würde wegfallen, oder sehe ich das falsch? Wie bekomme ich die alten Platten durch die neuen grösseren Platten ersetzt, ohne den grösseren Speicherplatz zu verlieren?
--- Ende Zitat ---
Das sollte genauso gehen, wie du es beschreibst. Du entfernst ja die alte Platte aus dem Pool und fügst die neue, größere hinzu. ZFS sollte von alleine merken, dass alle Platten nun groß genug sind, um den Pool als Ganzes zu vergrößern.
Ich finde blöderweise die passende Quelle jetzt gerade nicht. Ich bin aber über ein zweiteiliges Tutorial von Uli Gräf gestolpert, da könnte was bei sein:
http://blogs.sun.com/solarium/entry/guug_fr%C3%BChjahrsfachgespr%C3%A4ch_tutorium_zu_zfs
dominik:
--- Zitat von: meik am 03. April 2008, 19:46:28 ---[Das sollte genauso gehen, wie du es beschreibst. Du entfernst ja die alte Platte aus dem Pool und fügst die neue, größere hinzu. ZFS sollte von alleine merken, dass alle Platten nun groß genug sind, um den Pool als Ganzes zu vergrößern.
--- Ende Zitat ---
Also ich finde die Prozeduren diesbezüglich ziemlich mühsam. Z.B. ist nicht dokumentiert, wie man eine Disk normal entfernen kann und dann den Mirror mit einer neu eingebauten Disk vergrössern. Es klappt nur, wenn das neue Device schon sichtbar ist:
# ls -l /testpool01
total 6134684
-rw------T 1 root root 1048576000 Apr 4 08:33 zfs1000m_1.zfs
-rw------T 1 root root 1048576000 Apr 4 08:33 zfs1000m_2.zfs
-rw------T 1 root root 524288000 Apr 4 08:31 zfs500m_1.zfs
-rw------T 1 root root 524288000 Apr 4 08:32 zfs500m_2.zfs
# zpool create sizetest mirror /testpool01/zfs500m_1.zfs /testpool01/zfs500m_2.zfs
# zpool status sizetest
pool: sizetest
state: ONLINE
scrub: none requested
config:
NAME STATE READ WRITE CKSUM
sizetest ONLINE 0 0 0
mirror ONLINE 0 0 0
/testpool01/zfs500m_1.zfs ONLINE 0 0 0
/testpool01/zfs500m_2.zfs ONLINE 0 0 0
errors: No known data errors
# df -h /sizetest
Filesystem size used avail capacity Mounted on
sizetest 460M 1K 460M 1% /sizetest
# zpool replace sizetest /testpool01/zfs500m_1.zfs /testpool01/zfs1000m_1.zfs
# zpool status sizetest
pool: sizetest
state: ONLINE
scrub: resilver completed with 0 errors on Fri Apr 4 08:36:52 2008
config:
NAME STATE READ WRITE CKSUM
sizetest ONLINE 0 0 0
mirror ONLINE 0 0 0
/testpool01/zfs1000m_1.zfs ONLINE 0 0 0
/testpool01/zfs500m_2.zfs ONLINE 0 0 0
errors: No known data errors
# df -h /sizetest
Filesystem size used avail capacity Mounted on
sizetest 460M 24K 460M 1% /sizetest
# zpool replace sizetest /testpool01/zfs500m_2.zfs /testpool01/zfs1000m_2.zfs
# zpool status sizetest
pool: sizetest
state: ONLINE
scrub: resilver completed with 0 errors on Fri Apr 4 08:37:34 2008
config:
NAME STATE READ WRITE CKSUM
sizetest ONLINE 0 0 0
mirror ONLINE 0 0 0
/testpool01/zfs1000m_1.zfs ONLINE 0 0 0
/testpool01/zfs1000m_2.zfs ONLINE 0 0 0
errors: No known data errors
# df -h /sizetest
Filesystem size used avail capacity Mounted on
sizetest 960M 24K 960M 1% /sizetest
Das Entfernen einer Disk mit 'zpool detach' ist geht leider gar nicht, da man die neue Disk (egal ob gleich gross oder grösser) nicht mehr in den bestehenden Mirror einhängen kann. Und da die Daten ja weiterhin auf der verbleibenden Disk im Mirror liegen, kann diese Disk auch nicht entfernt werden.
Meine Schlussfolgerung: ZFS ist extrem nett in Umgebungen mit statischer Diskanzahl. Vergrössern eines Pools durch Hinzufügen klappt problemlos solange die alten Disks auch weiterhin verwendet werden. Für den Hobbyisten mit seinem kleinen 2 Disk RAID1 welches er vergrössern möchte ist es aber nichts.
Gruss
Dominik
Navigation
[0] Themen-Index
[*] Vorherige Sete
Zur normalen Ansicht wechseln