Ceph önbellek katmanı nasıl performans gösteriyor?
Giriş:
Bu yazıda, Ceph önbellek katmanının bir NVMe havuzu tarafından desteklenen bir önbellek katmanı oluşturarak bir HDD havuzunun performansını nasıl artırabileceğini gösteren bir karşılaştırmalı test paylaşıyoruz.
Ceph Önbellek Katmanı Nedir ve Nasıl Çalışır
Ceph önbellek katmanı, daha yavaş depolama cihazları için bir önbellek olarak daha hızlı depolama cihazlarının kullanılmasına olanak tanır. Bu, önbellek katmanı olarak hareket edecek şekilde yapılandırılmış hızlı/pahalı depolama cihazları (NVMe SSD'ler gibi) bir havuz oluşturmayı ve ekonomik bir depolama katmanı olarak hareket edecek şekilde yapılandırılmış silinme kodlu veya daha yavaş cihazlar (HDD'ler gibi) bir destek havuzu oluşturmayı içerir. Önbellek katmanı, destek katmandan sık erişilen verileri depolar ve istemcilerden gelen okuma ve yazma isteklerini karşılar. Önbellek katmanlama ajanı, belirli politikalara dayanarak periyodik olarak önbellek katmanından nesneleri temizler veya çıkarır.
Ceph Önbellek Katmanı Demo
Geçmişte, önbellek katman depolama cihazı olarak SATA SSD kullanıldığında, önbellek katmanının kullanımıyla performans artışı önemsizdi. Günümüzde, NVMe SSD'nin maliyeti birkaç yıl öncesine göre çok düştü ve NVMe SSD'nin performansı HDD'ye göre çok daha hızlıdır. Bir HDD havuzunda NVMe SSD kullanmanın önbellek katmanına büyük ölçüde yardımcı olup olamayacağını bilmek istiyoruz.
NVMe önbellek katmanının etkililiğini test etmek için, NVMe önbellek katmanının bir HDD tabanlı depolama havuzunun performansını artırıp artırmadığını görmek için bir test kurduk.
Küme Kurulumu
NVME Sunucuları | 3 x Ambedded Mars500 Ceph Appliances |
Her Mars 500 cihazının özellikleri | |
CPU | 1x Ampere Altra Arm 64-Core 3.0 Ghz |
Bellek | 96 GiB DDR4 |
Ağ | 2 portlu 25Gbps Mellanox ConnectX-6 |
OSD Sürücüler | 8 x Micron 7400 960GB |
HDD Ev Sahipleri | 3 x Ambedded Mars400 Ceph Appliances |
Her bir Mars 400 cihazının özellikleri | |
CPU | 8 düğüm Quad-Core Arm64 1.2 GHz |
Bellek | Düğüm başına 4GiB. Cihaz başına 32 GiB |
Ağ | Düğüm başına 2 x 2.5Gbps. Şasi içi anahtar üzerinden 2x 10 Gb uplink. |
OSD Sürücüler | 8 x 6 TB Seagate Exos HDD |
Ceph Küme bilgisi
- NVMe SSD üzerinde 24 x OSD (3x Ambedded Mars500 cihazı)
- HDD üzerinde 24x OSD (3x Ambedded Mars400 cihazı)
- HDD ve NVMe sunucuları ayrı CRUSH köklerinde bulunmaktadır.
Test İstemcileri
- 2 x fiziksel sunucu. 2x 25Gb ağ kartı
- Her sunucu 7x VM çalıştırır.
- Her VM'in 4x çekirdek ve 8 GB belleği vardır
Ambedded UVS yöneticisi ile Önbellek Katmanı kurulumu
1. HDD osd kullanarak temel bir havuz oluşturun.
2. NVMe SSD osd kullanarak bir NVMe havuzu oluşturun.
3. NVMe havuzunu HDD havuzunun önbellek katmanı olarak ekleyin.
varsayılan önbellek katmanı yapılandırmaları:
- Önbellek modu: yazma geri
- hit_set_count = 12
- hit_set_period = 14400 sn (4 saat)
- target_max_byte = 2 TiB
- target_max_objects = 1 milyon
- min_read_recency_for_promote & min_write_recency_for_promote = 2
- cache_target_dirty_ratio = 0.4
- cache_target_dirty_high_ratio = 0.6
- cache_target_full_ratio = 0.8
- cache_min_flush_age = 600 sn.
- cache_min_evict_age = 1800 sn.
Önbellek katmanını eklemek için HDD havuzunu önce ve sonra test ettik, test yükleri oluşturmak için en fazla 14 istemci kullandık. Her bir istemci, fio testi için bir RBD bağladı. Test yüklemesi bir istemciyle başladı ve her test işi tamamlandıktan sonra istemci sayısı arttırıldı. Her bir test döngüsü beş dakika sürdü ve Jenkins tarafından otomatik olarak kontrol edildi. Bir test işinin performansı, tüm müşterilerin sonuçlarının toplamıydı. Önbellek katmanlamasını test etmeden önce, ceph önbellek hedefi tam oranının (0.8) üzerinde dolana kadar verileri RBD'lere yazdık.
Şemalar, saf HDD havuzun performansının NVMe önbellek havuzu ekledikten sonra önemli ölçüde arttığını gösterdi.
Önbellek katmanı testi sırasında, ceph osd pool stats komutunu kullanarak havuz istatistiklerini gözlemledik. Önbellek ve temel havuzlarda sıvama, çıkarma ve yükseltme faaliyetleri gözlemlendi. Önbellek katmanı testi sırasında farklı zamanlarda havuz istatistikleri yakalandı.
Veri önbelleğe yazıldı
84 numaralı önbellek havuzu
21 MiB/s yazma hızında istemci giriş/çıkışı, 0 işlem/s okuma, 5.49k işlem/s yazma
86 numaralı mars400_rbd havuzunda bir şey olmuyor
bir şey olmuyor
Önbellek, yükseltme ve çıkarma işlemi yapıyordu
önbellek havuzu kimliği 84
istemci g/ç 42 MiB/s wr, 0 op/s rd, 10.79k op/s wr
önbellek katmanı g/ç 179 MiB/s çıkarma, 17 op/s yükseltme
pool mars400_rbd kimliği 86
istemci g/ç 0 B/s rd, 1.4 MiB/s wr, 18 op/s rd, 358 op/s wr
Önbellek boşaltılıyor
84 numaralı havuz önbelleği
istemci g/ç 3.2 GiB/s okuma, 830 op/s okuma, 0 op/s yazma
önbellek katmanı g/ç 238 MiB/s boşaltma, 14 op/s yükseltme, 1 PG boşaltılıyor
86 numaralı mars400_rbd havuzu
istemci g/ç 126 MiB/s okuma, 232 MiB/s yazma, 44 op/s okuma, 57 op/s yazma
PG çıkarılıyordu
pool önbellek kimliği 84
istemci g/ç 2.6 GiB/s rd, 0 B/s wr, 663 op/s rd, 0 op/s wr
önbellek katmanı g/ç 340 MiB/s boşaltma, 2.7 MiB/s çıkarma, 21 op/s yükseltme, 1 PG çıkarılıyor (tam)
pool mars400_rbd kimliği 86
istemci g/ç 768 MiB/s rd, 344 MiB/s wr, 212 op/s rd, 86 op/s wr
PG Boşaltma ve istemci G/Ç'si doğrudan temel havuza.(müşteriler veri yazıyordu)
havuz önbellek kimliği 84
müşteri giriş/çıkış hızı 0 B/s yazma, 0 işlem/s okuma, 1 işlem/s yazma
önbellek katmanı giriş/çıkış hızı 515 MiB/s boşaltma, 7.7 MiB/s atma, 1 PG boşaltma
mars400_rbd havuz kimliği 86
müşteri giriş/çıkış hızı 613 MiB/s yazma, 0 işlem/s okuma, 153 işlem/s yazma
Sürekli testlerden sonra, küme bir süre dinlendirildi ve 4 kB rastgele yazma testi yeniden yapıldı. Daha iyi bir performans elde ettik. Bunun nedeni, yeni yazma için önbellek alanının serbest bırakılmasıydı.
Bu testten sonra, HDD havuzunun önbellek katmanı olarak NVMe havuzunu kullanarak önemli bir performans artışı elde edilebileceğine eminiz.
Önbellek katmanının performansının garanti edilemeyeceğini belirtmek gerekir. Performans, o anda önbellek isabet durumuna bağlıdır ve aynı yapılandırma ve iş yükleriyle tekrarlanan testlerle aynı performans elde edilemez.
Uygulamanız tutarlı bir performansa ihtiyaç duyuyorsa, saf NMMe SSD havuzunu kullanın.
- İlgili Ürünler
Mars500 NVME Tüm Flash Ceph Depolama Cihazı
Mars 500
Mars 500 Ceph Appliance, yüksek performanslı bulut tabanlı veri depolama ihtiyaçlarını karşılamak için tasarlanmıştır. En son NVMe flash teknolojisini...
DetaylarMars 400PRO Ceph depolama aygıtı
Mars 400PRO
Mars 400 Ceph Appliance, yüksek kapasiteli bulut tabanlı veri depolama ihtiyaçlarını karşılamak üzere tasarlanmıştır. Düşük maliyetli TB başına...
Detaylar
Ceph önbellek katmanı nasıl performans gösteriyor? | UVS Yöneticisi - Ceph Dağıtımını Basitleştirme | Ambedded
2013 yılından beri Tayvan'da bulunan Ambedded Technology Co., LTD., blok ve nesne depolama çözümleri sağlayıcısı olmuştur. Ana veri depolama yönetimleri arasında Ceph depolama teknolojisi, ARM sunucu entegrasyonu, Yazılım tanımlı depolama, Kurumsal depolama optimizasyonu, Ceph cihazı maliyet tasarrufu, depolama yönetim yazılımı ve blok ve nesne depolama çözümleri bulunmaktadır. Veri merkezinde yüksek depolama verimliliği ile ölçeklenebilir depolama sistemleri ve profesyonel Ceph desteği sunmaktadır.
Ambedded, ARM mikro sunucularda son teknoloji Ceph depolama çözümleri sunar ve işletme depolama sistemlerini optimize etmek isteyen B2B alıcılar için özelleştirilmiştir. Hazır Ceph cihazlarımız, toplam sahip olma maliyetini (TCO) azaltır ve depolama yönetimini basitleştirir, blok, dosya sistemi ve nesne depolamayı birleşik bir platformda destekler. Yenilik ve müşteri desteğine olan bağlılığıyla Ambedded, ölçeklenebilir ve verimli SUSE Kurumsal Depolama Cihazı çözümleri için güvenilir ortağınızdır. İşletmenizde Ceph teknolojisinin tam potansiyelini kullanmak için sorunsuz entegrasyon ve profesyonel destek deneyimi yaşayın.
Ambedded, 2013 yılından beri müşterilere ölçeklenebilir depolama sistemleri ve maliyet etkin Ceph depolama yönetimi sunmaktadır. Gelişmiş teknoloji ve 20 yıllık deneyim ile Ambedded, her müşterinin ihtiyaçlarının karşılandığından emin olur.