Bu yazıda vCenter HA’in ne olduğunu ve nasıl çalıştığını anlatmaya çalışacağım. Konfigürasyon ve devreye alma işlemini ayrı bir yazıda anlatmaya çalışacağım.
VMware vSphere 6.5 versiyonu, vCenter HA özelliği ile birlikte geldi. vCenter HA devreye alındığında, vCenter’ı donanım ve uygulama hatalarına karşı korumuş olursunuz.Güncelleme ve yama geçme gibi işlemleri minimum down time ile gerçekleştirebilirsiniz. vCenter HA Windows vCenter Server ile desteklenen bir özellik değil. Sadece vCenter Server Appliance ile yapılabilir.
Şunu da belirtmekte fayda var ki; vCenter HA özelliği Disaster Recovery yerine kullanılmamalı.
vCenter HA yapısında 3 Node vardır. Active (mevcutta çalışan) vCenter’ın clone’u alınarak Passive ve Witness node’lar oluşturulur.
Her bir vCenter Node’un 2 adet network kartı bulunur. İlk network kartı (eth0), Active olan node’un kurulumu sırasında eklenir ve Management Interface olarak kullanılır. vCenter HA enable edildiğinde, Active Node’un clone’u alındığından, Passive ve Witness Node’larda da Management Interface eklenmiş olur. İkinci network kartı (eth1) ise vCenter HA enable edildiğinde otomatik olarak eklenir.
Active node üzerindeki management interface, vCenter’ın FQDN, IP e MAC adres bilgilerini içerir. Passive Node üzerindeki management interface, yönetimsel olarak down durumdadır. Bunun nedeni, Active node ile aynı IP bilgilerini paylaştıklarından çakışma olacak olması. Eğer Active node herhangi bir sebepten dolayı offline olursa, Passive node üzerindeki management interface aktif olur ve Active node üzerindeki IP ve MAC bilgilerini alır.
Node’ların sahip oldukları ikinci network kartları, vCenter HA network’ünü oluşturur. vCenter HA network’ü, Management network’ünden farklı bir subnet’te olmalı. 3 Node birbiri ile vCenter HA network’ü ile iletişim kurar.
Active node’da, Veritabanı (DB) ve File System üzerinde dosyalar bulunur. Bu dosyalar konfigürasyon dosyaları, event’ler olaiblir. DB ve dosyalar, Active node’dan Passive’ node’a doğru replike olur. İlk olarak DB replike edilir. DB replikasyonu, Synchronus replikasyondur ve Postgres veritabanı replikasyon özellikleri kullanılır. İkinci replikasyon dosyaların replikasyonudur. Dosya replikasyonu Asynchronus replikasyondur ve Rsync olarak bilinen Linux tabanlı replikasyon kullanılır.
Active node erişilemez duruma gelirse, Passive node üzerinde yönetimsel olarak down durumda olan network kartı online duruma gelir ve daha önce Active node üzerinde olan FQDN, IP ve MAC adres bilgilerini üzerine alır. Böylece aynı IP ve FQDN üzerinden vCenter’a bağlanmaya devam edebiliriz.
vCenter HA yapısında tek yönlü bir replikasyon vardır. Bu nedenden dolayı Active node erişilemez olduğunda ve Passive node Active olarak görev yapmaya başladığında replikasyon durur. Bu durumda iki seçenk vardır.
Birinci seçenek, erişilemez duruma gelen vCenter node’un takrar online olarak çalışır duruma getirilmesi. Bu seçenekle devam edildiğinde, fail durumu öncesinde Active olarak çalışan Node, Passive olarak çalışmaya başlar. Yeni durumda Active olan node, bu durumu en kısa sürede fark eder ve Passive olan Node’a doğru replikasyonu başlatır.
2. seçenek, eğer fail olan node geri getirilemezse, vCenter HA konfigürasyon seçeneklerinden vCenter HA’i yeniden deploy edebiliriz. Bu işlem vCenter çalışmasını ve erişimini engellemez, sistem kesintiye uğramadan çalışmaya devam eder. DB ve dosyaların ilk replikasyonundan sonra vCenter HA devreye girer.
Witness node erişilemez duruma gelirse ne olur? Witness node sadece Quorum servisleri için kullanıldığından, bu node’u kaybetmek vCenter’ın çalışmasını engellemez. Ancak vCenter HA cluster degraded durumda çalışır ve Automatic Failover devreye girmez.
Bildiğiniz gibi vCenter, Embedded PSC ve External PSC olarak iki farklı senaryoda çalışabilmekte. Buraya kadar anlattıklarım Embedded PSC senaryosu için geçerlidir. Eğer External PSC kullanılırsa vCenter HA nasıl çalışır?
Ortamda 2 tane PSC olduğunu ve vCenter HA’in devreye alındığını düşünelim.
1. PSC’lerden biri erişilemez duruma geliyor.
2. Active vCenter fail olan PSC’nin IP’sini bildiği için aynı PSC’ye erişmek istiyor fakat erişemiyor.
3. Bu durumda, Active vCenter’a diğer PSC’nin IP bilgisinin manuel olarak verilmesi gerekiyor. Ancak manuel olarak yapılan bu işlem Passive vCenter’a replike olmuyor.
4. Bu süreçte Active vCenter da fail oluyor. Passive vCenter, Active duruma geliyor.
5. Fakat fail durumundan önce Active olan vCenter’a manuel olarak verilen diğer PSC’nin IP bilgisi yeni durumda Active olan vCenter’da olmadığı için bu vCenter halen fail durumda olan PSC’ye gidecektir.
Böyle bir yapıda, çalışan bir vCenter Ha cluster mimarisinden söz edilemez.
Tüm bu sorunların oluşmasını önlemek için, External PSC kullanılan ortamlarda Load Balancer kullanılması gerekiyor. Böylece Active ve Passive Node’lar, Load Balancer’ın Virtual IP’sine bağlanılar. Arka tarafta hangi PSC’nin çalıştığının önemi yoktur.