Bu makalede vSAN altyapısında bir cache diskin arızalanması sonucu disk grubunun GUI’de görünmemesiyle karşılaşılan bir problemi detaylı olarak ele alacağız.
Ayrıca PowerCLI ve ESXCLI kullanılarak bu sorunun nasıl güvenli şekilde giderileceği anlatılacaktır.
1. vSAN Mimarisi: Disk Grubu Nedir ve Neden Kritik?
Disk Grubu Bileşenleri:
- Cache Disk:
- Yazma işlemleri için “write buffer”
- Sık erişilen veriler için “read cache”
- Capacity Disk(ler):
- Kalıcı verilerin depolandığı alan
Bir ESXi host üzerindeki tipik yapı:
ESXi Host
├── Disk Group 1
│ ├── Cache SSD
│ └── Capacity Disk 1-n
├── Disk Group 2
│ └── ...
Kritik Nokta:
Cache disk arızalanırsa vSAN mimarisi gereği;
- İlgili disk grubu offline olur
- GUI’de disk grubu görünmez hale gelebilir
- Yeni bir disk grubu oluşturulamaz, çünkü sistem “eski grup hala var” sanır
2. Olay Akışı: Ne Oldu?
Problem Tanımı:
- ESXi host’taki cache SSD fiziksel olarak arızalandı,
- GUI’den erişim mümkün değil,
- Yeni cache diski takılsa dahi GUI “disk grubu silinmedi” hatası veriyor,
- vCenter üzerinden silme işlemi yapılamıyor,
3. Diagnostik Aşamaları
3.1. Disk Durumu Analizi (SSH / ESXCLI):
esxcli vsan storage list
Boş vsandiskgroupname
değerine sahip disk grupları bu tür problemleri işaret eder.
3.2. Log Kontrolleri:
ESXi SSH erişimiyle:
cat /var/log/vmkernel.log | grep -i vsan
cat /var/log/vobd.log
Kontrol edilecek hatalar:
- “Device unreachable”
- “DiskGroup failed to load”
- “UUID not found”
4. Çözüm: PowerCLI/ESXCLI ile Müdahale
4.1. PowerCLI Bağlantısı:
Connect-VIServer vcenter.kadirkozan.local
4.2. Host ve CLI Nesnesi Al:
$VMHost = Get-VMHost "esxi-05.kadirkozan.local"
$VMHostCLI = $VMHost | Get-ESXCLI -V2
4.3. Sorunlu Disk Grubu Tespiti:
$BadDisks = $VMHostCLI.vsan.storage.list.invoke() | Where-Object { $_.vsandiskgroupname -eq "" }
$BadDiskGroup = $BadDisks | Select-Object -Unique -Property vsandiskgroupuuid
$BadDiskGroup
4.4. Kaldırma İşlemi (Tehlikeli – Dikkatli Olun):
$VMHostCLI.vsan.storage.remove.invoke(@{"uuid"=$BadDiskGroup})
4.5. Başarısız Olursa:
- Host’u maintenance mode’a alın
esxcli vsan storage remove -u <UUID>
komutu ile SSH üzerinden silmeyi deneyin
5. Donanım Düzeyinde Doğrulamalar
5.1. HBA/RAID Kartı:
- HBA kart RAID modda ise, disk passthrough yapılamaz
- vSAN RAID desteklemez, mutlaka HBA modda çalışmalı
5.2. SSD Durumları:
esxcli storage core device list
Sağlıklı SSD’lerde Operational State: on olmalı
Arızalı diskler “dead” veya “not responding” olarak görünür
6. Yeni Disk Grubu Kurulumu
GUI veya PowerCLI ile yapılabilir.
PowerCLI ile Örnek:
New-VsanDiskGroup -VMHost $VMHost -CacheDisk $NewCacheDisk -CapacityDisks $CapacityDisks
. Operasyonel Risk ve Veri Güvenliği
Risk | Açıklama |
---|---|
Veri Kaybı | Arızalı disk grubu içindeki veriler recover edilemez |
Cluster Dengesizliği | Disk grubu eksikliği rebalance gerektirir |
Split Brain | Silinmeyen gruplar metadata tutarsızlığına neden olabilir |
GUI ile Çakışma | GUI disk grubu hala var sanır, işlem yapılamaz |
Önerilen Önlemler:
- vSAN Health check periyodik çalıştırılmalı
- Host başına 2+ disk grubu tercih edilmeli
- Proaktif SSD health monitoring (SMART & endurance)
- Otomatik alerting için Aria Operations / vROps kullanılmalı
8. Otomasyon ve İzleme
- vRealize Log Insight ile vSAN hataları korele edilebilir
- Aria Operations ile disk kullanım trendleri, rebalance ihtiyaçları, latency analizi yapılabilir
- PowerCLI script’leri, log analiziyle entegre hale getirilerek otomatik müdahale sistemleri kurulabilir
9. İleri Düzey Komutlar (SSH)
Diskleri UUID ile listele:
esxcli vsan storage list
Belirli disk grubu UUID’sini kaldır:
esxcli vsan storage remove -u <uuid>
vSAN Topoloji Kontrolü:
esxcli vsan cluster get
esxcli vsan cluster unicastagent list
Kriz Yönetimi ve Uzun Vadeli Mimari Strateji
Kısa Vadede:
- Arızalı disk grubu PowerCLI/ESXCLI ile güvenli biçimde kaldırıldı
- Yeni cache disk ile yeni disk grubu oluşturuldu
- Cluster stabilize edildi, performans normalize edildi
Uzun Vadede:
- Disk grup yedekliliği (N+1 cache policy)
- Otomatikleştirilmiş disk health izleme
- Daha sık log analizi ve alarm tanımlamaları
- VMware HCL (Hardware Compatibility List) üzerinden donanım kontrolü