vSphere Availability – Admission Control

vSphere HA Admission Control

vSphere HA, bir host arızası meydana geldiğinde sanal makinaların hizmet vermeye devam etmelerini sağlamak adına, yeterli miktarda kaynağın rezerve edildiğinden emin olmak için vSphere HA Admission Control kullanır.

Admission control, kaynak kullanımına kısıtlamalar getirir. Bu kısıtlamaları ihlal eden herhangi bir işleme izin verilmez.

Aşağıda örnekleri verilen işlemlere izin verilmeyebilir:

  • Sanal makina power on
  • Sanal makina migration
  • Bir sanal makina için CPU veya memory rezervasyonunun artırılması

vSphere HA admission control için teme nokta, cluster’ın kaç host’un arızalanmasını tolere edebileceği ve halen failover olarak çalışmasını garanti edebileceğidir. Host failover kapasitesi üç şekilde ayarlanabilir:

  • Cluster resource percent
  • Slot policy
  • Dedicated failover hosts

Admission control devre dışı bırakılabilir. Bununla birlikte bir arıza sonrası, admission control olmadan beklenen sayıda sanal makinanın yeniden başlatılabileceğinin garantisi yoktur. Admission control’ü tamamen devre dışı bırakmayın.

Seçilen admission control seçeneğine bakılmaksızın, VM kaynaklarını düşürme seçeneği de vardır. Bu ayar, VM kaynaklarının tolere edilebilecek düzeyde düşürülme yüzdesini belirtmek için kullanılır, fakat DRS aktif edilmediği sürece kullanılabilir durumda değildir.

Kaynak düşürme hesaplaması CPU ve memory kontrol edilerek yapılır. Bir sanal makinenin rezerve edilmiş memory miktarını ve memory overload miktarini hesaba katarak, bu sanal makinenin açılmasına, taşınmasına veya rezervasyon değişiklikleri yapmasına izin verip verilmeyeceğine karar verir. Sanal makine tarafından tüketilen gerçek memory, hesaplamada dikkate alınmaz. Çünkü memory rezervasyonu, sanal makinenin gerçek memory kullanımı ile her zaman ilişkili değildir. Gerçek memory kullanımı rezerve edilenden fazla ise, failover kapasitesi yetersiz kalır ve failover esnasında performans kaybına neden olur.

Cluster Resources Percentage Admission Control

Host arızalarından etkilenmemek için, cluster CPU ve memory kaynaklarını belirli yüzdeler ile rezerve ederek vSphere HA admission control’ü yapılandırabilirsiniz.

Bu tür admission control ile, vSphere HA failover için belirli miktarda CPU ve memory kaynağının rezerve edildiğinden emin olur.

Cluster resources percentage seçeneği ile vSphere HA, admission control’ü aşağıddaki gibi uygular:

  1. Cluster’daki power on durumda olan tüm sanal makinalar için toplam kaynak gereksinimini hesaplar.
  2. Sanal makinalar için toplam kullanılabilir host kaynaklarını hesaplar.
  3. Cluster için mevcut CPU failover kapasitesini (Current CPU Failover Capacity) ve mevcut memory failover kapasitesini (Current Memory Failover Capacity) hesaplar.
  4. Mevcut CPU failover kapasitesi (Current CPU Failover Capacity) veya mevcut memory failover kapasitesinin (Current Memory Failover Capacity) yapılandırılmış failover kapasitesinden düşük olup olmadığına karar verir. Eğer öyleyse, admission control çalışmasına izin vermez.

vSphere HA, sanal mkinaların gerçek rezervasyonlarını kullanır. Eğer bir sanal makinanın rezervasyonu yoksa, 0MB memroy ve 32MHz CPU uygulanır.

Computing the Current Failover Capacity

Power on durumda olan sanal makinalar için toplam kaynak gereksinimi, CPU ve memory olmak üzere iki bileşenden oluşur. vSpehre HA bu değerleri hesaplar.

  • CPU bileşeni: Açık olan sanal makinaların CPU rezervasyonlarını toplamak suretiyle oluşur. Bir sanal makina için CPU rezervasyonu yapılmadıysa, varsayılan olarak 32MHz atanır. Bu değer das.vmcpuminmhz gelişmiş seçeneği ile değiştirilebilir.
  • Memory bileşeni: Açık olan her sanal makinanın memory rezervasyonu (artı memory overhead) toplanarak oluşur.

Sanal makinalar için kullanılabilir toplam host kaynakları, host’ların CPU ve memory kaynakları eklenerek hesaplanır. Bu miktarlar, host’un toplam fiziksel kaynakları değil, sunucunun root kaynak havuzunda bulunan miktarlardır. Sanallaştırma amacıyla kullanılan kaynaklar bu miktara dahil değildir. Yalnızca bağlı olan ve vSphere HA arızası olmayan host’lar dahil edilir, maintenance mode’da olan host’lar dahil edilmez.

Mevcut CPU failover kapasitesi (Current CPU Failover Capacity),  toplam host CPU kaynaklarından toplam CPU kaynak gereksinimlerinin çıkarılması ile ve sonucun toplam host kaynaklarına bölünmesi ile hesaplanır. Mevcut memory failover kapasitesi (Current Memory Failover Capacity) de benzer şekilde hesaplanır.

Örnek 1: Cluster Resources Percentage Kullanarak Admission Control

Current Failover Capacity bu admission control policy ile hesaplanır ve kullanılır. Aşağıdaki örnek nasıl olduğunu gösteriyor:

  • Her biri farklı miktarda CPU ve memoty kaynağına sahip üç host’tan oluşan bir cluster’ımız var.

Host 1 – 9GHz CPU ve 9GB memory

Host 2 – 9GHz CPU ve 6GB memory

Host 3 – 6GHz CPU ve 6GB memory’ye sahip.

  • Cluster’da, farklı CPU ve memory gereksinimleri olan beş adet çalışır sanal makina var.

VM1 – 2GHz CPU ve 1 GB memory

VM2 – 2GHz CPU ve 1 GB memory

VM3 – 1GHz CPU ve 2 GB memory

VM4 – 1GHz CPU ve 1 GB memory

VM5 – 1GHz CPU ve 1 GB memory’ye ihtiyaç duyuyor.

  • CPU ve memory için mevcut failover kapasitesi (Current Failover Capacity) her ikisi için de %25 olarak ayarlanmıştır.

Örnek 2: Percentage of Cluster Resources Reserved Policy ile Admission Control

2GHz 
IGB 
9GHz 
9GB 
2GHz 
IGB 
IGHz 
2GB 
IGHz 
IGB 
total resource requirements 
7GHz, 6GB 
9GHZ 
6GB 
total host resources 
24GHz, 21GB 
IGHz 
IGB 
6GHZ 
6GB

Çalışır durumda olan sanal makinalar için toplam kaynak gereksinimi 7GHz CPU ve 6GB memory’dir. Toplam host kaynakları, 24GHz CPU ve 21GB memory. Bu değerler baz alındığında mevcut CPU failover kapasitesi (Current CPU Failover Capacity) %70’tir. Hesaplama şu şekilde yapılır:

(24GHz – 7GHz)/24GHz

Aynı hesaplama yöntemi ile mevcut memory failover kapasitesi (Current Memory Failover Capacity) %71’dir ve şu şekilde hesaplanır:

(21GB-6GB)/21GB

Cluster’ın konfigüre edilen failover kapasitesi (Configured Failover Capacity) %25 olarak ayarlandı. Bundan dolayı yeni sanal makinaların açılabilmesi için, cluster’ın toplam CPU kaynaklarının %45’I ve memory kaynaklarının %46’sı kullanılabilir durumdadır.

Slot Policy Admission Control

Slot policy seçeneğiyle, vSphere HA admission control belirli sayıda host arızalansa bile, bu host’lardaki sanal makinaların failover yapılabilmesi için cluster’da yeterli kaynağın kaldığından emin olur. Slot policy kullanılarak vSphere HA aşağıdaki şekilde admission control uyugular:

  1. Slot boyutunu hesaplar. Slot, memory ve CPU kaynaklarının mantiksal bir temsilidir. Varsayılan olarak, cluster’daki açık durumda olan herahngi bir sanal makinanın gereksinimlerini karşılayacak şekilde boyutlandırılır.
  2. Cluster’daki her bir host’un kaç slot tutabileceğini belirler.
  3. Cluster’ın mevcut failover kapasitesini (Current Failover Capacity) belirler. Bu, arızalı olsa bile açık olan tüm sanal makinalar için yeterli slot sağlayabilecek host’ların sayısıdır.
  4. Current Failover Capacity’nin, Configured  Failover Capacity’den (kullanıcı tarafından sağlanır) daha düşük olup olmadığını belirler. Eğer düşükse, admission control daha fazla VM’in açılmasına ve migration’a izin vermez

vSphere Web Client’ta hem CPU hem de memory için belirli slot size’lar ayarlayabilirsiniz.

Slot Size Calculation

Slot size, CPU ve memory olmak üzere iki bileşenden oluşur.

  • vSphere HA, açık olan her sanal makinenin CPU rezervasyon işlemini alıp en büyük değeri seçerek CPU bileşenini hesaplar. Sanal bir makine için bir CPU rezervasyon değeri belirtilmediyse, 32MHz’lik bir varsayılan değer atanır. das.vmcpuminmhz gelimiş seçeneği ile bu değer değiştirilebilir.
  • vSphere HA, açık olan her sanal makinenin memory rezervasyon ve memory overhead işlemini alıp en büyük değeri seçerek CPU bileşenini hesaplar. Memory rezervasyon için varsayılan bir değer yoktur.

Eğer cluster’ınızda, diğerlerinden daha büyük rezervasyona sahip sanal makinalar varsa, bunlar slot size hesaplamalarını bozabilir. Bunu önlemek için sırasıyla das.slotcpuinmhz veya das.slotmeminmb gelişmiş seçeneklerini kullanarak slot size CPU veya memory bileşeni için üst sınır belirtebilirsiniz.

Gelişmiş seçenekleri kullanarak sabit veya maksimum slot size belirttiyseniz, sanal makinalar birden çok slot’a ihtiyaç duyabilir. Birden çok slot ihtiyacı olan sanal makinaları görüntüleyerek cluster’daki kaynak parçalanma riskini de belirleyebilirsiniz. Bu, vSphere Web client’ta, admission control bölümünde hesaplanabilir.

Using Slots to Compute the Current Failover Capacity

Slot size hesaplandıktan sonra, vSphere HA her host’un sanal makinalar için mevcut CPU ve memory kaynaklarını belirler. Bu miktrarlar host’un toplam fiziksel kaynakları değil, root kaynak havuzunda bulunan miktarlardır. vSphere HA tarafından kullanılan bir host’un kaynak verileri, vSphere Web Client’ta Summary sekmesinde bulunabilir. Cluster’daki tüm host’lar aynı ise, bu veriler cluster seviyesi rakamlarını host sayısına bölerek elde edilebilir. Sanallaştırma amacıyla kullanılan kaynaklar dahil değildir. Yalnızca bağlı olan, vSphere HA arızası olmayan ve maintenance mode’da olmayan host’lar dikkate alınır.

Daha sonra her host’un destekleyebileceği en fazla slot sayısı belirlenir. Bunu yapmak için, host’un CPU kaynak miktarı, slot size’ının CPU bileşenine bölünür ve sonuç yuvarlanır. Aynı hesaplama, host’un memory kaynağı miktarı için yapılır. Bu iki sayı karşılaştırılır ve daha küçük sayı, host’un destekleyebileceği slot sayısıdır.

Current Failover Capacity, kaç host’un (en genişten başlayarak) arızalı olabileceğini belirleyerek ve hala tüm açık çalışan sanal makinelerin gereksinimlerini karşılamak için yeterli slot bırakarak hesaplanır.

Örnek 1: Admission Control Using Slot Policy

Örneğimizdeki cluster aşağıdaki kaynaklara sahiptir:

  • Her biri farklı miktarda CPU ve memoty kaynağına sahip üç host’tan oluşan bir cluster’ımız var.

Host 1 – 9GHz CPU ve 9GB memory

Host 2 – 9GHz CPU ve 6GB memory

Host 3 – 6GHz CPU ve 6GB memory’ye sahip.

  • Cluster’da, farklı CPU ve memory gereksinimleri olan beş adet çalışır sanal makina var.

VM1 – 2GHz CPU ve 1 GB memory

VM2 – 2GHz CPU ve 1 GB memory

VM3 – 1GHz CPU ve 2 GB memory

VM4 – 1GHz CPU ve 1 GB memory

VM5 – 1GHz CPU ve 1 GB memory’ye ihtiyaç duyuyor.

  • Host Failures Cluster Tolerates 1 olarak ayarlandı.

Örnek 2: Admission Control with Host Failures Cluster Tolerates Policy

2GHz 
IGB 
9GHz 
2GHz 
IGB 
1 GHz 
2GB 
slot size 
2GHz, 2GB 
9GHz 
6GB 
3 slots 
1 GHz 
IGB 
1 GHz 
IGB 
6GHz 
6GB 
3 slots
  • Slot size, sanal makinelerin CPU ve memory gereksinimlerini karşılaştırarak ve en büyüğünü seçerek hesaplanır.

En yüksek CPU gereksinimi (VM1 ve VM2) 2GHz. En yüksek memory gereksinimi (VM3) 2GB. Bu değerler baz alındığında, slot size 2GHz CPU ve 2GB memory olmakta.

  • Her host’un kaç slot destekleyebileceği belirlenir.

Host 1, 4 slot destekleyebilir

Host 2, 3 slot destekleyebilir (9GHz/2GHz ve 6GB/2GB’den küçük olan)

Host 3, 3 slot destekleyebilir

  • Current Failover Capacity hesaplanır.

En geniş slot kapasitesine sahip Host 1 ve bu arızalanırsa, çalışmakta olan 5 sanal makinaya yeterli olacak şekilde, cluster’da 6 slot kalıyor. Eğer Host 1 ve Host 2 aynı anda arızalanırsa, sadece 3 slot kalıyor ve yeterli olmuyor. Bu nedenle, Current Failover Capacity 1’dir.

Cluster’da 1 adet kullanılabilir slot vardır (Host 2 ve Host 3’teki toplam 6 slot’tan, 5 adet VM tarafından kullanılan 5 slot çıkarılır).

Dedicated Failover Hosts Admission Control

vSphere HA’i, belirli host’ları, failover host olarak atayacak şekilde yapılandırabilirsiniz.

Dedicated failover hosts admission control ile, bir host arızalandığında, vSphere HA, bu host’un üzerindeki sanal makinaları, failover host olarak belirlenmiş diğer host’larda yeniden başlatmaya çalışır. Eğer bu mümkün değilse, örneğin failover host’lar arızalanabilir veya kaynakları yetersiz olabilir, daha sonra vSphere HA bu sanal makinaları cluster’daki diğer host’lar üzerinde yeniden başlatmaya çalışır.

Failover host’ta spare (yedek) kapasitenin olduğundan emin olmak için, sanal makinaların açılması veya vMotion kullanarak failover host’a migrate edilmesi engellenir. Ayrıca, DRS, yük dengeleme için failover host’ları kullanmaz.

Dedicated failover hosts admission control kullanır ve birden çok failover host belirlerseniz, DRS, bu failover host’lar üzerinde çalışan sanal makinalar için VM-VM affinity rule’ların çalışması için zorlama yapmaz.

Leave a Reply