Yazma hızı gereksinimi: 1.1GB / sn olanakları?


29

İşyerinde bir makineye sahip olacağız, en yüksek performansla saatte 50 ("yazma kafası") x 75GB veriyi zorlayabilmelidir . Bu ~ 1100 MB / sn yazma hızında en yüksek performans. Bunu makineden almak için iki adet 10GBi hat gerektirir. Sorum şu ki, ne tür bir sunucu + teknolojisi bu tür veri akışını yönetebilir / saklayabilir?

Şu anda veri depolama için ZFS ile çalışıyoruz, ancak yazma hızları hiçbir zaman bir sorun değildi. (bu hızlara yakın bile değiliz) ZFS (linux üzerinde zfs) bir seçenek olabilir mi? Ayrıca, çok fazla veri depolamamız gerekiyor, “IT rehberi” toplamda 50-75 TB arasında bir yerde olduğunu gösteriyor. Bu nedenle, ilk doğan çocuğumuzu sunmak istemediğimiz sürece muhtemelen tüm SSD'ler olamaz.

Mükemmel cevaplara dayanan bazı eklemeler:

  • maksimum saatte maksimum 50x75GB / saat olan 24 saatten azdır (büyük olasılıkla <6 saat)
  • Bunun yakında gerçekleşmesini beklemiyoruz, muhtemelen 5-10x75GB / saat çalışacağız
  • bu bir ön alfa makinesi, ancak gereksinimlerin karşılanması gerekiyor (birçok soru işareti oyunda olsa bile)
  • Kullandığımız ediyorum NFS sunucusu makineden bağlantı olarak
  • düzen: üreten makine -> depolama (bu) -> (güvenli baskın 6) -> bilgi işlem kümesi
  • bu nedenle okuma hızı gerekli değildir , ancak bunu hesaplama kümesinden kullanmak iyi olur (ancak bu tamamen isteğe bağlıdır)
  • büyük olasılıkla büyük veri dosyaları olacak (çok küçük değil)

8
megaBIT veya megaByte gibi mb? Lütfen baytları işaretlemek için MBi MiBi MByte veya MB kullanın. Ayrıca 2 10 gbit satır size 2400 MByte / s verecek
mzhaase

1
Şimdi daha açık, teşekkürler. Biraz daha soru. En yüksek performans 1,1 GB / sn'dir, ancak ortalama nedir? Bu çiviler ne kadar dayanıyor? Ve kabul etmeye hazır olduğunuz asgari sürekli iş hacmi nedir? Yazma büyük bir dosya mı yoksa küçük bir dosya mı? Ne tür bir protokol kullanılacak? Ne tür fazlalık istiyorsun? Bir tür tıbbi veya bilimsel ekipmana benziyor, veri sayfasını bağlayabilir misiniz? ZFS kullanmaya başladığınızdan, bir çiftinin olduğu ZFS özel bir depolama şirketiyle bağlantı kurabilirsiniz. Senin için bir sistem belirleyebilirlerdi.
mzhaase

2
Bu gerçekten tek bir makine ile mi yapılmalı? Birden fazla makineye yük dengeleme yapmak bunu kolaylaştırır. Paylaşılan depolamayı kullanabilir veya verileri daha sonra birleştirebilirsiniz. AWS'de bir ELB, otomatik ölçeklendirme, birkaç EC2 örneği ve EFS kullanabilirsiniz, ancak donanım istediğiniz gibi ses çıkarır. Sorunuz, kullanım durumunu çok iyi tanımlamıyor.
Tim

1
Sadece bir not, "en yüksek" performansa ihtiyacınız yok
1.1GBpS

1
@jsbueno Haklısınız, ancak kaç tane yazma başlığının etkinleştirileceğini seçebiliyoruz, bu nedenle 1GB / sn "en kötü durum" ama saatlerce sürdüğünü göz önünde bulundurarak performansın sürdürülebilir olduğunu düşünüyoruz.
SvennD

Yanıtlar:


18

Kesinlikle ... Linux üzerinde ZFS, doğru bir şekilde tasarlandıysa bir olasılıktır. ZFS tasarımında pek çok kötü durum söz konusudur , fakat iyi yapıldığında gereksinimleriniz karşılanabilir.

Dolayısıyla, ana belirleyici bu veri depolama sistemine nasıl bağlandığınızla ilgili olacaktır. NFS mi? CIFS? Müşteriler depoya nasıl bağlanıyor? Veya depolama sistemi üzerinde işlem vb.

Daha fazla ayrıntı doldurun ve yardım edip edemeyeceğimizi görebiliriz.

Örneğin, eğer bu NFS ise ve senkronize montajlıysa, yazma performansı gereksinimlerini karşılamak ve hala uzun vadeli depolama kapasitesi gereksinimini sürdürmek için Linux'ta ZFS'yi ölçeklendirmek kesinlikle mümkündür. Veri sıkıştırılabilir mi? Her müşteri nasıl bağlanır? Gigabit ethernet mi?


Düzenle:

Tamam, ısırırım:

İşte kabaca 17 bin dolar - 23 bin dolar ve 2U raf alanına sığacak bir özellik .

HP ProLiant DL380 Gen9 2U Rackmount
2 x Intel E5-2620v3 or v4 CPUs (or better)
128GB RAM
2 x 900GB Enterprise SAS OS drives 
12 x 8TB Nearline SAS drives
1 or 2 x Intel P3608 1.6TB NVMe drives

Bu kurulum, donanım RAID6 veya ZFS RAIDZ2 kullanarak 80 TB kullanılabilir alan sağlar.

Odak NFS tabanlı performans (eşzamanlı yazma varsayarsak) olduğundan, hepsini P3608 NVMe sürücüleri (çizgili SLOG) ile kolayca emebiliriz. Sıralı yazılarda 3 GB / sn ağırlığa sahip olabilir ve açıkladığınız iş yükünü sürekli olarak idare edebilecek kadar dayanıklılık derecesine sahip olabilirler. SLOG kullanım çantası altında bazı korumalar eklemek için sürücüler kolayca fazladan sağlanabilir.

NFS iş yükü ile, yazma işlemleri birleştirilir ve dönen diske atılır. Linux altında, her 15-30 saniyede bir akmaya başlayacağız. Dönen diskler bunu kaldırabilir ve bu veriler sıkıştırılabilir olduğunda daha da fazla fayda sağlayabilir.

Sunucu 4 tane daha açık PCIe yuvası ve çift bağlantı noktalı 10GbE FLR adaptörleri için ek bir bağlantı noktasıyla genişletilebilir. Böylece ağ esnekliği var.


ewwwite teşekkürler; NFS kullanırdık ve isteğe bağlı olarak sadece bir müşteri var (makine), onu kümemizdeki okuma cihazı olarak kullanırdık. (ama hangi işleme ya da nasıl bilinmiyor?) Baskın 6 depolama sunucularında mevcut "boş alan" var.
SvennD

@SvennD NFS ise ve senkronize montajlıysa, yazma performansı ihtiyaçlarını karşılamak ve hala uzun vadeli depolama kapasitesi gereksinimini sürdürmek için Linux'ta ZFS'yi ölçeklendirmek kesinlikle mümkündür. Veri sıkıştırılabilir mi? Bu başka bir faktör. Ancak bunun kapsamı ücretsiz olarak çevrimiçi bir forumda verebileceğim tavsiyelerin ötesinde. İletişim bilgilerim ServerFault profilimde mevcut . Daha fazla konuşmanız gerekirse, bana ulaşın.
ewwhite

5
ZFS, istediğin şeyden daha fazlasına sahip. İlk sorun, gerçek donanımınızın bunu yapabileceğinden emin olmak olacak. Dikkatli olmazsanız, yanlışlıkla adaptörde veya arka panel seviyesinde 1GB / sn'den daha dar bir darboğaz oluşturmak çok kolay olacak. BU kısmı doğru yaptığınızdan emin olduktan sonra ZFS tarafında nasıl yakalanacağını sorun.
Jim Salter,

@SvennD Temel tasarım özellikleri ve zorlu maliyetlerle düzenlendi.
ewwhite

Sanırım bir HP sunucusu üzerinden Oracle X6-2L'yi öneririm . Oracle sunucusu, kullanıma hazır dört adet 10 GB ağ bağlantı noktasıyla gelir. Ve benim deneyimlerime göre HP, sizi bir HP sunucusunun eşdeğer bir Oracle kutusundan daha pahalı olduğu noktaya ILOM, lisanslı ILOM yazılımı vb. Deneyimlerim ayrıca, Oracle kutusunun HP kutusundan daha iyi performans göstereceğini ve HP'nin @JimSalter'ın bahsettiği donanım darboğazlarından birine sahip olma ihtimalinden çok daha az olacağını söylüyor. Evet, Oracle'dan satın almak acı verici olabilir.
Andrew Henle,

23

Böyle aşırı yazma hızı için, ZFS, BTRFS veya herhangi bir CoW dosya sistemine karşı öneririm. Büyük / akış aktarımında son derece etkili olan XFS'yi kullanırdım.

Pek çok eksik bilgi var (bu verilere nasıl erişmeyi düşünüyorsunuz? Okuma hızı önemli mi? Büyük parçalara yazacak mısınız? Vb.) Size özel tavsiyeler vermek için:

  • ham bir bölümün veya bir LVM biriminin üzerine XFS kullanın (ince birimler kullanmayın)
  • büyük veri yazma işlemleriyle verimli bir şekilde başa çıkmak için ioblock boyutunu ayarlayın
  • powerloss korumalı yazma önbelleği olan bir donanım RAID kartı kullanın; donanım RAID kullanımı söz konusu değilse, bir yazılım RAID10 şeması kullanın (eşlik tabanlı herhangi bir RAID modundan kaçının)
  • LACP ile iki 10Gb / s ağ arayüzü kullanın (bağlantı birleştirme)
  • Jumbo Çerçeveleri etkinleştirdiğinizden emin olun
  • NFS kullanacağınız için, artan ölçeklenebilirlik için pNFS (v4.1) kullanmayı düşünün.
  • elbette pek çok şey ...

3
Ayrıca, XFS kullanıyorsanız, günlüğü SSD RAID1 çiftine yerleştirin.
TB

2
Powerloss korumalı bir geri yazma önbelleği olan bir RAID kartı kullanılıyorsa, günlük ana dizide bırakılabilir: yazma önbelleği, günlük yazmalarını emer ve birleştirir. Dahası, OP'nin tanımladığı şeyden, meta veri yükünün veri akışıyla karşılaştırıldığında oldukça düşük olması gerekir.
shodanshok

2
ZFS gayet iyi çalışır ve XFS'den çok daha hızlı ilerler. Tabii, doğru kurmanız ve ZIL ve SLOG için RAM ve SSD'lere sahip olmanız gerekecek, ancak bu muhtemelen gerekli hızlarla önemli değil.
John Keates

3
Linux'taki XFS'yi eski teknoloji olarak görüyorum. OP, donanımsal RAID üzerindeki ZFS'yi de kolayca çalıştırabilir. ZFS'yi tavsiye etmemin nedeni, gelen NFS senkronize yazma işleminin, tüm SSD havuzuna gerek olmadan düşük gecikmeyle SLOG tarafından absorbe edilmesine izin vermesidir.
ewwhite

6
Bir Shelby Cobra "Eski Teknoloji" dir, ancak çoğu arabanın kapısından dışarı çıkabilir. ZFS, başlangıçta hiçbir zaman yüksek performanslı bir dosya sistemi olarak tasarlanmamıştır ve belirli bir iş yüküyle kabarcıklı olarak hızlı olacak şekilde ayarlamak mümkün olsa da, varsayılan olarak tasarlanmamıştır. Daha fazla donanım, daha fazla hafıza ve birkaç dosya ve biçimlendirme seçeneğiyle XFS'nin size ücretsiz olarak sağladıklarını yenmesini sağlamak için çok fazla ayar gerektirecektir.
TB

4

25 Gb / sn Ethernet zaten sınırda-ana akım olsa da, PCIe tabanlı NVMe bu trafiği kolayca yakalar.

Referans için son zamanlarda dört normal çift xeon sunucu (bu durumda HPE DL380 Gen9s) kullanan küçük bir 'günlük yakalama' çözümü oluşturdum, her biri 6 x NVMe sürücülü, Infiniband üzerinden IP kullandım ancak bu 25 / 40Gbps NIC'ler aynı olurdu. ve sunucu başına 8GB / sn'ye kadar çekim yapıyoruz;

Temelde ucuz değil ama bugünlerde çok yapılabilir.


1
Evet, ama NVMe's'te ~ 50TB nasıl depolanır? İplikler ucuzdur, peki hızını eşit tutmak için nasıl birleşiriz ...
SvennD

Güzel, gerçekçi, tek bir sunucuda yalnızca 4 x 4 TB almanız gerekiyor, birden fazla sunucu kullanıyorum, muhtemelen yapamazsınız? Aksi halde R10’da 2.5 "10krpm’lik sadece yükler var
Chopper3

İstemiyorum daha çok, kapıya girmek dışında bu özelliklere ihtiyacımız olmayacak ve birden fazla sunucunun genel giderinin kabusu istemiyorum. sadece bir makine için. R10 yeterince hızlı olur mu? (harware
basımı

Kullanılmayan yedek setten ürettiğimiz bir Windows 2012R2 kutumuz var, NAS olarak kullanıyoruz, dahili olarak 6 x 400 GB SAS SSD'ler, her biri 25 x 900 GB 10k SAS diskleri ve bir D6000 olan 8 x D2600 rafı var 70 x 4TB disklere sahip olan ve 10 Gb / sn'lik bir NIC'yi kolayca tutabilecek raf, 25 Gb / sn'lik bir NIC ile henüz denememiştir.
Chopper3

1
@ MSalters Transfer hızı 200 MB / s olan 8/10 TB PMR (SMR olmayan) sürücü vardır. Hem RAID10 hem de RAID6'daki 12 veya 16 sürücü dizisi, gerekli 1.1 GB / sn aktarım hızını kolayca aşmalıdır.
shodanshok,

2

Büyük bir anlaşma gibi gelmiyor. Yerel donanım tedarikçimiz bunu standart bir ürün olarak sunuyor - görünüşe göre CCTV kayıt modunda 1400 MB / sn'yi sürekli olarak zorlayabilir, bu da en yüksek gereksinimlerinizden daha zor.

(Bağlantı varsayılan 12 GB yapılandırmasıdır, ancak 20x4TB'nin de bir seçenek olduğunu not ederler. Bu belirli model sunucuda kişisel bir deneyim yoktur.)


4
Eh, "standart ürün" ile, 20 x 600 gb sas 15k ve 3 x enterprise ssd'leri olan bir "siyah yazılım kutusuna" bakın. Adil bir teklif, donanım satıcımızdan benzer bir teklif aldık, ancak bana lisanslama maliyeti temelde ücretsiz olan bir şey için çılgınca (ZFS) Yapıyı paylaştığınız için teşekkür ederiz! (güzel bağlantı)
SvennD

2

1100 MB / s'de sıralı yazma, modern donanımla ilgili bir sorun değildir. Aniden, 8x5900 RPM dizüstü bilgisayar sürücülerine, 2x15000 RPM sürücülere ve 2x7200 RPM sürücülere sahip ev kurulumum, 16 GB bir kerelik yük taşıma kapasitesiyle 300 MB / sn.

Ağ, fiber kablolara sahip 10 GbE, ethernet üzerinde 9000 MTU ve uygulama katmanı Samba 3.0'dır. Depolama, baskın50 içinde üç 4-sürücü baskın 5 cildi üzerinde üç şeritli olarak yapılandırılmıştır. Kontrolör, port başına 6 Gb / sn'ye kadar LSI MegaRAID SAS 9271-8i'dir (ek olarak daha yavaş bir port çarpanına sahibim).

Herhangi bir tecrübeli sysadmin ile konuşun, hangi kontrollerin ve sürücülerin ihtiyaçlarınızı tam olarak karşılayacağını size söyleyebilmeliler.

Herhangi bir 12Gb / s denetleyiciyle deneyebileceğinizi ve her birinin sekiz 7200 RPM sürücünün iki yansıtılmış çizgisini yapılandırabileceğini düşünüyorum (neredeyse her sürücü yapmalıdır). Bağlantıyı doyurmak için 3-4 TCP bağlantılarına başlayın ve tek bir 10 GbE kart çifti kullanamıyorsa, dört kart kullanın.


2

Teğet bir şey, ancak çift 10 GbE bağlantı yerine InfiniBand kullanmayı düşünün. 56Gbps Infiniband kartlarını oldukça ucuza alabilir veya 100Gbps kartını çok daha fazla almayabilirsiniz ve Linux'ta IBFS üzerinde RDMA ile NFS kullanmak kolaydır; ele al). Bir anahtara, sadece iki InfiniBand kartına ve doğrudan bir bağlantı kablosuna (veya daha uzun mesafelere ihtiyacınız varsa bir InfiniBand fiber kabloya) ihtiyacınız yoktur.

MCB191A-FCAT gibi tek bağlantı noktalı bir Mellanox 56Gbps kart (8x PCIe 3.0), 700 dolardan az ve 2 metrelik bir bakır doğrudan bağlantı kablosu 80 dolar gibi.

Performans genellikle tüm kullanım durumlarında 10 GbE değerini sudan atar. Sunucuya, hepsi InfiniBand kullanamayan birçok farklı istemciden erişmeniz gerekmediği sürece olumsuz taraf yoktur (ve o zaman bile, Mellanox'un anahtarları, 10GbE ve 40GbE'yi IB'ye köprüleyebilir, ancak bu biraz daha fazla bir yatırımdır, tabii ki).


1

Bununla birlikte, ZFS ile yapmak mümkündür, ancak FreeBSD'yi kullanarak FreeBSD'yi kullanmayı düşünün. Bu, tek bir makinede muhtemelen 100 GBit sağlar.

1100 MBps kulağa çok benziyor ancak gerçekçi disk sürücüleri kullanarak bunu gerçekçi bir şekilde başarabilirsiniz. 75 TB alana ihtiyaç duyduğunu söylüyorsun, böylece aynalarda 24 8 TB sabit disk kullanabiliyorsun. Bu, size tek bir sürücünün 12x yazma hızını ve 24x sürücünün okuma hızını verir. Bu sürücüler 100 MB / sn'den daha fazla yazma hızına sahip olduğundan, bant genişliğini kolayca kaldırabilmelidir. Çok yavaş yazma hızlarına sahip olduklarından, SMR sürücülerinin bulunmadığından emin olun.

ZFS, her blok için sağlama toplamı oluşturur. Bu tek iş parçacıklı uygulanır. Bu nedenle, bloklanmaması için oldukça hızlı bir saat hızına sahip bir CPU'nuz olmalıdır.

Ancak, kesin uygulama detayları büyük ölçüde ayrıntılara bağlıdır.


12
"FreeBSD'nin daha hızlı bir ağ yığını var" [alıntı yapılması gerekiyor]
Jim Salter

Kesinlikle. Linux oldukça yetenekli.
ewwhite

1

Sigorta müşterileri üzerinden 10G NIC boşaltma verisini Gluster kümesine yerleştirdik. 3.0'dan beri elde edebileceği performansa inanamayacağınız biraz ayar gerektiriyor.

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.