Küçük bir web sunucusu grubu için yeni paylaşılan depolama altyapımı planlıyorum. Bu nedenle birçok NAS dosya sistemiyle birçok test yaptım. Bunu yaparak, bazı beklenmeyen sonuçlar elde ettim ve buradaki birisinin bunu onaylayıp onaylayamayacağını bilmek istiyorum.
Kısacası: Samba, küçük dosya yazarları için NFS ve GlusterFS'den oldukça hızlıdır.
İşte yaptığım şey: Küçük dosyaların yazma performansını karşılaştırmak için birçok dosya içeren basit bir "rsync benchmark" kullandım. Daha kolay üreme için, şimdiki şimdi wordpress tar.gz'nin içeriğiyle yeniden yaptım.
- GlusterFS 2: 32-35 saniye , yüksek CPU yükü çoğaltıldı
- GlusterFS single: 14-16 saniye , yüksek CPU yükü
- GlusterFS + NFS istemcisi: 16-19 saniye , yüksek CPU yükü
- NFS çekirdek sunucusu + NFS istemcisi (eşitleme): 32-36 saniye , çok düşük CPU yükü
- NFS çekirdek sunucusu + NFS istemcisi (zaman uyumsuz): 3-4 saniye , çok düşük CPU yükü
- Samba: 4-7 saniye , orta CPU yükü
- Doğrudan disk: <1 saniye
Kesinlikle hiçbir samba gurusu değilim (sanırım son bağlantım samba 2.x ile yapıldı), bu yüzden burada hiçbir şeyi optimize etmedim - sadece kullanıma hazır config (debian / squeeze package). Eklediğim tek şey "sync always always = yes" yazdıktan sonra senkronizasyonu zorlaması gerekiyordu (ancak bu sonuçları görüyordum ..). Onsuz, 1-2 saniye daha hızlı olan testler.
Aynı makinede yapılan tüm testler (kendi kendine monte edilmiş NAS ihracat), bu yüzden ağ gecikmesi olmaz - saf protokol performansı.
Yan düğüm: Dosya sistemi olarak ext4 ve xfs kullandım. Yukarıdaki sonuçlar ext4 iledir. xfs% 40'a kadar (daha az zaman) daha iyi performans gösterdi. Makineler EC2 m1.small örneklerdir. NAS dışa aktarımı, EBS birimlerinde, geçici diskteki kaynaklar (tar katlanmış) üzerindedir.
Öyleyse işte başlıyoruz: Samba'nın neden bu kadar hızlı olduğunu söyleyen var mı?
Ayrıca: Çekirdek modunda NFS performansı, eşitleme modunda o kadar korkunç (GlusterFS NFS sunucusu tarafından daha iyi) olması mı gerekiyor? Bunun nasıl ayarlanacağı hakkında bir fikrin var mı?
Teşekkürler, l