Sistem/DevOps•8 dk okuma

Hyper-V Failover Clustering ve Cluster Shared Volumes (CSV) ile Sıfır Kesinti Mimarisi

Windows Server 2022 üzerinde çok düğümlü Hyper-V Failover Cluster kurulumu, iSCSI paylaşımlı depolama, Cluster Shared Volumes (CSV) yapılandırması ve canlı göç (Live Migration) ağ optimizasyonu.

AE

Ahmet Ertekin

18 February 2024

Hyper-V Failover Clustering ve Cluster Shared Volumes (CSV) ile Sıfır Kesinti Mimarisi

Hyper-V Failover Clustering ve Cluster Shared Volumes (CSV) ile Sıfır Kesinti Mimarisi

Büyük ölçekli kurumsal yapılarda donanım arızalarına karşı en etkili zırh, fiziksel sunucuların bir küme (cluster) halinde birbirini yedeklemesidir. İki düğümlü (2-Node) bir Windows Server 2022 Hyper-V ortamında paylaşımlı depolama kullanarak Cluster Shared Volumes (CSV) ve Canlı Göç (Live Migration) mimarisini kurarken edindiğim saha prensiplerini aktarıyorum.

Ağ Topolojisinin Segmentasyonu

Hyper-V kümesinde en yaygın yapılan hata, tüm trafiği tek bir fiziksel ağ kartı üzerinden geçirmeye çalışmaktır. Kararlı bir yapı için en az 4 bağımsız ağ segmenti oluşturulmalıdır:

  1. Management (Yönetim): Domain iletişimi ve RDP yönetimi.
  2. iSCSI / SAN Trafiği: Depolama birimine (Storage) bağlanan Jumbo Frame (MTU 9000) destekli çift hat.
  3. Cluster Heartbeat: Hostların birbirinin yaşadığını kontrol ettiği yüksek öncelikli ağ.
  4. Live Migration: Sanal makinelerin RAM içeriğinin hostlar arasında aktarıldığı 10GbE yüksek hızlı hat.
# Hyper-V Failover Cluster özelliklerini kurma
Install-WindowsFeature -Name Failover-Clustering, Hyper-V, Multipath-IO, RSAT-Clustering-PowerShell -IncludeManagementTools -Restart

Cluster Shared Volume (CSV) ve Quorum Witness Yapılandırması

Hyper-V kümelerinde birden fazla hostun aynı LUN diskine aynı anda yazıp okuyabilmesini sağlayan teknoloji Cluster Shared Volumes (CSV) mimarisidir. CSV sayesinde her sanal makine için ayrı LUN açma zorunluluğu ortadan kalkar.

İki düğümlü yapılarda "Split-Brain" (her iki sunucunun da diğerinin öldüğünü sanıp yönetimi ele geçirmeye çalışması) durumunu engellemek için Disk Witness veya bağımsız bir dosya paylaşımı üzerinden File Share Witness kurgulanmalıdır:

# Cluster Doğrulama Testi (Validation Test)
Test-Cluster -Node "HV-NODE01", "HV-NODE02" -Include "Storage", "Network", "Hyper-V Configuration"

# Yeni Cluster Oluşturma
New-Cluster -Name "HV-PROD-CLUST" -Node "HV-NODE01", "HV-NODE02" -StaticAddress "192.168.10.50"

# Quorum Witness Olarak Dosya Paylaşımı Atama
Set-ClusterQuorum -Cluster "HV-PROD-CLUST" -FileShareWitness "\\NAS-STORAGE\QuorumWitness"

Live Migration Ağ Önceliğinin Ayarlanması

Canlı göç sırasında sanal sunucunun belleği diğer sunucuya kopyalanırken yönetim trafiğini tıkamaması için Live Migration ağ önceliği belirlenmelidir:

# Live Migration trafiğini yalnızca 10G özel ağa yönlendirme
Set-ClusterNetwork -Name "LiveMigration-Net" -Role ClusterAndClient
Get-ClusterNetwork | Where-Object {$_.Name -ne "LiveMigration-Net"} | Set-ClusterNetwork -Role ClusterOnly

Karşılaşılan Kritik Hatalar ve Çözüm İpuçları

  • CSV Redirected Access Moduna Düşmesi: Bir hostun depolama ağı bağlantısı koptuğunda, CSV diski tamamen kopmaz; ancak trafiği diğer hostun ağ kartı üzerinden dolaştırarak yazar (Redirected Access). Bu durum I/O performansını %70 düşürür. Failover Cluster Manager'da disk durumu Redirected Access görünüyorsa, doğrudan iSCSI MPIO bağlantıları kontrol edilmelidir.
  • Anti-Affinity Kuralları: Aynı görevi yapan iki etki alanı denetleyicisini (DC01 ve DC02) aynı fiziksel hostta tutmak felakettir. PowerShell üzerinden AntiAffinityClassNames tanımlayarak bu sanal makinelerin daima farklı fiziksel hostlarda barınması garanti altına alınmalıdır.

Mühendis Notu

Cluster Validation Wizard çıktısında tek bir sarı uyarı dahi kalsa, bunu araştırmadan "Nasılsa çalışır" diyerek üretime geçmeyin. Özellikle ağ bağdaştırıcılarının sürücü sürümleri ve RSS (Receive Side Scaling) ayarlarının iki sunucuda birebir aynı olması şarttır.