vSphere Availability yazı serisinin üçüncü bölümünde vSphere HA’in nasıl çalıştığından bahsedeceğim. vSphere HA kısmını bir kaç bölümde işlemeye çalışacağım.
vSphere HA Cluster Oluşturma ve Kullanma
vSphere HA cluster’ları, bir grup ESXi host’un birlikte çalışmasına olanak tanır; böylece, bir grup olarak, her bir ESXi host’un tek başına sağlayabileceğinden daha yüksek düzeyde kullanılabilirlik vermesi sağlanır. Yeni bir vSphere HA cluster oluşturmaya karar verdiğinizde, yapmış olduğunuz seçimler cluster içindeki host’ların veya sanal makinaların, hatalara karşı yanıt verme biçimini etkiler.
Bir vSphere HA cluster oluşturmadan önce, vSphere HA’in host arızalarını ve yalıtımını (isolation) nasıl tanımladığını ve bu durumlara nasıl tepki verdiğini, admission control’un nasıl çalıştığını anlamak gerekir, böylece failover gereksinimlerinize uygun policy’yi de seçebilirsiniz. Bir cluster oluşturduktan sonra, gelişmiş seçeneklerle cluster’ın davranışlarını özelleştirebilir ve performansını optimize edebilirsiniz.
vSphere HA Nasıl Çalışır
vSphere HA, sanal makinaları, bunların üzerindeki uygulamaları ve host’ları, meydana gelebilecek arızalara karşı koruyarak yüksek erişilebilirlik sağlar. Cluster içindeki host’lar sürekli olarak izlenir ve bir arıza meydana geldiğinde sanal makinalar diğer host’lar üzerinde yeniden başlatılır.

Bir vSphere HA cluster oluşturulduğu zaman, bir adet host otomatik olarak seçilir ve master host olarak belirlenir. Diğer host’lar slave olarak belirlenir.
- Master host, vCenter Server ile iletişim kurarak tüm sanal makinaların ve slave host’ların durumunu izler.
- Çok farklı türde host hataları meydana gelebilir, master host bu arızayı tespit etmek ve uygun bir şekilde arızayla başa çıkmakla yükümlüdür.
- Master host, arızalı bir host ile bir network bölümünde bulunan veya network’ten izole olmuş bir host arasında ayrım yapmalıdır. Master host, arızanın türünü belirlemek için network ve datastore heartbeat yöntemini kullanır. Yani network ve datastore üzerinden slave host’ları izler.
Master ve Slave Host
vSphere HA cluster’a bir host eklendiği zaman, bu host’a bir agent yüklenir ve cluster içindeki diğer host’lar ile iletişim kurması için yapılandırılır. Cluster içindeki her bir host, master veya slave host olarak çalışır.

Bir cluster için HA aktif edildiğinde, tüm aktif host’lar cluster’ın master host’unu belirlemek için bir seçime katılırlar. En fazla datastore mount edilmiş olan host master seçiminde avantajlı durumdadır. Cluster başına en fazla bir master host olabilir, diğerleri slave olarak belirlenir. Master host arızalanırsa, kapatılırsa, standby mode’a alınırsa veya cluster’dan çıkarılırsa master host için yeni bir seçim yapılır.
Master host’un sorumlulukları aşağıda belirtilmiştir.
- Slave host’ların izlenmesi. Bir slave host arızalanırsa veya ulaşılamaz duruma gelirse, master host hangi sanal makinaların yeniden başlatılacağını belirler.
- Korunan tüm sanal makinaların güç durumunu izlemek. Bir sanal makina arızalanırsa, master host bu sanal makinanın yeniden başlatıldığından emin olur. Local yerleşim altyapısı kullanılarak, master host yeniden başlatmanın nerede yapılacağına karar verir.
- Clusterdaki host’ların ve korunan sanal makinalarının listelerinin yönetilmesi.
- Cluster için vCenter Server yönetim arabirimi (management interface) olarak davranma ve cluster sağlık durumunun raporlanması.
Slave host’lar sanal makinaları lokal olarak çalıştırarak, runtime durumlarını izleyerek ve durum güncellemelerini master host’a bildirerek cluster’a katkıda bulunur. Bir master host sanal makinaları çalıştırabilir ve izleyebilir. Slave ve master host’lar sanal makina ve Uygulama İzleme özelliklerini uygulayabilir.
Master host tarafından gerçekleştirilen işlevlerden biri, korunan sanal makinaların yeniden başlatılmasını düzenlemektir. vCenter Server, sanal makinaların kullanıcı tarafından kapalı durumdan açık duruma getirldiğini gözlemler. Bu andan itibaren bu sanal makina, master host tarafından korunmaktadır. Master host cluster içindeki datastore’larda korumalı durumdaki sanal makinaların listesini tutar. Yeni bir master host seçilmesi gerekirse, yeni master host hangi sanal makinaların korunmakta olduğunu bu bilgilerden görür. Bir host’u cluster’dan çıkarırsanız, bu host üzerindeki tüm sanal makinalar vSphere HA tarafından korunmasız duruma gelir.
Host Hata Türleri
vSphere HA cluster içindeki master host, slave host hatalarını tespit etmekle yükümlüdür. Tespit edilen hatanın türüne göre, host’ların üzerinde çalışan sanal makinaların fail over (yük devretme) yapılması gerekebilir.
vSphere HA cluster’da üç tür hata vardır:
- Failure. Host çalışamaz durumdadır.
- Isolation. Host, network’ten izole olmuştur.
- Partition. Host, master host ile bağlantıyı kaybetmiştir.
Master host, cluster’daki slave host’ların canlı durumda olup olmadığını kontrol eder. Bu iletişim saniyede bir network heartbeat (ağ sinyali) yoluyla gerçekleşir. Master host, slave host’lardan bu sinyalleri alamazsa, host’un arızalı olduğunu bildirmeden önce canlı durumda olup olmadığını kontrol eder. Master host’un gerçekleştirdiği bu canlılık denetimi, slave host’un datastore’lardan biri ile heartbeat alış verişi içinde olup olmadığını belirlemeye yöneliktir. Master host ayrıca, host’un management IP adreslerinin ICMP pinglerine cevap verip vermediğini denetler.
Master host, bir slave host üzerindeki agent ile direkt olarak iletişim kuramazsa, slave host ICMP pinglerine karşılık vermez. Agent heartbeat yapamıyorsa (ağ sinyali alıp veremiyorsa), arızalı olarak görülür ve bu host’un üzerindeki sanal makinalar diğer hostların üzerinde yeniden başlatılır. Bu tür bir slave host bir datastore ile heartbeat yapıyorsa, master host, slave host’un network partition’da olduğunu veya network’ten izole olduğunu varsayar. Yani master host, ilgili host’u ve onun sanal makinalarını izlemeye devam eder.
Host network izolasyonu (network isolation), host halen çalışmakta iken oluşur, fakat artık management network üzerindeki vSphere HA agent’larının trafiğini izleyemez. Bir host bu trafiği gözleyemezse, cluster isolation adreslerini pinglemeye çalışır. Bu pingleme de başarısız olursa, host network’ten izole olduğunu bildirir.
Master host izole olmuş host üzerindeki sanal makinaları izler. Master host bu sanal makinaların kapalı olduğunu ve kendisinin bu VM’lerden sorumlu olduğunu gözlemlerse, bunları yeniden başlatır.
Network altyapısı yedekliyse ve daima kullanılabilir bir ağ yolu varsa, host network isolation oluşma ihtimali daha azdır.
Proactive HA Arızaları
Bir Proactive HA arızası, host bileşenlerinden biri arızalanırsa meydana gelir. Bu durum, redundancy’nin kaybolmasına veya felaket diyebileceğimiz türden olmayan arızalara neden olur. Bununla birlikte, host üzerindeki VM’lerin işlevsel davranışı henüz etkilenmemektedir. Örnek olarak, bir host üzerindeki güç kaynaklarından (power supply) biri arızalanırsa, diğer güç kaynağı host’u çalıştırmaya devam eder. Fakat redundancy kaybolmuştur. Bu durum Proactive HA arızadır.
Bir Proactive HA arıza oluşursa, vSphere Web Client üzerindeki vSphere Availability sekmesinden bu durumu otomatize edebilirsiniz. Etkilenen host üzerindeki VM’leri başka bir host üzerine migrate edebilir ve bu host’u Maintenance mode’a alabilirsiniz.
Proactive HA özelliğini kullanabilmek için cluster’da vSphere DRS kullanmak zorundasınız.