ZFS - RAIDZ-1 gerçekten bu kadar kötü mü?


18

RAID10 yapılandırmasında (4 TB kullanılabilir) 4x 2 TB WD RE4-GP sürücülü bir NAS sunucum var. Boş alan kalmadı (<1 TB kullanılabilir alan kaldı). Daha büyük / daha fazla sürücü / kasaya harcamak için 0 dolar var.

ZFS'nin veri bütünlüğü özellikleri hakkında okuduğum şeyleri seviyorum - ki bunlar kendi başımıza - mevcut XFS (yazılım) RAID10'umdan geçiş yapmam için yeterli. Sonra ZFS'nin RAID5'in üstün uygulamasını okudum, bu yüzden RAIDZ-1 kullanarak pazarlıkta 2 TB'a kadar daha fazla kullanılabilir alan elde edebileceğimi düşündüm.

Ancak, ben okumaya devam fazla ve daha Mesajları hemen hemen sadece RAIDZ-1 kullanmak asla söyleyerek. Sadece RAIDZ-2 +, "gerçek dünya" sürücü arızalarını giderecek kadar güvenilirdir. Tabii ki, benim durumumda, RAIDZ-2 hiçbir anlam ifade etmiyor. İki aynalı vdev'i tek bir havuzda (RAID10) kullanmak çok daha iyi olur.

4x 2 TB diskler için RAIDZ-1 kullanmak ister miyim?

Sadece iki aynalı vdev (esasen RAID10) havuzunu kullanmalı mıyım ve sıkıştırmanın bana yeterince fazla alan vermesini ummalı mıyım?

Her iki durumda da, sıkıştırma kullanmayı planlıyorum. Sadece 8GB RAM'im (maks.) Var, bu yüzden tekilleştirme bir seçenek değil.

Bu, Linux'taki ZFS'nin kararlılık sorunlarını önlemek için bir FreeNAS sunucusunda (mevcut Ubuntu işletim sistemini değiştirmek üzere) olacaktır.


Bunun konu dışı olduğundan emin değilim. Bir sunucu için uygun dosya sistemi yapılandırması hakkında tavsiye istiyorum.
Andrew Ensley

Ayrıca RAIDZ1or2 yazma hızı RAID10 ile karşılaştırıldığında berbat
JamesRyan

2
Pariteyi yavaşlama olmadan hesaplamak için yeterli CPU'nuz varsa, RAIDZ çoğu yazma için RAID10'dan daha hızlı veya daha hızlı olmalıdır. RAIDZ her şeyi tam bir RAID şeridinde yazar, RAID5 gibi okuma-değiştirme-yazma döngüsü yoktur. Böylece daha fazla disk bant genişliği elde edersiniz (daha fazla veri, daha az ek yük) ve yazma işlemleri RAID10'dan daha hızlı olmalıdır. Bununla birlikte, bu, okumaların genellikle daha yavaş olduğu dezavantajına sahiptir . "Her seferinde tam bir şerit yazın" parçalanmaya yol açar ve birçok küçük okuma için disklerin yalnızca bir alt kümesini okuma avantajı sağlamaz. Bu bilinçli bir tasarım kararıydı.
Dan Pritts

Yukarıda söylediğim sadece kısmen doğrudur. Bir veritabanı sunucusu gibi eşzamanlı küçük yazma işlemleriniz varsa RAID10 çok daha hızlı olacaktır. RAIDZ'de tüm diskler tüm yazma işlemleri için etkindir; RAID10 onları böler. Karşılaşmaya çalıştığım nokta, RAIDZ'nin RAID5'in performans öldürme ve potansiyel olarak güvenli olmayan okuma-değiştirme-yazma döngüsünü ortadan kaldırmasıydı.
Dan Pritts

RAIDZ2, RAID10'dan daha güvenilirdir. RAIDZ2 ile, herhangi iki disk arızalı olabilir ve yine de verileriniz olur. RAID10 ile, iki arızalı disk (dört disk dizisinde) veri kaybına neden olabilir .
Klaws

Yanıtlar:


21

Ayrıntılara girmeden önce kullanım durumunuzu düşünün. Fotoğraf, MP3 ve DVD rip mi saklıyorsunuz? Öyleyse, diziden tek bir bloğu kalıcı olarak kaybetip kaybetmemeniz önemli olmayabilir. Öte yandan, eğer önemli bir veri ise, bu bir felaket olabilir.

RAIDZ-1'in "gerçek dünya arızaları için yeterince iyi olmadığı" ifadesi, yeniden yapılandırma zamanı geldiğinde hayatta kalan disklerinizden birinde gizli bir medya hatası yaşayacağınızdır. Aynı mantık RAID5 için de geçerlidir.

ZFS bu başarısızlığı bir ölçüde azaltmaktadır. Bir RAID5 cihazı yeniden yapılandırılamazsa, şansınız çok azdır; (kalan) verilerinizi kopyalayın ve sıfırdan yeniden oluşturun. Öte yandan, ZFS ile, kötü yığın dışındaki her şeyi yeniden yapılandıracak ve yöneticinin hataları "temizlemesini" sağlayacaktır. Bir dosyayı / dosyanın bir bölümünü kaybedersiniz, ancak dizinin tamamını kaybetmezsiniz. Ve elbette, ZFS'nin parite kontrolü, bir hata olduğu konusunda güvenilir bir şekilde bilgilendirileceğiniz anlamına gelir. Aksi takdirde, (olası olmasa da) birden fazla hatanın görünüşte başarılı bir şekilde yeniden oluşturmaya neden olacağına inanıyorum, ancak size kötü veriler geri veriyor.

ZFS bir " Rampant Katman İhlali " olduğundan, hangi alanlarda üzerlerinde veri bulunmadığını da bilir ve bunları yeniden oluşturma işleminde atlayabilir. Yani diziniz yarı boşsa, yeniden oluşturma hatasına sahip olma olasılığınızın yarısı kadardır.

Dizinizin düzenli "zpool scrubs" veya "mdadm kontrolleri" yaparak herhangi bir RAID düzeyinde bu tür yeniden oluşturma hatalarının olasılığını azaltabilirsiniz . Diğer RAID'ler için benzer komutlar / işlemler vardır; örneğin, LSI / dell PERC baskın kartları buna "devriye okuması" der. Bunlar, disk sürücülerinin arızalı sektörleri bulmasına ve kalıcı hale gelmeden önce onları yeniden atamasına yardımcı olabilecek her şeyi okur. Kalıcıysa, RAID sistemi (ZFS / md / raid kartı / ne olursa olsun) verileri eşlikten yeniden oluşturabilir.

RAIDZ2 veya RAID6 kullansanız bile, düzenli fırçalamalar önemlidir.

Son bir not - herhangi bir RAID yedeklemenin yerini tutmaz - sizi yanlışlıkla silinmeye, fidye yazılımlarına vb. Karşı korumaz. Her ne kadar düzenli ZFS anlık görüntüleri bir yedekleme stratejisinin parçası olabilir.


Bu açıklama için teşekkürler. Bu çok mantıklı ve şimdiye kadar ZFS hakkında öğrendiklerimle eşleşiyor. Sunucumu zaten FreeNAS ile yeniden yükledim ve RAIDZ-1 yapılandırmasıyla gittim. Ayda bir kez ovmaya ayarladım. Bunun genellikle yeterli olduğunu mu düşünüyorsunuz yoksa daha sık ovma tavsiye eder misiniz? Yaygın katman ihlali ZFS'nin en sevdiğim özelliğidir :-)
Andrew Ensley

1
Çeşitli yaşlardaki 7 tüketici diskinde çalışan bir raidz1 var. Her 2 haftada bir ovma var. Genellikle bir hata bulur ve düzeltir. Son zamanlarda bir sürücüyü kaybettim ve gizli bir hata olan bir dosyayı kaybettim. Neyse ki, kolayca değiştirebileceğim bir medya dosyasıydı. Önemli verilerim için elbette yedeklerim var.
Dan Pritts

Şunu belirteceğim - 'ev' diskleri 'kurumsal' dereceye göre karelerken 2 büyüklükte daha kötü kurtarılamayan bit hata oranına sahiptir. RAID-5'teki bileşik arıza oranının iyi FC / SAS sürücülerde kabul edilebilir olması beni oldukça mutlu ediyor. Ancak SATA üzerinde yapmazdım.
Sobrique

1
İki seagate diskini karşılaştıran yalnızca bir büyüklük sırası: Seagate ST2000DM001: 10E14'te 1. ST2000NM0033: 10E15'te 1. Bununla birlikte, tahrik mekanizmalarının farklı olup olmadığından emin olmak gerçekten zor. Güvenilir kaynakların karşıt cevaplar verdiğini duydum.
Dan Pritts

2
Sistemimde kötü bir SATA kablosu buldum - değiştirildiğinden beri fırçalarım sıfır hata buldu.
Dan Pritts

4

Burada işte bir yanılgı var. Gördüğünüz birçok tavsiye, doğru olmayabilecek bir varsayım üzerine kuruludur . Özellikle, sürücünüzün kurtarılamaz bit hata oranı.

Ucuz bir 'ev kullanıcısı' diskinde 10 ^ 14 kurtarılamaz hata oranı başına 1 adet bulunur.

http://www.seagate.com/gb/en/internal-hard-drives/desktop-hard-drives/desktop-hdd/#specs

Bu, bir RAID yeniden oluşturma işlemi sırasında kurtarılamaz bir hata olasılığından söz ettiğiniz bir seviyede ve bunu yapmamalısınız. (Hızlı ve kirli bir hesaplama, 5x 2 TB disklerin RAID-5 setinin aslında bunun% 60 civarında olduğunu gösterir)

Ancak bu daha pahalı sürücüler için geçerli değildir : http://www.seagate.com/gb/en/internal-hard-drives/enterprise-hard-drives/hdd/enterprise-performance-15k-hdd/#specs

10 ^ 16 başına 1, 100x daha iyi - yani 5x 2TB, <% 1 başarısız yeniden oluşturma şansı. (Muhtemelen daha az, çünkü kurumsal kullanım için 600GB iğler genellikle daha kullanışlıdır).

Şahsen - hem RAID-5 hem de RAID-4'ün hala oldukça kullanılabilir olduğunu düşünüyorum, çünkü RAID-0 hala oldukça yaygındır. Unutmayın - RAID-6 ile ilgili sorun, ağır yazma cezası olmasıdır. Bunu çok fazla önbellekleme ile kısmen hafifletebilirsiniz, ancak özellikle yavaş sürücülerle çalışırken başta yerleşik bazı ağrılarınız var.

Ve daha temelde - ASLA size tam esneklik sağlamak için RAID'inize güvenmeyin. Verileri bir sürücü arızasından daha sık olarak bir 'hata' için kaybedersiniz, bu nedenle verilerinizi yine de önemsiyorsanız iyi bir yedekleme stratejisine ihtiyacınız vardır.


Ben 10 ^ 15 te kurtarılamaz okuma hataları <1 olan 4 WD RE4-GP sürücüler kullanıyorum.
Andrew Ensley

RAID6 yazma cezası çok gerçektir. Ancak, RAID-Z2 bundan muzdarip değildir; zfs tüm yazmaları tam şerit yapar. Bunun başka olumsuz etkileri de var - birkaç nedenden dolayı okuma performansını azaltma eğilimindedir.
Dan Pritts

3

Hmmm, bazı kötü bilgiler burada. 4 disk için, XFS'de gerçekten yanlış bir şey yok. Performans ve genişletilebilirlik nedenleriyle ZFS RAIDZ'den kaçınma eğilimindeyim (düşük okuma / yazma, genişletilemez). Mümkünse ZFS aynaları kullanın. Bununla birlikte, 4 disk ve işletim sisteminizi yerleştirecek bir yer olmadığında, ya çok fazla kapasite kaybedersiniz ya da işletim sisteminize ve verilerinize aynı dört diske sığacak şekilde garip bölümleme oyunlarından geçmeniz gerekir.

Muhtemelen ZFS'yi kullanım durumunuz için önermem. Burada XFS ile ilgili yanlış bir şey yok.


2
İşletim sisteminin ayrı bir sürücüde yaşadığını belirtmeyi unuttum. Afedersiniz. XFS RAID10'un sahip olmadığı ZFS'den istediğim şey, sessiz veri hatalarını (sürücüde biraz ters çevrildi ve HDD'nin hiçbir fikri yok) algılayabilen (ve şeffaf bir şekilde düzelten) sağlama toplamı veri doğrulamasıdır. XFS'nin bunu yapabileceğine inanmıyorum.
Andrew Ensley

Dört disk için, genişletme şansınız varsa veya performans önemliyse ZFS aynalarını kullanın. Ayrıca FreeNAS'tan kaçınır ve Linux'ta düz ZFS kullanırdım.
ewwhite

1
Ben kendim bir terminal adamıyım, bu yüzden kesinlikle GUI'ye geçmem. Çoğunlukla, (mümkün olduğunca) üzerinde saklanan dosyaların bütünlüğünü garanti eden kararlı bir dosya sistemine ihtiyacım var. Ve bu süreçte yer kazanmayı umuyordum. ZoL için bildirilen birçok sorun gördüm, bunların çoğu Ubuntu OS yükseltmeleriyle ilgili. groups.google.com/a/zfsonlinux.org/forum/#!searchin/zfs-discuss/… Acı çekmeye çalışmıyorum . Sadece neden düşündüğümü düşündüğümü açıklıyorum. Kesinlikle düzeltmeye açıkım.
Andrew Ensley

1
Bu iyi. FreeNAS (FreeBSD değil) ile ilgili çok daha fazla sorun gördüm, bu yüzden her iki yönde de gidiyor. Orada bilgi var. Ben Ubuntu kullanmıyorum, ama do ZFS'yi biliyorum . Linux'taki ZFS'im genellikle RHEL veya CentOS ile. İşte örnek bir iş akışı .
ewwhite

1
Linux ve Centos 6'da ZFS kullanıyorum. Çekirdeğin veya ZFS'nin otomatik olarak güncellenmesine izin vermiyorum. ZFS / SCL borking ile ilgili sorunlar yaşadım, ancak veri kaybım olmadı. Kayıt için, btw, FreeBSD benzer bir solaris uyumluluk rutinleri setine sahiptir, ancak onlar ve ZFS dağıtımla tamamen entegre edilmiştir, bu da her şeyin birlikte çalışmasını kolaylaştırır. Yalnızca ZFS ve dosya hizmeti isteseydim, muhtemelen FreeBSD'yi çalıştırırdım. Aslında, eskiden bunu yapıyordum, ancak kutuyu ZoL'yi daha çekici yapan diğer rastgele şeyler için kullanıyorum.
Dan Pritts
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.