Azure Stack Hub ile iSCSI depolamaya bağlanma

Bu makaledeki şablonu kullanarak bir Azure Stack Hub sanal makinesini (VM) şirket içi iSCSI hedefine bağlayabilir ve VM'yi Azure Stack Hub'ımızın dışında ve veri merkezinizdeki başka bir yerde barındırılan depolamayı kullanacak şekilde ayarlayabilirsiniz. Bu makalede, iSCSI hedefi olarak bir Windows makinesi kullanma konusuna bakabilirsiniz.

Şablonu Azure Intelligent Edge Patterns GitHub deposunun lucidqdreams çatalında bulabilirsiniz. Şablon , storage-iSCSI klasöründedir. Şablon, bir iSCSI hedefine bağlanmak için Azure Stack Hub tarafında gerekli altyapıyı ayarlamak üzere tasarlanmıştır. Buna, iSCSI Başlatıcısı olarak görev yapacak bir sanal makine ve buna eşlik eden sanal ağ, NSG, PIP ve depolama dahildir. Şablon dağıtıldıktan sonra yapılandırmayı tamamlamak için iki PowerShell betiği çalıştırılmalıdır. Bir betik şirket içi VM'de (hedef) ve bir betik de Azure Stack Hub VM'sinde (Initiator) çalıştırılır. Bunlar tamamlandıktan sonra Azure Stack Hub VM'nize şirket içi depolama alanı eklenir.

Genel Bakış

Diyagramda, Azure Stack Hub dışında depolamanın iSCSI protokolü üzerinden Azure Stack Hub'da barındırılan VM'nize bağlanmasını sağlayan, şirket içi (fiziksel veya sanal) bir Windows makinesinden iSCSI'ya bağlı bir disk içeren Azure Stack Hub'da barındırılan bir VM gösterilmektedir.

Diyagramda, Dış iSCSI'ya bağlı diske erişen Azure Stack Hub'da barındırılan bir VM gösterilmektedir.

Gereksinimler

  • Datacenter veya Windows Server 2019 Datacenter Windows Server 2016 çalıştıran bir şirket içi makine (fiziksel veya sanal).
  • Gerekli Azure Stack Hub Market öğeleri:
    • Windows Server 2016 Datacenter veya Windows Server 2019 Datacenter (en son derleme önerilir).
    • PowerShell DSC uzantısı.
    • Özel Betik Uzantısı.
    • Mevcut bir sanal veya fiziksel makine. İdeal olan bu makinenin iki ağ bağdaştırıcısı olmasıdır. Bu, örneğin SAN gibi başka bir iSCSI hedefi de olabilir.

Dikkat edilmesi gereken noktalar

  • Alt Ağ şablonuna bir Ağ Güvenlik Grubu uygulanır. Bunu gözden geçirin ve gerektiğinde ek izinler alın.
  • Tünel NSG'sine bir RDP Reddetme kuralı uygulanır ve VM'lere Genel IP adresi üzerinden erişmek istiyorsanız izin verecek şekilde ayarlanması gerekir.
  • Bu çözüm DNS çözümlemeyi dikkate almaz.
  • Chapusername ve Chappassword'ünüzü değiştirmelisiniz. Chappassword 12 - 16 karakter uzunluğunda olmalıdır.
  • iSCSI bağlantısı yapılandırmadaki yerel adresi kullandığından bu şablon VM için statik bir IP adresi kullanıyor.
  • Bu şablon KLG Windows Lisansı kullanıyor.
  • Linux tabanlı sistemleri iSCSI hedeflerine de bağlayabilirsiniz. Yönergeleri ubuntu belgelerindeki iSCSI Başlatıcısı makalesinde bulabilirsiniz.

Seçenekler

  • _artifactsLocation kullanarak kendi Blob depolama hesabınızı ve SAS belirtecinizi kullanabilir ve _artifactsLocationSasToken parametrelerine SAS belirteci ile kendi depolama blobunuzu kullanma olanağını sağlayabilirsiniz.
  • Bu şablon, sanal ağ adlandırma ve IP adresleme için varsayılan değerler sağlar.
  • Bu yapılandırmada iSCSI istemcisinden gelen yalnızca bir iSCSI nic vardır. Ayrı alt ağları ve NIC'leri kullanmak için bir dizi yapılandırmayı test ettik, ancak birden çok ağ geçidiyle ilgili sorunlarla karşılaştık ve trafiği yalıtmak ve gerçekten yedekli olmak için ayrı bir depolama alt ağı oluşturmaya çalıştık.
  • Dağıtım başarısız olabileceği için bu değerleri yasal alt ağ ve adres aralıkları içinde tutmaya dikkat edin.
  • PowerShell DSC paketlerinin birincil amacı bekleyen yeniden başlatmaları denetlemektir. Gerekirse bu DSC daha fazla özelleştirilebilir. Daha fazla bilgi için bkz. omputerManagementDsc.

Kaynak grubu şablonu (iSCSI istemcisi)

Diyagramda, iSCSI hedefine bağlanmak için kullanabileceğiniz iSCSI istemcisini oluşturmak için şablondan dağıtılan kaynaklar gösterilir. Bu şablon VM'yi ve diğer kaynakları dağıtır. Buna ek olarak, prepare-iSCSIClient.ps1 çalıştırır ve VM'yi yeniden başlatır.

Diyagramda, iSCSI hedefine bağlanmak üzere iSCSI istemcisi oluşturmak için şablondan dağıtılan kaynaklar gösterilir. İç alt ağ ve NIC (ağ kartı), iç PIP (Özel İnternet Protokolü) ve NSG (Ağ Güvenlik Grubu) ile bir dosya sunucusu gösterir.

Dağıtım işlemi

Kaynak grubu şablonu, bir sonraki adımın girişi olması amaçlanan bir çıkış oluşturur. Çoğunlukla iSCSI trafiğinin kaynaklandığı sunucu adına ve Azure Stack Hub genel IP adresine odaklanır. Bu örnekte:

  1. Altyapı şablonunu dağıtın.
  2. Azure Stack Hub VM'sini veri merkezinizin başka bir yerinde barındırılan bir VM'ye dağıtın.
  3. Sanal makine veya fiziksel sunucu olabilecek iSCSI hedefindeki betik için yerleşik parametreler olarak şablondan IP adresi ve sunucu adı çıkışlarını kullanarak komutunu çalıştırın Create-iSCSITarget.ps1 .
  4. Betiği çalıştırmak Connect-toiSCSITarget.ps1 için giriş olarak iSCSI Hedef sunucusunun dış IP adresini veya adreslerini kullanın.

Diyagramda, yukarıda listelenen dört adımın ilk üçü gösterilir ve girişler ile çıkışlar yer alır. Adımlar şunlardır: Altyapı Dağıtma, iSCSI Hedefi Oluşturma ve iSCSI'ye Bağlanma.

azuredeploy.json için girişler

Parametreler default açıklama
WindowsImageSKU 2019-Datacenter Temel Windows VM görüntüsünü seçin
VMSize Standard_D2_v2 Lütfen VM boyutunu girin
VMName FileServer VM adı
adminUsername storageadmin Yeni VM'nin Yöneticisinin adı
adminPassword Yeni VM'lerin Yönetici hesabının parolası. Varsayılan değer abonelik kimliğidir
VNetName Depolama Sanal ağın adı. Bu, kaynakları etiketlemek için kullanılır
VNetAddressSpace 10.10.0.0/23 Sanal Ağ için Adres Alanı
VNetInternalSubnetName İç VNet İç Alt Ağ Adı
VNetInternalSubnetRange 10.10.1.0/24 Sanal Ağ İç Alt Ağı için Adres Aralığı
InternalVNetIP 10.10.1.4 Dosya Sunucusunun iç IP'sinin Statik Adresi.
_artifactsLocation
_artifactsLocationSasToken

Dağıtım adımları

  1. kullanarak iSCSI istemci altyapısını dağıtma azuredeploy.json
  2. Şirket içi sunucu iSCSI hedefinde komutunu çalıştırın Create-iSCSITarget.ps1 . Şablon tamamlandıktan sonra Create-iSCSITarget.ps1 şirket içi sunucu iSCSI hedefinde ilk adımdaki çıkışlarla çalıştırmanız gerekir
  3. iSCSI istemcisinde komutunu çalıştırın Connect-toiSCSITarget.ps1 . iSCSI istemcisinde iSCSI hedefinin ayrıntılarıyla Connect-toiSCSITarget.ps1 açma

Mevcut VM'lere iSCSI depolama alanı ekleme

Betikleri, iSCSI istemcisinden iSCSI hedefine bağlanmak için var olan bir Sanal Makinede de çalıştırabilirsiniz. Bu akış, iSCSI hedefini kendiniz oluşturuyorsanız olur. Bu diyagramda PowerShell betiklerinin yürütme akışı gösterilir. Bu betikler Betik dizininde bulunabilir:

Diyagramda aşağıda açıklanan üç betik gösterilmektedir. Yürütme sırasına göre şunlardır: Prepare-iSCSIClient.ps1, (istemcide yürütülür), oluşturma iSCSITarget.ps1 (hedeflerde yürütülür) ve Connect-toiSCSITarget.ps1 (istemcideki exectutes).

Prepare-iSCSIClient.ps1

Betik Prepare-iSCSIClient.ps1 , önkoşulları iSCSI istemcisine yükler;

  • Multipath-IO hizmetlerinin yüklenmesi
  • iSCSI başlatıcı hizmeti başlatmasını otomatik olarak ayarlama
  • iSCSI'ya çok yollu MPIO desteğini etkinleştirme
  • Tüm iSCSI birimleri için otomatik talepte bulunabilme
  • Disk zaman aşımını 60 saniye olarak ayarlama

Bu önkoşullar yüklendikten sonra sistemi yeniden başlatmak önemlidir. MPIO yük dengeleme ilkesi ayarlanabilmesi için yeniden başlatma gerektirir.

Create-iSCSITarget.ps1

Betik Create-iSCSITarget.ps1 , depolama sunucusunda çalıştırılacaktır. Başlatıcılar tarafından kısıtlanmış birden çok disk ve hedef oluşturabilirsiniz. Farklı hedeflere ekleyebileceğiniz birçok sanal disk oluşturmak için bu betiği birden çok kez çalıştırabilirsiniz. Çoklu diskleri tek bir hedefe bağlayabilirsiniz.

Giriş default açıklama
Remoteserver Dosya Sunucusu iSCSI Hedefine bağlanan sunucunun adı
RemoteServerIPs 1.1.1.1 iSCSI trafiğinin geleceği IP Adresi
DiskFolder C:\iSCSIVirtualDisks Sanal disklerin depolandığı klasör ve sürücü
DiskName DiskName Disk VHDX dosyasının adı
Disk Boyutu 5 GB VHDX disk boyutu
TargetName RemoteTarget01 iSCSI istemcisinin hedef yapılandırmasını tanımlamak için kullanılan hedef adı.
ChapUsername username Chap kimlik doğrulaması için kullanıcı adı
ChapPassword userP@ssw0rd! Chap kimlik doğrulaması için parola adı. 12 ile 16 karakter arası olmalıdır

Connect-toiSCSITarget.ps1

Connect-toiSCSITarget.ps1, iSCSI istemcisinde çalıştırılan ve iSCSI hedefi tarafından sunulan diski iSCSI istemcisine takan son betiktir.

Giriş default açıklama
TargetiSCSIAddresses "2.2.2.2","2.2.2.3" iSCSI hedefinin IP adresleri
LocalIPAddresses "10.10.1.4" Bu, iSCSI trafiğinin geleceği iç IP Adresidir
LoadBalancePolicy C:\iSCSIVirtualDisks iSCSI trafiğinin geleceği IP Adresi
ChapUsername username Chap kimlik doğrulaması için kullanıcı adı
ChapPassword userP@ssw0rd! Chap kimlik doğrulaması için parola adı. 12 ile 16 karakter arası olmalıdır

Sonraki adımlar

Azure Stack Hub ağıyla ilgili farklılıklar ve dikkat edilmesi gerekenler