Başlangıç > VMware > 121: VAAI ve etkileri

121: VAAI ve etkileri

VAAI (vStorage APIs for Array Integration) vSphere 4.1 ile gelen, VMkernel tarafında gerçekleştirilen bazı disk operasyonlarının disk kutularına delege edilmesini ve bunun sonucunda hem performans hem de verimliliğin artırılmasını sağlayan bir özelliktir. Bu özelliği kullanabilmeniz içn gereken iki adet önkoşul vardır, ESX versiyonunuzun 4.1 olması ve disk kutusunun bu özelliği desteklemesi. Kutunuzun VAAI desteği olup olmadığını VMware Compatibility Guide ‘dan öğrenebilirsiniz.

VM’lerin yaptığı I/O dışında, VMkernel tarafından gerçekleştirilen bazı disk operasyonları vardır. Örnek olarak, template’den VM oluşturma, storage vMotion, disk klonlama gibi. Bu operasyonları gerçekleştirmek adına VMkernel, kopyalanacak her block için, disk kutusuna SCSI komutları (read request ve ardından da write request) gönderir. Dolayısı ile hem kendi CPU kaynaklarını hem de SAN kaynaklarını kullanır. Peki ya şu yapılamaz mıydı? VMkernel disk kutusuna özel bir komut gönderse, disk kutusu bu kopyalamayı kendi üzerinde hem de hiç SAN’e çıkmadan gerçekleştirse ve VMkernel’a sadece operasyonunun bilgisini gönderse. İşte VAAI ile yapılan budur.

VAAI ile gelen özellikleri üç sınıfta incelemek doğru olacaktır:

Hardware Accelerated Copy Offload: Template’den yeni bir VM oluşturma veya storage vMotion gibi disk klonlama gerektiren operasyonlarda kullanılır. Operasyonu VMkernel tetikler, disk kutusu gerçekleştirir. Dolayısı ile VMkernel her bir block için SCSI komutu göndermek zorunda kalmaz. Bunun sonucunda işlem çok daha hızlı tamamlanmakla birlikte, daha az CPU, memory ve disk I/O bandwidth (hem VMkernel hem de storage front-end controller tarafında) kullanılarak gerçekleşir.

Hardware Accelerated Write Same Offload: Sanal bir diske ilk yazma işlemi gerçekleşirken öncelikle ilgili alanın sıfırlanması gerekir. Eğer GUI üzerinden standard olarak bir disk yaratmışsak, her zaman gerçekleşecek durum budur. Bu tip disklere “lazy zeroed disk” adı verilir ve eğer disk performansı önemliyse yada cluster özelliklerine ihtiyaç duyuyorsanız, “eager zeroed disk” lere ihtiyacınız var demektir. Bu diskler yaratılırken sıfırlanırlar ve dolayısı ile yaratılmaları zaman alacaktır. Bir önceki özellikte bahsettiğimiz işlemlerin aynısı bunun için de geçerlidir, tek farkı diske sürekli sıfır bilgisi gönderilecek olması. Kazancımız yine performans ve etkili kaynak kullanımı.

Hardware Assisted Locking: VMFS yapısı gereği birden fazla ESX sunucusunun aynı datastore’a erişip read/write operasyonu yapmasına izin verir. Ancak bunu yaparken, datanın bozulmasını engellemek amacı ile bazı önlemler almak durumunda. VAAI öncesi metod, SCSI RESERVE ve RELEASE komutlarını içeren bir locking mekanizmasından ibaret idi. Yazma amaçlı bir LUN’a erişecek bir ESX önce SCSI RESERVE komutu gönderir ve LUN’a bir lock koyar, sonrasında da RELEASE ederdi. Böylelikle birim zamanda bir ESX sunucusu yazma işlemi gerçekleştirir ve data bozulmalarının önüne geçilirdi. Olumsuz noktası ise,  LUN lock durumda iken, yazma talebinde bulunan diğer ESX’lerin bekliyor olması ve bu durumun VM tarafında performans problemi olarak karşımıza çıkabilmesi. Böyle bir durumun sizde yaşanıp yaşanmadığını, VMkernel loglarında “SCSI reservation conflict” kelimelerini aratarak anlayabilirsiniz.

VAAI ile gelen yenilik, Atomic Test and Set (ATS) isimli, hardware üzerinde gerçekleşen bir locking mekanizmasının kullanılıyor olması. Böylelikle tüm LUN’a değil, sadece ilgili block’lara lock konuyor ve LUN’un geri kalanı erişilebiliyor. Bize yansıyan en büyük kazancı ise, “SCSI reservation conflict” derdi olmadan, daha fazla sayıda VM’i aynı LUN üzerinde barındırabilmek.

ESX(i) 4.1 kurduğunuz durumda, VAAI default olarak açıktır. Yani VAAI desteği olan bir disk kutusu üzerinden datastore yarattığınızda, hiçbir şey yapmanız gerekmez. Ancak yinede test amaçlı kapatıp açmak isterseniz, host üzerinde 3 adet advanced parametre ile bunu gerçekleştirebilirsiniz. Bu parametreleri değiştirdiğinizde anında etkili olacaktır. Kapatmak için:

  • DataMover.HardwareAcceleratedMove: 0
  • DataMover.HardwareAcceleratedInit: 0
  • VMFS3.HardwareAcceleratedLocking: 0

Yeni versiyonlarda yer alacak özellklerin sayısının daha da artacağına inanıyorum. Örnek olarak, NFS desteği ve silinen blokların disk kutusuna iletilmesi (thin provision kullanıldığında çok önemli bir özellik) gibi özellikler şimdiden konuşulandan bazıları.

Kategoriler:VMware Etiketler:,
  1. Henüz yorum yapılmamış.
  1. 11.07.2011, 21:08

Bir Cevap Yazın

Aşağıya bilgilerinizi girin veya oturum açmak için bir simgeye tıklayın:

WordPress.com Logosu

WordPress.com hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Google+ fotoğrafı

Google+ hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Twitter resmi

Twitter hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

Facebook fotoğrafı

Facebook hesabınızı kullanarak yorum yapıyorsunuz. Çıkış  Yap /  Değiştir )

w

Connecting to %s

%d blogcu bunu beğendi: