vSphere 6.5 – DRS Yenilikleri
Merhaba,
vSphere 6.5 ile birlikte gelen DRS yeniliklerinden kısaca bahsetmek istiyorum. Tabi burada bahsedeceğim özellikler ürünün release olmasına kadar değişebilir veya ek özellikler gelebilir. Ben bu yazımda vSphere 6.5 ile DRS tarafında hangi değişikliklerin yapıldığını anlatacağım.
DRS sayesinde cluster içerisinde bulunan virtual machine’ler ESXi host’lar arasındaki yük otomatik olarak dengeleniyor. DRS, CPU ve Memory denetimi yaparak ESXi host’lar arasındaki yükü dengeler. Daha önce DRS ile ilgili yazmış olduğum yazılara aşağıdaki link’den ulaşabilirsiniz.
VMware DRS Memory Resource Charts
vSphere 6.5’de DRS’i enable ettiğimizde Additional Options bölümünde karşınıza 3 tane seçenek çıkıyor.
- VM Distribution
- Memory Metric for Load Balancing
- CPU Over-Commitment
Bu seçenekleri kısaca inceleyecek olursak;
VM Distribution:
Eğer bu seçeneği seçerseniz virtual machine’ler her host üzerine eşit birşekilde dağılacaktır. 100 tane virtual machine’iniz olduğunu ve 4 tane ESXi host’unuz olduğunu düşünün. VM Distribution seçeneği seçili olur ise her host üzerine 25 virtual machine gelecek şekilde virtual machine’leri dağıtır. Tabi burada her virtual machine farklı cpu ve memory miktarlarına sahip olacaktır. Tüm virtual machine’lerin eşit dağıtılması durumunda eğer performansda ciddi bir dengesizlik tespit eder ise, VM Distribution seçeneğine bakmaksızın virtual machine’leri migrate edilir. Yani bu seçenek seçili olsa bile herzaman için performans birinci öncelik oluyor.
Memory Metric for Load Balancing:
DRS bir host üzerindeki memory yükünü hesaplarken active memory’nin +%25 değerini kullanır. Default olarak active memory miktarı kullanılarak yük dengeleme yapılır. Eğer bu seçenek seçilir ise consumed memory miktarına göre yük dengeleme yapılır. Aslında buradaki seçenek HA tarafında yaptığınız ayarlar ile doğrudan ilişkilidir. Bu seçeneği seçtiğiniz takdirde host’lar üzerinde Memory overcommit oluşmayacaktır. Yük dengelemesi buna göre yapılacaktır.
CPU Over-Commitment:
Bu seçenek sayesinde vCPU:pCPU’ya oranını belirtebilirsiniz. Burada belirteceğiniz ratio değeri oldukça önemlidir. Eğer burada belirteceğiniz değerlere ulaşılırsa cluster içerisinde yeni virtual machine power on edilmesine izin verilmez. Kısacası DRS sayesinde CPU Over-Commitment oranı sürekli dengede tutulur.
Network-Aware DRS
vSphere 6.5 ile birlikte DRS daha akıllı bir şekilde yük dengeleme yaparken buna ek olarak Network-Awareness özelliğide gelmiştir. Bu özellik sayesinde bir virtual machine farklı bir host’a migrate edilmeden önce host üzerindeki network bandwidth kontrol edilir. DRS, uplink’ler üzerindeki Tx ve Rx değerlerini kontrol ederek esxi host’u busy olarak işaretleyebilir. Artık DRS bir virtual machine’i taşımadan önce ESXi host üzerindeki network saturation’ı kontrol edecektir. Peki bu nasıl çalışıyor? DRS hala CPU ve Memory kontrollerini yaparak migrate işlemlerini gerçekleştirir ancak eğer bir host üzerindeki uplink’lerin utilization’ı %80’den fazla ise bu host üzerine yeni bir virtual machine alınmaz. Çift uplink’in ve 10gbit network kartlarının yer aldığı bir ortamda zaten %80 network utilization’ı yakalamak oldukça zordur 🙂 Oyüzden DRS’in bu özelliği çok çekici gözükmüyor ama yinede güzel 🙂
- Performance increase of more than 2.5x throughput
- 70% resource reduction at scale
- VM Power-on latency improved by more than 3x
- DRS Cluster Compatibility Check
- > 21x improvement
- Less than 2% CPU utilization
- > 850 MB resource reduction
Her sürümde olduğu gibi vSphere 6.5’da da DRS’in algoritmasında çeşitli değişiklikler yapılmıştır. Yapılan değişikliklerin kazandırdığı verileri yukarıda görebilirsiniz. DRS özelliği VMware müşterilerinin %97’si tarafından kullanılmaktadır. HA ve DRS VMware’in en önemli özelliklerinden birtanesi olduğu için bununla alakalı sürekli iyileştirme işlemleri yapılacaktır.
Predictive DRS:
Predictive DRS özelliği vSphere 6.5’in önemli bir parçasıdır. vSphere 6.5 ile birlikte Predictive DRS özelliği gelmiştir. Bu özellik çok dikkat çekici. DRS artık doğrudan VROPS ile entegre çalışmaktadır. Eğer siz Enable Predictive DRS seçeneğini seçerseniz ve ortamınızda bir VROPS kurulu durumda ise, VROPS DRS’e önerilerde bulunarak virtual machine’lerin migrate işlemlerini gerçekleştirir.
vSphere 6.5 ile DRS, VROPS ile tam entegre çalışır. VROPS, vCenter üzerinden virtual machine’e ait geçmiş CPU ve Memory değerlerini çeker ve bir hesaplama yapar. Biraz daha detaylı bilgi verecek olursak, virtual machine’in gün içerisinde yapmış olduğu CPU ve Memory hareketlerini VROPS üzerinde kayıt altına alınır. Bunun neticesinde virtual machine’in performansındaki olumsuzluklara önceden müdahale edilir. Bunu aslında aşağıdaki grafik üzerinden daha iyi yorumlayabiliriz.
Yukarıdaki grafiğe göre kırmızı alan Predicted, mavi alan ise Observed olarak gösterilmiş. Observed virtual machine’in gün içerisinde yapmış olduğu resource kullanımıdır. Predicted ise virtual machine’in önceden yapacağı resource kullanımını tahmin etmesidir. Virtual machine’in gün içerisinde yapmış olduğu resource kullanımları VROPS tarafından yorumlanır. DRS, VROPS’dan bu dataları alarak virtual machine’in resource tüketmeye başlamadan önce farklı bir host üzerine migrate eder. Tabi kaynak ihtiyacı var ise migrate eder. Kısacası virtual machine’in önceden yapacağı resource kullanımını VROPS aracılığı ile önceden tahmin eder ve DRS buna göre işlem yapar.
Yukarıdaki grafikte bir virtual machine’in sabah 11 ile öğlen 13 arasındaki memory kullanımını görüyorsunuz. Burada Predictive DRS enable durumda ise ortalama sabah 10 gibi VROPS üzerinden DRS’e resource kullanım bilgisi aktarılacak ve sabah 11’den önce vMotion işlemi gerçekleşecektir.
Son olarak Predictive DRS’in enable edilmesi oldukça basit. Cluster settings’e giriş yaptıktan sonra DRS > Predictive DRS seçeneğini işaretlememiz yeterli olacaktır. Predictive DRS’i kullanmak için VROPS üzerinde basit bir ayar yapmak gerekebilir ancak bununla alakalı detaylı bir bilgi paylaşılmadı.
Umarım faydalı olmuştur.
İyi çalışmalar.