İçeriğe atla
tolgahat.com

SAN, NAS, NVMe-oF: sanallaştırma için protokol seçimi (2026)

FC, iSCSI, NVMe/TCP, NFS 4.1 ve SMB 3'ü vSphere 9 ve Windows Server 2025 için karşılaştırıyorum; iSCSI bağlama adımları, çok yollu erişim ve tasarım kuralları.

THTolga HatipoğluYayın Güncelleme 12 dk okuma
HIZLI CEVAP
Mevcut FC altyapınız varsa onu kullanın; yoksa 25 GbE ve üstü Ethernet üzerinde iSCSI (her iki platform) ya da NVMe/TCP (vSphere 9) seçin. Dosya tabanlı gidecekseniz vSphere için NFS 4.1, Hyper-V için Scale-Out File Server üzerinde SMB 3 doğru yoldur. Harici dizi istemiyorsanız vSAN ESA ya da Storage Spaces Direct ile HCI'ye geçin. Protokolden bağımsız kural: depolama trafiğini ayrı VLAN'a alın, uçtan uca aynı MTU kullanın ve çok yollu erişimi (MPIO, NMP/HPP) ilk günden kurun.

Ne zaman SAN, ne zaman NAS, ne zaman HCI

Üç mimari de aynı işi yapar: sanal makine disklerini birden fazla host'un aynı anda görebileceği bir yere koyar. Fark, veri yolunun nereden geçtiği ve dosya sistemini kimin yönettiğidir. SAN'da host blok cihaz (LUN ya da NVMe namespace) görür ve dosya sistemini kendisi kurar: vSphere'de VMFS, Hyper-V'de CSV üzerinde NTFS. NAS'ta dosya sistemi dizide kalır; host bir paylaşımı bağlar ve VMDK ya da VHDX dosyalarını oraya yazar. HCI'de harici cihaz yoktur; her düğümün yerel diskleri yazılımla tek havuza dönüşür.

Üç sütunlu diyagram: SAN'da host'lar FC veya iSCSI fabric üzerinden harici diziye, NAS'ta Ethernet üzerinden NFS veya SMB sunucusuna bağlanır; HCI'de her düğümün yerel NVMe ve SSD diskleri doğu-batı Ethernet ağı üzerinden tek havuz oluşturur.
Şekil 1. SAN, NAS ve HCI mimarilerinde veri yolu.

Benim kullandığım karar sırası şöyle. Elinizde çalışan bir FC fabric ve zoning bilgisi olan ekip varsa SAN'ı FC ile sürdürün; NVMe destekli HBA'larla aynı fabric üzerinde NVMe/FC'ye geçiş yolu açık kalır. Sıfırdan kuruyorsanız ve ağ ekibi 25 GbE ya da 100 GbE sağlayabiliyorsa Ethernet tabanlı blok (iSCSI, vSphere'de NVMe/TCP) hem daha ucuz hem daha esnektir. Dosya tabanlı NAS, dizinin anlık görüntü ve klonlama özelliklerini doğrudan VM dosyalarına uygulayabildiğiniz ve LUN yönetimi istemediğiniz durumlarda kazanır. HCI ise şube ofisleri, 2-4 düğümlü küçük kümeler ve depolama ekibi olmayan ortamlar için en az hareketli parçaya sahip seçenektir; Storage Spaces Direct tarafını ayrı bir rehberde anlattım.

Lisans ve yol haritası da karara girer. Broadcom, vSphere Virtual Volumes (vVols) özelliğini VCF ve VVF 9.0 ile kullanımdan kaldırdı (deprecated) ve sertifikasyonları durdurdu; vVols üzerine yeni tasarım yapmayın. Aynı sürümde NPIV kaldırıldı. Microsoft tarafında Storage Spaces Direct yalnızca Datacenter sürümünde var; Standard lisansla HCI yapamazsınız ama SAN ve SMB 3 kullanabilirsiniz.

Protokol karşılaştırması

Gecikme sütununda mutlak sayı vermiyorum; aynı donanımda protokoller arası fark, dizinin ve ağın tasarımına göre yer değiştirir. Sıralama göreli ve üretici belgelerindeki mimari farklara dayanır: NVMe uçtan uca SCSI çevirisi yapmaz, FC kayıpsız ayrı bir ağdır, TCP tabanlı yollar paylaşımlı Ethernet'in kuyruklamasına tabidir.

ProtokolErişimGöreli gecikmeKarmaşıklıkMaliyetvSphere 9Hyper-V (WS 2025)
Fibre Channel (SCSI)BlokDüşükYüksek (zoning, HBA, ayrı fabric)YüksekDestekliDestekli; FC üzerinden CSV
iSCSIBlokOrtaOrta (VLAN, MPIO, CHAP)DüşükDestekli; 9.0'da oturum başına çoklu bağlantı eklendiDestekli; yerleşik başlatıcı ve MPIO
NVMe/FCBlokEn düşükYüksek (NVMe destekli HBA ve fabric)YüksekDestekli; HPP ile çok yolluYok
NVMe/TCPBlokDüşükOrta (1:1 vmk-NIC, port bağlama)DüşükDestekli; HPP ile çok yollu, 9.0'da DH-HMAC-CHAPGA sürümde yok; Insider önizlemesi
NFS 3 / 4.1DosyaOrtaDüşükDüşükDestekli; 4.1'de Kerberos (krb5p ile şifreleme)VM depolama için yok
SMB 3DosyaOrta (RDMA ile düşük)Düşük-orta (AD, delegasyon, SOFS)DüşükYokDestekli; SMB Direct ve Multichannel

Birkaç satırı açmak gerekir. vSphere 9 belgesine göre NVMe-oF hedeflerinde RDM, core dump, SCSI-2 rezervasyonu ve VAAI donanım hızlandırma desteklenmez; clustered VMDK desteklenir. Aynı namespace'e farklı taşıma türleriyle (örneğin hem FC hem TCP) erişmeyin. Hyper-V tarafında Microsoft, SAN üzerindeki CSV'ler için NTFS'i açıkça öneriyor: ReFS ile biçimlenen SAN CSV'si doğrudan I/O yerine yönlendirilmiş I/O ile çalışır. NFS'i Hyper-V için listelemiyorum; Windows'ta NFS istemcisi var ama VM dosyaları için desteklenen yol SMB 3'tür.

Katman şeması: en üstte VMDK ve VHDX, altında blok tarafında host'un kurduğu VMFS veya CSVFS-NTFS ile dosya tarafında dizinin kurduğu NFS veya SMB 3 paylaşımı; protokol satırında FC, iSCSI, NVMe/FC, NVMe/TCP, NFS ve SMB 3 kutuları, her birinin altında taşıma katmanı (FC fabric, TCP/IP, RDMA) ve vSphere ile Hyper-V destek durumu.
Şekil 2. Altı protokolün katmanları ve platform desteği (Ekim 2026).

Ön koşullar

İki platform için ortak liste:

  • Dizi üreticisinin uyumluluk matrisinde hypervisor sürümünüz ve protokol yer almalı. Broadcom Compatibility Guide ve Windows Server Catalog ilk bakılacak yerlerdir.
  • Depolama trafiği için ayrı VLAN ya da ayrı fiziksel ağ; iki bağımsız yol (iki anahtar, iki NIC ya da HBA). Microsoft küme belgesi iSCSI için NIC'in yalnızca depolamaya ayrılmasını ister.
  • Uçtan uca aynı MTU. Jumbo frame kullanacaksanız anahtar portları, NIC'ler ve dizinin hepsi 9000 olmalı; Broadcom bilgi bankasına göre ESXi'nin desteklediği en yüksek MTU 9000'dir.
  • Küme düğümlerinde aynı HBA modeli, sürücü ve firmware. Microsoft FC ve SAS için bunu şart koşar.
  • Hyper-V kümesi için Failover Clustering ve Multipath-IO özellikleri; vSphere için her host'ta yazılım iSCSI veya NVMe/TCP adaptörüne bağlanacak VMkernel portları.
  • SMB 3 yolunda Active Directory, dosya sunucusunda host bilgisayar hesaplarına tam yetki ve uzak yönetim için Kerberos kısıtlı delegasyon.

Adımlar: iSCSI LUN'u iki platforma bağlama

iSCSI'yi örnek seçtim çünkü iki platformda da yerleşik ve ek donanım gerektirmiyor. Senaryo: dizi iki portalda (192.168.50.10 ve 192.168.51.10) hizmet veriyor, her host'ta iki depolama NIC'i var.

vSphere 9: yazılım iSCSI adaptörü

  1. VMkernel portlarını hazırlayın

    İki iSCSI alt ağı için iki VMkernel adaptörü (vmk1, vmk2) oluşturun; her biri tek bir fiziksel NIC'e bağlı olsun. Jumbo frame kullanıyorsanız vSwitch ve vmk MTU'sunu birlikte yükseltin.

    esxcli network vswitch standard set --vswitch-name=vSwitch1 --mtu=9000
    esxcli network ip interface set --interface-name=vmk1 --mtu=9000
    esxcli network ip interface set --interface-name=vmk2 --mtu=9000
    vmkping -I vmk1 -d -s 8972 192.168.50.10

    vmkping parçalanmaya izin vermez; cevap gelmiyorsa MTU bir yerde eksiktir.

  2. Yazılım iSCSI adaptörünü etkinleştirin
    esxcli iscsi software set --enabled=true
    esxcli iscsi adapter list

    Adaptör vmhba64 gibi bir adla listelenir; sonraki komutlarda bu adı kullanın.

  3. Port bağlamayı yapın

    Her VMkernel portunu iSCSI adaptörüne bağlayın. Port bağlama, adaptörün yalnızca bu portlardan oturum açmasını sağlar ve iki yolun ayrı ayrı görünmesini garanti eder.

    esxcli iscsi networkportal add --adapter=vmhba64 --nic=vmk1
    esxcli iscsi networkportal add --adapter=vmhba64 --nic=vmk2
  4. Hedefi keşfedin ve yeniden tarayın
    esxcli iscsi adapter discovery sendtarget add --adapter=vmhba64 --address=192.168.50.10:3260
    esxcli iscsi adapter discovery sendtarget add --adapter=vmhba64 --address=192.168.51.10:3260
    esxcli storage core adapter rescan --adapter=vmhba64
    esxcli storage core path list

    Her LUN için en az iki yol görmelisiniz. CHAP kullanıyorsanız esxcli iscsi adapter auth chap set ile adaptör düzeyinde ayarlayın.

  5. Yol seçim ilkesini kontrol edin
    esxcli storage nmp device list

    ALUA dizilerinde çoğu üretici Round Robin ister. Üreticiniz "iops=1" öneriyorsa bunu cihaz bazında değil SATP kuralıyla kalıcı yapın; yeniden başlatmadan sonra geçerli olur.

    esxcli storage nmp satp rule add --satp=VMW_SATP_ALUA --psp=VMW_PSP_RR --psp-option="iops=1" --vendor="<URETICI>" --model="<MODEL>" --description="RR iops=1"
  6. VMFS datastore oluşturun

    vSphere Client'ta Storage, New Datastore, VMFS 6 yolunu izleyin ya da PowerCLI ile New-Datastore -Vmfs kullanın. Datastore'u kümedeki tüm host'larda yeniden tarayıp aynı adla göründüğünü doğrulayın.

Hyper-V (Windows Server 2025): başlatıcı, MPIO ve CSV

Komutları her küme düğümünde çalıştırın; CSV adımları tek düğümden yapılır.

  1. Özellikleri yükleyin ve MPIO'ya iSCSI sahipliği verin
    Install-WindowsFeature -Name Multipath-IO, Failover-Clustering -IncludeManagementTools
    Set-Service -Name MSiSCSI -StartupType Automatic
    Start-Service -Name MSiSCSI
    Enable-MSDSMAutomaticClaim -BusType iSCSI
    Set-MSDSMGlobalDefaultLoadBalancePolicy -Policy RR
    Restart-Computer

    Enable-MSDSMAutomaticClaim yeniden başlatma ister. Yük dengeleme ilkesini (RR, LQD, FOO) dizi üreticisinin önerisine göre seçin.

  2. Portalları başlatıcı adresleriyle eşleyin

    Her depolama NIC'ini kendi alt ağındaki portala bağlayın; böylece yollar çakışmaz.

    New-IscsiTargetPortal -TargetPortalAddress 192.168.50.10 -InitiatorPortalAddress 192.168.50.21
    New-IscsiTargetPortal -TargetPortalAddress 192.168.51.10 -InitiatorPortalAddress 192.168.51.21
    Get-IscsiTarget
  3. Hedefe iki yoldan kalıcı bağlanın
    $iqn = (Get-IscsiTarget).NodeAddress
    Connect-IscsiTarget -NodeAddress $iqn -TargetPortalAddress 192.168.50.10 -InitiatorPortalAddress 192.168.50.21 -IsMultipathEnabled $true -IsPersistent $true
    Connect-IscsiTarget -NodeAddress $iqn -TargetPortalAddress 192.168.51.10 -InitiatorPortalAddress 192.168.51.21 -IsMultipathEnabled $true -IsPersistent $true
    Get-IscsiSession | Format-Table TargetNodeAddress, IsConnected, IsPersistent, IsMultipathEnabled
    mpclaim -s -d

    IsPersistent oturumu yeniden başlatmada geri getirir; mpclaim -s -d her disk için yol sayısını gösterir. Tek yol görüyorsanız MPIO sahipliği oturmamıştır.

  4. Diski biçimlendirin

    Yalnızca bir düğümde çalıştırın. SAN LUN'u için NTFS seçin; VHDX için 64 KB ayırma birimi yaygın öneridir.

    Get-Disk | Where-Object BusType -eq iSCSI
    Initialize-Disk -Number <DISK-NO> -PartitionStyle GPT
    New-Partition -DiskNumber <DISK-NO> -UseMaximumSize | Format-Volume -FileSystem NTFS -NewFileSystemLabel "CSV01" -AllocationUnitSize 65536
  5. Kümeye ekleyip CSV yapın
    Test-Cluster -Node <DUGUM1>, <DUGUM2> -Include "Storage", "Inventory", "Network", "System Configuration"
    Get-ClusterAvailableDisk | Add-ClusterDisk
    Add-ClusterSharedVolume -Name "Cluster Disk 1"
    Get-ClusterSharedVolumeState

    Birim C:\ClusterStorage\Volume1 altında görünür. Get-ClusterSharedVolumeState her düğümde "Direct" göstermeli; "FileSystemRedirected" ya da "BlockRedirected" görürseniz o düğümün depolamaya doğrudan yolu yoktur.

  6. iSCSI ağını küme iletişiminden çıkarın

    Microsoft, CSV trafiğinin iSCSI ağlarına taşmamasını önerir.

    (Get-ClusterNetwork | Where-Object Address -like "192.168.50.*").Role = 0
    (Get-ClusterNetwork | Where-Object Address -like "192.168.51.*").Role = 0

    Rol 0 "küme iletişimine izin verme" demektir.

Çok yollu erişim: NMP, HPP ve MPIO

vSphere'de iki eklenti var. NMP (Native Multipathing Plug-in) SCSI tabanlı FC ve iSCSI cihazlarını yönetir; yol seçim ilkeleri Fixed, MRU ve Round Robin'dir. HPP (High-Performance Plug-in) NVMe-oF hedeflerini varsayılan olarak sahiplenir ve Broadcom belgesine göre NMP bu hedefleri sahiplenemez. HPP yalnızca active/active ve implicit ALUA dizileri destekler; yol şemaları FIXED, LB-RR (varsayılan), LB-IOPS, LB-BYTES ve LB-Latency'dir. NVMe/TCP'de NIC takımı (teaming) ya da LACP kullanılmaz; her VMkernel adaptörü tek bir fiziksel NIC'e eşlenir ve yüksek erişilebilirlik tamamen HPP'nin çok yollu mantığına bırakılır.

Windows'ta tek bir çerçeve var: MPIO ve Microsoft DSM. Enable-MSDSMAutomaticClaim -BusType iSCSI (ya da SAS ve FC için dizinin VID/PID'ini New-MSDSMSupportedHW ile ekleyerek) diskleri MPIO'ya verir. Varsayılan yük dengeleme ilkesini Set-MSDSMGlobalDefaultLoadBalancePolicy ile RR, LQD (en az kuyruk derinliği) ya da FOO (failover only) yapabilirsiniz; üretici DSM'i varsa onun belgesi önceliklidir. Yolların durumunu mpclaim -s -d ve Get-MPIOAvailableHW ile görürsünüz.

Tasarım kuralları

  • Ayrı VLAN, yönlendirme yok. Depolama alt ağları yalnızca host ve dizi portlarını içersin; varsayılan ağ geçidi tanımlamayın.
  • Jumbo frame tamamı ya da hiçbiri. 9000 MTU'yu anahtar, NIC, vmk ve dizide birlikte açın; vmkping -d -s 8972 ve ping -f -l 8972 ile doğrulayın. Karışık MTU, aralıklı zaman aşımı olarak kendini gösterir ve bulması saatler alır.
  • Kuyruk derinliği. HBA ve LUN kuyruk derinliğini üreticinin ESXi ya da Windows belgesindeki değerle bırakın; ESXi'de Disk.SchedNumReqOutstanding değeri adaptör kuyruk derinliğini aşmamalıdır. Çok VM'li az sayıda büyük LUN yerine, iş yüküne göre bölünmüş birden fazla LUN kullanın; Microsoft düğüm başına en az bir CSV önerir.
  • Round Robin IOPS eşiği. Varsayılan 1000'den 1'e indirmek bazı dizilerde gecikmeyi düşürür, bazılarında işe yaramaz. Broadcom bilgi bankası bunu üreticiye danışmadan yapmamanızı söyler.
  • Dosya sistemi eşleşmesi. SAN CSV'si için NTFS, Storage Spaces Direct için ReFS. vSphere'de tüm host'lar aynı NFS sürümünü kullansın; NFS 3 ve 4.1 aynı datastore'a karışmaz.
  • SMB 3 için SOFS. Hyper-V VM dosyalarını genel amaçlı dosya sunucusuna değil, Scale-Out File Server rolüne koyun; aktif-aktif paylaşım ve saydam yük devretme buradan gelir. Loopback (Hyper-V host'un kendi paylaşımını kullanması) desteklenmez.

Doğrulama

Bağlantıyı kurduktan sonra üç şeyi kanıtlayın: yol sayısı, yük devretme ve performans tabanı.

vSphere'de esxcli storage core path list çıktısında her cihaz için iki "active" yol, esxcli storage nmp device list çıktısında beklenen PSP görünmeli. Bir depolama anahtarının portunu kapatıp esxcli storage core path list ile yolun "dead" olduğunu ve VM'lerin I/O'ya devam ettiğini izleyin; portu açınca yolun geri geldiğini doğrulayın.

Windows'ta Get-IscsiSession iki oturum, mpclaim -s -d iki yol, Get-ClusterSharedVolumeState tüm düğümlerde Direct göstermeli. Aynı port kapatma testini yapın; Get-ClusterSharedVolumeState geçici olarak BlockRedirected gösterebilir, bu beklenen davranıştır. NVMe/TCP kurduysanız esxcli nvme namespace list ve esxcli storage hpp device list ile namespace ve yol şemasını kontrol edin.

Performans tabanı için üretim öncesi tek bir ölçüm alın (vSphere'de HCIBench ya da fio, Windows'ta DiskSpd) ve sonucu saklayın. Sonradan "yavaşladı" dendiğinde karşılaştıracağınız tek referans bu olur.

Sık yapılan hatalar

  • Depolama trafiğini yönetim VLAN'ında bırakmak. Yedekleme penceresinde iSCSI zaman aşımı alırsınız; önce ağı ayırın.
  • Tek alt ağda iki NIC ile "çok yollu" sanmak. Windows'ta mpclaim -s -d çıktısında tek yol görmenin en sık nedeni budur; portalları başlatıcı adresleriyle eşleyin.
  • ReFS ile SAN CSV'si. Yönlendirilmiş I/O ve düşük performans; NTFS'e dönün.
  • vVols üzerine yeni yatırım. VCF/VVF 9.0'da kullanımdan kaldırıldı; VMFS, NFS ya da vSAN'a planlayın.
  • Round Robin ayarını cihaz bazında yapmak. Yeniden başlatmada kaybolur; SATP kuralı kullanın.
  • NVMe-oF'ta RDM beklemek. Desteklenmez; fiziksel modda disk gerektiren VM'leri SCSI yolunda tutun.
  • Jumbo frame'i yalnızca host'ta açmak. Dizide ya da anahtar portunda eksik MTU, aralıklı yol kopmaları üretir.
  • Hyper-V'de SMB paylaşımında bilgisayar hesaplarını unutmak. Host, küme nesnesi ve SYSTEM hesabı tam yetki almalı; aksi halde VM oluşturma "erişim reddedildi" ile düşer.

Kaynaklar

Sık sorulan sorular

Sanallaştırma için SAN mı NAS mı daha iyi?

İkisi de üretimde kullanılır. Blok (SAN) tarafında FC, iSCSI ve NVMe-oF; dosya (NAS) tarafında vSphere için NFS, Hyper-V için SMB 3 geçerlidir. Karar protokolün kendisinden çok mevcut ağ, ekip bilgisi ve dizinin desteklediği yola göre verilir.

vSphere 9'da NVMe/TCP kullanmak için ne gerekir?

NVMe over TCP destekleyen bir dizi, uyumlu bir Ethernet adaptörü ve host üzerinde yazılım NVMe over TCP adaptörü gerekir. Broadcom belgesine göre NVMe-oF hedeflerini varsayılan olarak HPP eklentisi sahiplenir; RDM ve VAAI bu yolda desteklenmez.

Hyper-V kümesinde SAN LUN'unu ReFS ile biçimlendirebilir miyim?

Teknik olarak evet ama Microsoft SAN üzerindeki CSV'ler için NTFS öneriyor. ReFS ile biçimlenen SAN CSV'si yönlendirilmiş (redirected) I/O modunda çalışır ve doğrudan I/O avantajını kaybeder. ReFS, Storage Spaces Direct birimleri için önerilen seçimdir.

Windows Server 2025 NVMe over Fabrics başlatıcı içeriyor mu?

Ekim 2026 itibarıyla GA sürümde yerleşik bir NVMe-oF başlatıcı yok. Microsoft, Insider önizleme yapılarında NVMe/TCP ve NVMe/RDMA başlatıcı sunuyor; üretim için değil, değerlendirme için. Hyper-V'de blok için FC ve iSCSI, dosya için SMB 3 kullanın.

TH
Tolga Hatipoğlu

Sistem Yöneticisi. Sanallaştırma ve depolama altyapıları kuruyor, yönetiyor ve burada belgeliyor. Yazıdaki bir bilgi eskidiyse düzeltme önerin.