VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

Bölüm 1. CPU Hakkında
Bölüm 2. Bellek Hakkında

Bugün vSphere'de disk alt sisteminin metriklerini analiz edeceğiz. Yavaş bir sanal makinenin en yaygın nedeni depolama sorunudur. CPU ve RAM söz konusu olduğunda sorun giderme hipervizör düzeyinde biterse, o zaman diskte sorunlar varsa, veri ağı ve depolama sistemiyle uğraşmanız gerekebilir.

Dosya erişimi için sayaçlar yaklaşık olarak aynı olsa da konuyu depolama sistemlerine blok erişim örneğini kullanarak tartışacağım.

Biraz teori

Sanal makinelerin disk alt sisteminin performansından bahsederken insanlar genellikle birbiriyle ilişkili üç parametreye dikkat eder:

  • giriş/çıkış işlemlerinin sayısı (Saniyedeki Giriş/Çıkış İşlemleri, IOPS);
  • verim;
  • giriş/çıkış işlemlerinin gecikmesi (Gecikme).

IOPS sayısı genellikle rastgele iş yükleri için önemlidir: farklı yerlerde bulunan disk bloklarına erişim. Böyle bir yüke örnek olarak veritabanları, iş uygulamaları (ERP, CRM) vb. verilebilir.

kapasite sıralı yükler için önemlidir: birbiri ardına yerleştirilmiş bloklara erişim. Örneğin dosya sunucuları (ancak her zaman değil) ve video gözetim sistemleri bu tür bir yük oluşturabilir.

Verim, G/Ç işlemlerinin sayısıyla aşağıdaki şekilde ilişkilidir:

Verim = IOPS * Blok boyutu, burada Blok boyutu blok boyutudur.

Blok boyutu oldukça önemli bir özelliktir. ESXi'nin modern sürümleri, boyutu 32 KB'a kadar olan bloklara izin verir. Blok daha da büyükse birkaç parçaya bölünür. Tüm depolama sistemleri bu kadar büyük bloklarla verimli bir şekilde çalışamaz, bu nedenle ESXi Gelişmiş Ayarlar'da DiskMaxIOSize parametresi vardır. Bunu kullanarak hipervizör tarafından atlanan maksimum blok boyutunu azaltabilirsiniz (daha fazla ayrıntı burada). Bu parametreyi değiştirmeden önce depolama sistemi üreticisine danışmanızı veya en azından değişiklikleri bir laboratuvar tezgahında test etmenizi öneririm. 

Büyük blok boyutunun depolama performansı üzerinde zararlı etkisi olabilir. IOPS sayısı ve verim nispeten küçük olsa bile büyük blok boyutunda yüksek gecikmeler gözlemlenebilir. Bu nedenle bu parametreye dikkat edin.

Gecikme – en ilginç performans parametresi. Bir sanal makinenin G/Ç gecikmesi aşağıdakilerden oluşur:

  • hipervizör içindeki gecikmeler (KAVG, Ortalama Çekirdek MilliSan/Okuma);
  • veri ağı ve depolama sistemi (DAVG, Ortalama Sürücü MiliSan/Komut) tarafından sağlanan gecikme.

Konuk işletim sisteminde görünen toplam gecikme (GAVG, Ortalama Konuk MiliSan/Komut) KAVG ve DAVG'nin toplamıdır.

GAVG ve DAVG ölçülür ve KAVG hesaplanır: GAVG–DAVG.

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama
Kaynak

daha yakından bakalım KAVG. Normal çalışma sırasında KAVG'nin sıfıra yönelmesi veya en azından DAVG'den çok daha az olması gerekir. KAVG'nin nerede beklendiğinin yüksek olduğunu bildiğim tek durum VM diskindeki IOPS sınırıdır. Bu durumda limiti aşmaya çalıştığınızda KAVG artacaktır.

KAVG'nin en önemli bileşeni, hipervizör içindeki işlem sırası süresi olan QAVG'dir. KAVG'nin geri kalan bileşenleri ihmal edilebilir düzeydedir.

Disk bağdaştırıcısı sürücüsündeki kuyruk ve aylara giden kuyruk sabit bir boyuta sahiptir. Yoğun yüklü ortamlar için bu boyutun arttırılması faydalı olabilir. öyle adaptör sürücüsündeki kuyrukların nasıl artırılacağını açıklar (aynı zamanda aylara giden kuyruk da artacaktır). Bu ayar, nadir görülen bir durum olan ay ile yalnızca bir VM çalıştığında çalışır. Ayda birden fazla VM varsa parametreyi de artırmanız gerekir. Disk.SchedNumReqOutstanding (talimatlar  burada). Sırayı artırarak sırasıyla QAVG ve KAVG'yi azaltırsınız.

Ancak yine de öncelikle HBA satıcısının belgelerini okuyun ve değişiklikleri bir laboratuvar tezgahında test edin.

Ay'a giden kuyruğun boyutu, SIOC (Depolama G/Ç Kontrolü) mekanizmasının dahil edilmesinden etkilenebilir. Sunuculardaki kuyruğu dinamik olarak aya göre değiştirerek kümedeki tüm sunuculardan aya eşit erişim sağlar. Yani, ana bilgisayarlardan biri orantısız miktarda performans gerektiren bir VM çalıştırıyorsa (gürültülü komşu VM), SIOC bu ana bilgisayardaki (DQLEN) kuyruk uzunluğunu aya kadar azaltır. Daha fazla detay burada.

KAVG'yi çözdük, şimdi biraz DAVG. Burada her şey basit: DAVG, dış ortamın (veri ağı ve depolama sistemi) neden olduğu gecikmedir. Her modern ve çok modern olmayan depolama sisteminin kendi performans sayaçları vardır. DAVG ile ilgili sorunları analiz etmek için onlara bakmak mantıklıdır. ESXi ve depolama tarafında her şey yolundaysa veri ağını kontrol edin.

Performans sorunlarını önlemek amacıyla depolama sisteminiz için doğru Yol Seçim Politikasını (PSP) seçin. Hemen hemen tüm modern depolama sistemleri PSP Round-Robin'i destekler (ALUA, Asimetrik Mantıksal Birim Erişimi ile veya ALUA olmadan). Bu politika, depolama sistemine giden tüm mevcut yolları kullanmanıza olanak tanır. ALUA durumunda yalnızca ayın sahibi olan denetleyiciye giden yollar kullanılır. ESXi'deki tüm depolama sistemlerinde Round-Robin politikasını belirleyen varsayılan kurallar yoktur. Depolama sisteminiz için bir kural yoksa, depolama sistemi üreticisinin, kümedeki tüm ana bilgisayarlarda karşılık gelen bir kural oluşturacak bir eklentisini kullanın veya kendiniz bir kural oluşturun. Detaylar burada

Ayrıca, bazı depolama sistemi üreticileri yol başına IOPS sayısının standart değer olan 1000'den 1'e değiştirilmesini önermektedir. Uygulamamızda bu, depolama sisteminden daha fazla performansı "sıkıştırmayı" ve yük devretme için gereken süreyi önemli ölçüde azaltmayı mümkün kıldı. denetleyici arızası veya güncellemesi durumunda. Satıcının önerilerini kontrol edin ve herhangi bir kontrendikasyon yoksa bu parametreyi değiştirmeyi deneyin. Detaylar burada.

Temel sanal makine disk alt sistemi performans sayaçları

VCenter'daki disk alt sistemi performans sayaçları Veri Deposu, Disk, Sanal Disk bölümlerinde toplanır:

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

Bölümünde Bilgi deposu VM disklerinin bulunduğu vSphere disk depolarına (veri depolarına) yönelik ölçümler vardır. Burada aşağıdakiler için standart sayaçlar bulacaksınız:

  • IOPS (Saniye başına ortalama okuma/yazma isteği), 
  • verim (Okuma/Yazma hızı), 
  • gecikmeler (Okuma/Yazma/En yüksek gecikme).

Prensip olarak sayaçların adlarından her şey açıktır. Buradaki istatistiklerin belirli bir VM (veya VM diski) için değil, veri deposunun tamamı için genel istatistikler olduğuna bir kez daha dikkatinizi çekmek isterim. Bana göre bu istatistiklere ESXTOP'ta bakmak en azından oradaki minimum ölçüm süresinin 2 saniye olduğu gerçeğinden hareketle daha uygundur.

Bölümünde Disk VM tarafından kullanılan blok cihazlarda metrikler vardır. Toplama tipinde IOPS için sayaçlar (ölçüm periyodu sırasındaki giriş/çıkış işlemlerinin sayısı) ve blok erişimiyle ilgili çeşitli sayaçlar (Komutlar iptal edildi, Veriyolu sıfırlanır) vardır. Bana göre bu bilgiyi ESXTOP'ta görüntülemek de daha uygundur.

Bölüm Sanal Disk – VM disk alt sisteminin performans sorunlarını bulma açısından en yararlı olanı. Burada her sanal diskin performansını görebilirsiniz. Belirli bir sanal makinede sorun olup olmadığını anlamak için gereken bu bilgidir. G/Ç işlemlerinin sayısı, okuma/yazma hacmi ve gecikmeler için standart sayaçlara ek olarak bu bölümde blok boyutunu gösteren kullanışlı sayaçlar bulunur: Okuma/Yazma isteği boyutu.

Aşağıdaki resimde IOPS sayısını, gecikmeyi ve blok boyutunu görebileceğiniz VM disk performansının bir grafiği bulunmaktadır. 

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

SIOC etkinleştirilmişse veri deposunun tamamına ilişkin performans ölçümlerini de görüntüleyebilirsiniz. Ortalama Gecikme ve IOPS ile ilgili temel bilgileri burada bulabilirsiniz. Varsayılan olarak bu bilgiler yalnızca gerçek zamanlı olarak görüntülenebilir.

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

ESXTOP

ESXTOP, bir bütün olarak ana disk alt sistemi, bireysel sanal makineler ve bunların diskleri hakkında bilgi sağlayan birkaç ekrana sahiptir.

Sanal makineler hakkındaki bilgilerle başlayalım. “Disk VM” ekranı “v” tuşuyla çağrılır:

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

NVDISK VM disklerinin sayısıdır. Her diskin bilgilerini görüntülemek için “e” tuşuna basın ve ilgilenilen VM'nin GID'sini girin.

Bu ekranda kalan parametrelerin anlamı isimlerinden anlaşılmaktadır.

Sorun giderme sırasında başka bir yararlı ekran Disk bağdaştırıcısıdır. “d” tuşu ile çağrılır (aşağıdaki resimde A,B,C,D,E,G alanları seçilmiştir):

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

NPTH – bu adaptörden görülebilen aylara giden yolların sayısı. Bağdaştırıcıdaki her yola ilişkin bilgi almak için “e” tuşuna basın ve bağdaştırıcının adını girin:

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

AKLEN – bağdaştırıcıdaki maksimum kuyruk boyutu.

Ayrıca bu ekranda yukarıda bahsettiğim gecikme sayaçları da bulunmaktadır: KAVG/cmd, GAVG/cmd, DAVG/cmd, QAVG/cmd.

“U” tuşuna basılarak çağrılan Disk cihazı ekranı, bireysel blok cihazları - aylar (aşağıdaki resimde A, B, F, G, I alanları seçilmiştir) hakkında bilgi sağlar. Burada aylar için kuyruğun durumunu görebilirsiniz.

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

DQLEN – bir blok cihaz için kuyruk boyutu.
AKTV – ESXi çekirdeğindeki G/Ç komutlarının sayısı.
QUED – kuyruktaki G/Ç komutlarının sayısı.
%AMERİKAN DOLARI – ACTV / DQLEN × %100.
YÜK – (ACTV + QUED) / DQLEN.

Eğer %USD yüksekse kuyruğu artırmayı düşünmelisiniz. Kuyrukta ne kadar çok komut varsa QAVG ve buna bağlı olarak KAVG de o kadar yüksek olur.

Ayrıca Disk cihazı ekranında VAAI'nin (Dizi Entegrasyonu için vStorage API) depolama sisteminde çalışıp çalışmadığını da görebilirsiniz. Bunu yapmak için A ve O alanlarını seçin.

VAAI mekanizması, işin bir kısmını hipervizörden doğrudan depolama sistemine aktarmanıza olanak tanır; örneğin sıfırlama, blokları kopyalama veya engelleme.

VMware vSphere'de VM performansının analizi. Bölüm 3: Depolama

Yukarıdaki resimde görebileceğiniz gibi VAAI bu depolama sistemi üzerinde çalışıyor: Zero ve ATS primitifleri aktif olarak kullanılıyor.

ESXi'de disk alt sistemiyle çalışmayı optimize etmeye yönelik ipuçları

  • Blok boyutuna dikkat edin.
  • HBA'da en uygun kuyruk boyutunu ayarlayın.
  • Veri depolarında SIOC'yi etkinleştirmeyi unutmayın.
  • Depolama sistemi üreticisinin tavsiyelerine uygun bir PSP seçin.
  • VAAI'nin çalıştığından emin olun.

Konuyla ilgili faydalı makaleler:http://www.yellow-bricks.com/2011/06/23/disk-schednumreqoutstanding-the-story/
http://www.yellow-bricks.com/2009/09/29/whats-that-alua-exactly/
http://www.yellow-bricks.com/2019/03/05/dqlen-changes-what-is-going-on/
https://www.codyhosterman.com/2017/02/understanding-vmware-esxi-queuing-and-the-flasharray/
https://www.codyhosterman.com/2018/03/what-is-the-latency-stat-qavg/
https://kb.vmware.com/s/article/1267
https://kb.vmware.com/s/article/1268
https://kb.vmware.com/s/article/1027901
https://kb.vmware.com/s/article/2069356
https://kb.vmware.com/s/article/2053628
https://kb.vmware.com/s/article/1003469
https://www.vmware.com/content/dam/digitalmarketing/vmware/en/pdf/techpaper/performance/vsphere-esxi-vcenter-server-67-performance-best-practices.pdf

Kaynak: habr.com

Yorum ekle