DRS nasıl çalışır?
Merhaba,
vCenter kullanılan hemen hemen bütün ortamlarda DRS enable durumdadır. Peki DRS nedir? DRS, cluster içerisinde bulunan host’ların yüklerini (CPU, RAM) dengelenmesini sağlayan teknolojinin adıdır.
Siz DRS‘i cluster üzerinde aktif hale getirdiğinizde host’un cpu, memory utilization durumuna göre üzerindeki virtual machine’ini veya virtual machine’leri utilization’ı daha düşük bir host üzerine taşır (vMotion) ve böylece host’lar üzerinde yük dengelenmesi sağlanmış olur.
DRS’e genel çerçevede bakıldığında vMotion ile virtual machine’leri farklı host’lara dağıtıldığını biliyoruz. Peki arka planda nasıl işlemler oluyor birazda bundan bahsetmek istiyorum.
DRS default olarak her 5 dakikada bir cluster’daki yük durumunu balance eder. Tabi eğer sizin cluster’ınızda bulunan kaynaklarda herhangi bir sorun yok ise DRS virtual machine’lerin yerini değiştirmez. DRS’in 3 farklı modu vardır. Automatic DRS mode’u virtual machine’lerin çalışacağı en iyi yeri belirler ve bu virtual machine’leri taşır. Yani seçimi size bırakmaz. Manual mode’da ise DRS virtual machine’lerin taşınacağı host’lar için öneri sunar ve kararı sistem yöneticisine bırakır.
Manual: Power on halde olan virtual machine’ler için DRS, virtual machine’lerin taşınması için host’ları seçmenizi ister.
Partially Automatic: Power on halde olan virtual machine’ler için DRS, cluster içerisinde bulunan host’ları seçer ve hangi virtual machine’lerin hangi host üzerine taşınacağının önerisinde bulunur.
Fully Automatic: Power on halde olan virtual machine’ler için DRS, taşınacak virtual machine’leri ve hangi host’a taşınacağını otomatik olarak seçer ve taşır.
DRS‘in devreye girmesinde 3 ana unsur vardır. Bunlar;
Migration Threshold: Cluster’ın DRS ayarlarında bulunan Migration Threshold değerini gösterir.
Target host load standard deviation: Bu değer Migration Threshold tarafından üretilir.
Current host load standard deviation: Cluster’da yük dengesizliğini gösteren bir değerdir. DRS yük dengelemesi yapmadıkça buradaki değer Target host load standard deviation değerinden az olacaktır.
Siz Cluster’da DRS’in Migration Threshold değerini değiştirirseniz buna bağlı olarak Target host load standard deviation değeride değişecektir. 2 host’lu bir cluster’da threshold değeri 3’de ayarlı ise Target host load standard deviation değeri 0.2 eğer sizin cluster’ınızda 3 host var ise bu değer 0.163 olacaktır.
Cluster’ınız imbalanced durumda iken yani dengesiz iken Current host load standard deviation değeri herzaman için Target host load standard deviation değerinden büyük olacaktır. Böyle bir durumda bir virtual machine’ini farklı bir host’a taşıyın bunu yapmanızın sebebi Current host load standard deviation değerinin yeniden hesaplanmasını sağlamaktır. Bu durumda eğer hale Current host load standard deviation değeri büyük ise cluster’da yük dengeli değildir. Tekrar yukarıdaki prosedürü uygulayın ve değerlerin normala dönmesini bekleyin.
Son olarak; DRS power on durumda olan virtual machine’ler için çalışır ve sadece cluster içerisinde bulunan virtual machine için çalışır. Yani farklı cluster’lar arası DRS yük dengelemesi yapmaz. Burada aklınıza hangi virtual machine’ler için yük dengelemesi yapıyor sorusu gelebilir. DRS bir virtual machine için üzerindeki kaynakların %100 kullanılabilir olacağını varsayar. Ancak DRS taşıma esnasında resource bölümünden yapılan limit’lere ve rezervasyonlara dikkat etmez. Yani bunu baz almaz.
Umarım faydalı olmuştur.
İyi çalışmalar.
mük
🙂