VMware vMotion, kesinti süresi olmadan sanal makinelerin (VM’ler) bir ESXi host’tan diğerine canlı geçişine olanak tanır. Zamanında devrim niteliğinde bir teknolojiydi. Bu yazımda, VMware vMotion’ın hızının nasıl artırılacağına dair birkaç öneri anlatacağım.
Sanal makineleri bir konumdan diğerine veya bir cloud’tan diğerine taşımak günümüzde yaygın bir iştir. VMware, temel teknolojiyi geliştirdi ve yıllar içinde optimize etti; ancak yöneticilerin vMotion’ı olması gerektiği gibi yapılandırdıklarından ve bazı iyi uygulamalara ve optimizasyonlara saygı gösterdiğinden emin olmaları gerekmektedir.
VMware ilk olarak 2003’te vMotion’ı tanıttı ve 2012’de vMotion’ın çalışması için paylaşılan storage artık gerekli değildi. Bu, hedef cluster makinelerinin cross-cluster migrations erişimi olmayabileceği durumlarda cluster’lar arası geçişler gerçekleştirmek için kullanışlıdır. Uygulamalar ve kullanıcılar, herhangi bir paylaşılan storage’i kullanmadan başka bir cluster’a taşınırken VM’lerin içinde çalışmaya devam edebilir.
Bundan bir yıl önce, multi-network interface (multi-NIC) vMotion’ı piyasaya sürerek daha yüksek hızlara olanak tanımakta ve VM’lerin geçişi için daha kısa sürelerle sonuçlanıyordu.
vSphere‘in 6.7 ile birlikte gelen NVIDIA GRID teknolojisi ile şifreli vMotion ve virtual graphic processor (vGPU) desteğini de tanıttı. Artık vGPU’lara sahip VM’lere sahip olabilir ve bunları cluster veya veri merkeziniz içinde hareket ettirebilirsiniz.
Resim-1
VMkernel Adapter;
VMware, bu VMkernel bağlantı noktasını “VMkernel networking interface” olarak adlandırır. Temel olarak vSphere ve ESXi’nin outside dünya ile iletişim kurmasını sağlayan virtual network aygıtıdır. VMkernel adpter’ları her zaman sonunda bir sayı ile “vmk” olarak adlandırılır (örn. vmk1, vmk2, vb.). Bir VMkernel adapter, vMotion trafiği, yönetim trafiği, iSCSI trafiği ve diğerleri gibi bazı hizmetleri sağlayabilir.
Daha yüksek hız ve verim ile kullanmak için;
VMware gereksinimleri yalnızca 1GbE NIC’lerdir; ancak, küçük 1 Gb NIC’ler, vMotion trafiğiyle hızla doygun hale gelebilir. Yapabiliyorsanız, 10Gb NIC’leri kullanın. Bunu söylemesi kolay, ancak her ortam 10Gb NIC’leri ve 10Gb’lik bir swtich karşılayamaz.
Zaman geçtikçe, 10Gb ağ çok küçük işletmeler için bile mainstream haline gelecek. Büyük işletmeler 40Gb veya 100Gb ağ hızlarına çıkmaktadır.
Host’unuz için 10 Gb’lik bir switch ve NIC’leri karşılayamıyorsanız, yardımcı olabilecek ve daha iyi vMotion hız süreleri sağlayabilecek alternatiflerde bulunmaktadır.
Bunlardan biri, birkaç 1 Gb NIC veya birkaç RJ45 bağlantı noktasına sahip olanları kullanmaktır.
Birden çok 1 Gb bağlantı noktasına sahip daha fazla fiziksel NIC veya NIC ekleyebilirsiniz. Host birden çok fiziksel NIC ekleyebilir ve vMotion sürecini hızlandırmak için bandwidth genişliğini kullanabilirsiniz. Piyasada bu senaryoya uyan tek, çift ve hatta dört bağlantı noktalı NIC modelleri bulunmaktadır.
Resim-2
vMotion işlemleri için birden çok fiziksel NIC’yi veya birkaç bağlantı noktasına sahip bir fiziksel NIC’yi yapılandırabilirsiniz. vMotion trafiği için kullanılan daha fazla fiziksel NIC, birden çok kanalın kullanılmasına izin verir. Bu, daha hızlı vMotion süreleri sağlamaktadır.
Halihazırda 10, 25 veya 100 Gb NIC’leri olan bir ortamınız varsa ve hala vMotion işleminin uzun sürdüğünü görüyorsanız, diğer ince ayarlar yine de vMotion sürecini hızlandırabilir ve optimize edebilirsiniz.
vMotion için etkinleştirilmiş bir VMkernel adaptörü kullanır. Bir VMkernel adapter eklediğinizde ve bunu vMotion için etkinleştirdiğinizde, yeni bir akış oluşturursunuz. Daha fazla akışla, daha fazla bant genişliği kullanımı vardır.
Her akışın üç yardımcısı (threads) vardır ve her birinin farklı bir rolü vardır. Completion helper, Crypto helper, ve Stream helper denir.
Diyelim ki 100 Gb civarında bir fiziksel NIC altyapısına sahip olsanız bile, bu tek fiziksel NIC üzerinde daha fazla akış oluşturarak bandwidth kullanımını iyileştirebilir ve mevcut bandwidth’i daha verimli kullanabilirsiniz.
Resim-3
VMware’e göre, bir akışın ortalama bandwidth utilization 15 GbE’dir. Fiziksel NIC yeteneği ile akış sayısı arasındaki korelasyon bizlere şunları vermektedir.
25GbE: 1 stream = 15 GbE
40GbE: 2 streams = 30 GbE
50GbE: 3 streams = 45 GbE
100GbE: streams = 90 GbE
vMotion, cross-vCenter veya high-end vMotions yapmamıza izin veren yeni “üst düzey” özelliklere sahip olduğundan, VMware bunu “üst düzey” lisanslama paketlerine de koydu.
Bir VM’yi bir ESXi’den diğerine taşıyabileceğiniz, hepimizin bildiği geleneksel vMotion, vSphere Essentials Plus adlı en düşük kaliteli pakette bulabileceğinizdir.
Aslında, lisanslama açısından iki farklı türde vMotion vardır:
vMotion , Storage vMotion ve X-Switch vMotion : Bunlar için vSphere Essentials Plus ve üstü gerekmektedir.
Cross-vCenter ve long-distance vMotion : Bu ise, vSphere Enterprise Plus veya vSphere Platinum gerekmektedir.