VMware High Availability (HA) VMware vSphere ortamında çalışan sanal makinelerin (VM) ve uygulamaların yüksek erişilebilirliğini (iş sürekliliğini) sağlamak için geliştirilmiş bir özelliktir. Ana amacı donanım veya yazılım arızaları nedeniyle bir ESXi hostun devre dışı kalması durumunda o host üzerinde çalışan sanal makinelerin cluster ortamındaki diğer hostlarda otomatik olarak yeniden başlatılmasıdır. Böylece planlanmamış kesintiler minimuma indirilir ve hizmet sürekliliği sağlanır.
VMware HA’nın Çalışma Mantığı
- Bir HA Cluster oluşturduğunuzda tüm ESXi hostlar vCenter Server tarafından yönetilen tek bir kaynak havuzunda birleşir.
- VMware HA bu cluster içindeki hostların ve sanal makinelerin sağlık durumunu sürekli kontrol eder.
- Eğer bir host erişilemez duruma gelirse:
- Master host o host üzerindeki VM’leri tespit eder.
- Cluster içindeki uygun kaynaklara sahip başka hostlar belirlenir.
- VM’ler bu hostlarda yeniden başlatılır.
Burada önemli nokta HA, VM’leri canlı (kesintisiz) taşımıyor. Bunun için vMotion gerekir. HA VM’leri kapatıp diğer hostlarda açarak çalıştırır. Bu yüzden kısa bir kesinti olur ama tamamen kayıp engellenir.
VMware HA’nın Bileşenleri
- Master ve Slave Hostlar:
- Cluster içinde bir host Master seçilir.
- Master host, diğer hostları ve VM’leri izler.
- Slave hostlar ise yük altında çalışan hostlardır.
- Heartbeat (Kalp Atışı) Mekanizması:
- Hostlar birbirine ağ üzerinden düzenli sinyal gönderir.
- Eğer bir hosttan belirli süre boyunca sinyal gelmezse “host down” kabul edilir.
- Yanlış tespitleri önlemek için “datastore heartbeat” de kullanılır.
- Admission Control:
- Failover anında VM’lerin başka hostlara sığabilmesi için, cluster kaynaklarının bir kısmı boş tutulur.
HA Neyi Çözer? (Hata sınıfları)
- Host arızası: ESXi tamamen gider (donanım, güç, kernel panic). → VM’ler diğer hostlarda yeniden başlatılır.
- Host izole/partition: Yönetim ağı kopuk ama host çalışıyor. → İzolasyon tespiti + datastore heartbeat’e göre aksiyon.
- Depolama arızası: Paylaşımlı LUN/iSCSI/NFS’e erişim kaybı.
- PDL (Permanent Device Loss): LUN kalıcı kayıp. → VMCP ile hızlı yeniden başlatma.
- APD (All Paths Down): Yollar geçici kayıp. → Politika “conservative/aggressive” seçimiyle restart/izleme.
- VM çökmesi: OS yanıt vermez → VM Monitoring reset/restart.
Not: HA canlı taşıma yapmaz o vMotion/DRS işidir. HA yeniden başlatır kısa kesinti vardır.
Mimari Bileşenler ve İş Akışı
- FDM (Fault Domain Manager) agent: Her ESXi’de kurulu HA ajanı (vCenter HA’yı etkinleştirince yüklenir).
- Master/Agent (Eski adıyla master/slave):
- Cluster’a bir “master” seçilir; host/VM envanterini ve health durumunu takip eder.
- Master kaybolursa otomatik yeniden seçim yapılır.
- Heartbeat mekanizmaları:
- Management network heartbeat: Hostların hayatta olduğuna dair sinyal (zaman aralıkları HA duyarlılığına göre değişebilir).
- Datastore heartbeat: Ağ sorunsuz değilse bile, paylaşımlı datastore üstünden “ben yaşıyorum” işareti yazar/okur. Yanlış failover riskini düşürür.
- Datastore seçiminde tüm hostların erişebildiği LUN’lar tercih edilir; varsayılan 2 datastore/host tutulur (gelişmiş ayarla artırılabilir).
İzolasyon ve Partition
- İzolasyon: Host, management gateway ve cluster’daki diğer hostlara ulaşamaz; ama VM’ler koşuyor olabilir.
- Partition: Host grupları birbirini görmüyor (ör. switch bölünmesi). Her partition içinde “geçici master” oluşabilir; datastore heartbeat ve vCenter kontrolüyle çakışma önlenir.
Admission Control (Kapasite Koruması)
Failover anında VM’lerin sığacağı garanti edilir. Politika seçenekleri:
- Yüzdeye dayalı (Recommended)
- Örn: CPU %25, RAM %25 “her zaman boş” tutulur → N+1 benzeri sınırlama.
- Tolerate N Hosts Failures (N+1/N+2)
- Kaç host arızasına dayanılacağı belirlenir; slot hesabı yerine daha modern yüzdeli yaklaşım tercih edilir.
- Dedicated failover hosts
- Bir veya daha fazla host “sadece failover için” boşta bekler (kaynak israfı pahasına en deterministik davranış).
İpucu: DRS etkinse, yüzdesel politika pratikte en esnek ve ölçeklenebilir yaklaşımdır.
Hızlı kapasite planlama örneği
- 4 host’luk cluster; her hostta 100 vCPU / 512 GB RAM kullanılabilir.
- N+1 hedefliyorsunuz → kaynakların ~%25’ini boş bırakın (tek host’un yükünü absorbe etmek için).
- Eğer VM’lerin “tepede” RAM patlaması oluyorsa, yüzdeleri RAM tarafında daha konservatif seçin (örn. CPU %20, RAM %30).
Failures and Responses (Hata olduğunda ne olacak?)
- Host Monitoring: Kapalıysa HA yeniden başlatma yapmaz (genelde açık bırakılır).
- VM Restart Priority: Highest / High / Medium / Low / Disabled
- Üst öncelik kritik VM’leri önce ayağa kaldırır.
- Orchestrated restart (bağımlılık grafiği): DB → App → Web sırayla, gecikme tanımlarıyla.
- VM Overrides: Cluster genel ayarlardan ayrık; tek tek VM bazlı hassas ayar.
VM Monitoring (VM kalp atışı)
- Kaynak: VMware Tools heartbeat + opsiyonel network I/O/Storage I/O sinyalleri.
- Duyarlılık: High/Medium/Low + custom zamanlayıcılar.
- Aksiyon: Önce reset, toparlanamazsa policy’ye göre restart.
VMCP – VM Component Protection (APD/PDL)
Depolama patolojilerini HA düzeyinde ele alır.
- PDL: LUN kalıcı kayıp → VMCP hemen yeniden başlat (başka hostta sağlıklı datastore varsa).
- APD: Tüm path’ler gitti (geçici olabilir).
- Conservative: Erişim geri gelmezse “güvenli” yeniden başlat.
- Aggressive: Kısa bekleme sonrası yeniden başlat; hızlı toparlanma sağlar ama yanlış pozitif riski biraz artar.
- APD Recovery: Erişim geri gelirse VM’leri bulunduğu hostta bırak (genelde önerilir).
Proactive HA (Donanım bozunumu)
- Host tamamen düşmeden önce (fan arızası, DIMM hata sayısı, PSU uyarısı, sıcaklık vs.) vendor health provider uyarılarını alır.
- Policy: Quarantine / Maintenance
- DRS, VM’leri sorunsuz hostlara proaktif taşır.
- Amaç: Düşmeden önce riskli hostu boşaltmak.
Ağ ve Depolama Tasarım En İyileri (Best Practices)
Ağ
- Management network için en az 2 fiziksel NIC (aktif/aktif veya aktif/standby).
- Management gateway’e ek olarak ek izolasyon adresi (örn. çekirdek switch IP’si) tanımlayın:
das.isolationAddressX
(X=1..10). - vMotion ve Management’ı ayrı VLAN’larda tutun; L3/L2 döngü ve ACL’leri gözden geçirin.
Depolama
- Datastore heartbeat için en az 2 paylaşımlı datastore tüm hostlarca erişilebilir olsun.
- iSCSI/NFS’de multipath ve baglantı yedekliliği; zaman aşımı parametreleri vendor önerilerine göre.
Cluster
- DRS: Fully Automated + VM/host kuralları (anti-affinity) kritik servisleri dağıtır.
- HA + DRS birlikte: Failover sonrası eşitleme (balancing) daha stabil olur.
Gelişmiş (Advanced) HA Ayarları – Sık Kullanılanlar
das.isolationResponse
: None / PowerOff / Shutdown- İzole host üzerindeki VM’lere ne yapılacağı (genelde PowerOff önerilir; çift güç, datastore heartbeat varsa güvenlidir).
das.isolationAddressX
: Ek izolasyon test IP’leri (ör. core switch SVI’ları).das.usedefaultisolationaddress
: Default gateway testini kapatıp sadece sizin adreslerinizi kullanabilir.das.heartbeatDsPerHost
: Datastore heartbeat sayısı (vars. 2).das.vmFailoverDelay
,das.vmMaximumRestartCount
: Restart ardışıklarının hassas ayarı.das.ignoreInsufficientHbDatastore
: Datastore heartbeat yetersizse HA yine de aktif olsun mu (genelde Hayır).Percent-based Admission Control
: Cluster Settings → % CPU/Memory rezervasyonu; DRS ile uyumlu tutun.
Gelişmiş ayarları değiştirmeden önce test/alt ortamda doğrulama önerilir.
Stretched/Metro Senaryolar (Opsiyonel)
- İki site, tek cluster (vMSC veya vSAN Stretched Cluster).
- HA site-affinity + DRS VM/host kuralları: VM’ler birincil siteye pinlenir, site kesilirse diğer tarafa ayağa kalkar.
- Witness bileşeni (vSAN stretched) bölünme beynini önler.
Adım Adım Kurulum (vSphere Client)
- Cluster oluştur → DRS + HA’yı “On” yap.
- Failures and Responses:
- Host Monitoring: On
- Admission Control: Percent-based (örn. CPU %25, RAM %25)
- VM Restart Priority & Orchestrated Dependencies: Kritik uygulama zincirinizi sırala.
- VMCP: PDL: Power off and restart VMs | APD: Conservative (ya da tecrübeye bağlı Aggressive)
- Datastore Heartbeating: “Select datastores” modunda tüm hostların eriştiği 2–4 datastore’u seç.
- Ağ izolasyon adresleri:
das.isolationAddress1/2
ekle. - Overrides: DB/Directory/License gibi kritik VM’lere Highest, gecikme ve bağımlılıkları tanımla.
- Proactive HA: Vendor health provider eklentisi varsa Enable + Quarantine.
- Test:
- VM Monitoring reset testi (tools heartbeat’i durdurma).
- İzolasyon testi (lab ortamında mgmt VLAN’ı kesip aksiyona bakma).
- Depolama APD/PDL senaryolarını simüle etme (lab şartlarında).
İzleme ve Günlükler (Troubleshooting)
- vCenter Alarmları: “Host has lost network connectivity”, “vSphere HA failed to failover”, “Insufficient resources to satisfy HA failover” vb.
- Log’lar:
- Host:
/var/log/fdm.log
(HA ajan ayrıntıları) - Host:
/var/log/vobd.log
,/var/log/hostd.log
,/var/log/vmkernel.log
(ağ/storage olayları)
- Host:
- Sık sorunlar:
- Insufficient failover resources: Admission Control yüzdesi yetersiz → yüzdeleri artır ya da kapasite ekle.
- Datastore heartbeat insufficient: Tüm hostlarca erişilen datastore seçilmemiş → ortak LUN/NFS ekle.
- False isolation: Sadece default gateway test edilmiş → ek
das.isolationAddress
tanımla. - VM restart sırası bozuk: Orchestrated dependencies ve start delay’leri yeniden ayarla.
Kurtarma adımı olarak “Reconfigure for vSphere HA” (cluster sağ tık) çoğu ajan-temelli sorunu düzeltir. Gerekirse host üzerinde Management Agents restart (DCUI) yapılır.
Kapasite/Performans İpuçları
- Right-size VM’ler: Aşırı vCPU/RAM rezervasyonu Admission Control’u gereksiz sıkılaştırır.
- Reservations/Shares/Limit’ler: Çok yüksek rezervasyonlar failover yerleşimini zorlaştırır.
- NUMA farkındalığı: Büyük VM’leri dağıtmak için DRS kurallarıyla host affinity/anti-affinity kullanın.
- Test edin: Kritik bakıma girmeden önce “host maintenance” simülasyonlarıyla boşaltma sürelerini ölçün.
Hızlı Kontrol Listesi
- DRS: On (Fully Automated)
- HA: On | Host Monitoring: On
- Admission Control: Percent-based (N+1 karşılanacak şekilde)
- VMCP: PDL=Restart, APD=Conservative/Aggressive
- Datastore Heartbeat: 2+ ortak datastore
- Ağ: Mgmt için 2 fiziksel NIC,
das.isolationAddress
tanımlandı - Orchestrated restart: Kritik bağımlılıklar sıralandı
- Proactive HA: Vendor health provider varsa aktif
- Log/Alarm izleme: fdm.log, vCenter alarmları
- Failover tatbikatı yapıldı (lab)