Aracılığıyla paylaş


PowerShell kullanarak yakınlık yerleştirme grubu oluşturma

Dekont

Bu belgede listelenen adımların çoğu, Tekdüzen Düzenleme modunu kullanan Sanal Makine Ölçek Kümeleri için geçerlidir. Yeni iş yükleri için Esnek Düzenleme'nin kullanılmasını öneririz. Daha fazla bilgi için bkz. Azure'da Sanal Makine Ölçek Kümeleri için Orchesration modları.

VM'lerin tek bir bölgeye yerleştirilmesi, örnekler arasındaki fiziksel mesafeyi azaltır. Bunları tek bir kullanılabilirlik alanına yerleştirmek de fiziksel olarak birbirine yaklaştıracaktır. Ancak Azure ayak izi büyüdükçe tek bir kullanılabilirlik alanı birden çok fiziksel veri merkezine yayılabilir ve bu da ağ gecikmesinin uygulamanızı etkilemesine neden olabilir.

VM'leri mümkün olduğunca yakın hale getirmek ve mümkün olan en düşük gecikme süresini elde etmek için, bunları yakınlık yerleştirme grubu içinde dağıtabilirsiniz.

Yakınlık yerleştirme grubu, Azure işlem kaynaklarının fiziksel olarak birbirine yakın olduğundan emin olmak için kullanılan mantıksal bir gruplandırmadır. Yakınlık yerleştirme grupları, düşük gecikme süresinin gerekli olduğu iş yükleri için kullanışlıdır.

  • Tek başına VM'ler arasında düşük gecikme süresi.
  • Tek bir kullanılabilirlik kümesindeki veya Sanal Makine Ölçek Kümesindeki VM'ler arasında düşük gecikme süresi.
  • Tek başına VM'ler, birden çok Kullanılabilirlik Kümesindeki VM'ler veya birden çok ölçek kümesi arasında düşük gecikme süresi. Çok katmanlı bir uygulamayı bir araya getirmek için tek bir yerleştirme grubunda birden çok işlem kaynağınız olabilir.
  • Farklı donanım türleri kullanan birden çok uygulama katmanı arasında düşük gecikme süresi. Örneğin, bir kullanılabilirlik kümesinde M serisini kullanarak arka ucu ve D serisi örneğinde, ölçek kümesindeki tek bir yakınlık yerleştirme grubunda ön ucu çalıştırma.

YakınLık Yerleştirme Gruplarını Kullanma

Yakınlık yerleştirme grubu, Azure'daki bir kaynaktır. Diğer kaynaklarla kullanmadan önce bir tane oluşturmanız gerekir. Oluşturulduktan sonra sanal makineler, kullanılabilirlik kümeleri veya Sanal Makine Ölçek Kümeleri ile kullanılabilir. Yakınlık yerleştirme grubu kimliğini sağlayan işlem kaynakları oluştururken bir yakınlık yerleştirme grubu belirtirsiniz.

Ayrıca var olan bir kaynağı yakınlık yerleştirme grubuna taşıyabilirsiniz. Bir kaynağı yakınlık yerleştirme grubuna taşırken, ortak konum kısıtlamasını karşılamak için bölgede farklı bir veri merkezine yeniden dağıtılacağından önce varlığı durdurmanız (serbest bırakmanız) gerekir.

Kullanılabilirlik kümeleri ve Sanal Makine Ölçek Kümeleri söz konusu olduğunda, yakınlık yerleştirme grubunu tek tek sanal makineler yerine kaynak düzeyinde ayarlamanız gerekir.

Yakınlık yerleştirme grubu, sabitleme mekanizması yerine birlikte bulundurma kısıtlamasıdır. Kullanılacak ilk kaynağın dağıtımıyla belirli bir veri merkezine sabitlenir. Yakınlık yerleştirme grubunu kullanan tüm kaynaklar durdurulduktan (serbest bırakıldıktan) veya silindikten sonra, artık sabitlenmez. Bu nedenle, birden çok VM serisine sahip bir yakınlık yerleştirme grubu kullanırken, mümkün olduğunda şablonda gerekli tüm türleri önceden belirtmek veya başarılı bir dağıtım için şansınızı artıracak bir dağıtım dizisini izlemek önemlidir. Dağıtımınız başarısız olursa dağıtımı, dağıtılacak ilk boyut olarak başarısız olan VM boyutuyla yeniden başlatın.

YakınLık Yerleştirme Grupları kullanılırken bekleyebileceğinizler

Yakınlık yerleştirme grupları aynı veri merkezinde birlikte bulundurma olanağı sunar. Ancak, yakınlık yerleştirme grupları ek bir dağıtım kısıtlamasını temsil ettiğinden, ayırma hataları oluşabilir. Yakın yerleştirme gruplarını kullanırken ayırma hataları görebileceğiniz birkaç kullanım örneği vardır:

  • Yakın yerleştirilen grupta ilk sanal makineyi istediğinizde, veri merkezi otomatik olarak seçilir. Bazı durumlarda, farklı bir sanal makine SKU'su için ikinci bir istek, bu veri merkezinde yoksa başarısız olabilir. Böyle bir durumda OverconstrainedAllocationRequest hatası döndürülür. Bunu önlemek için SKU'larınızı dağıtma sıranızı değiştirmeyi veya her iki kaynağın da tek bir ARM şablonu kullanılarak dağıtılmasını sağlamayı deneyin.
  • VM örnekleri ekleyip kaldırdığınız elastik iş yükleri söz konusu olduğunda, dağıtımınızda yakınlık yerleştirme grubu kısıtlaması olması isteğin karşılanmamasına neden olarak AllocationFailure hatasına neden olabilir.
  • Gerektiğinde VM'lerinizi durdurmak (serbest bırakmak) ve başlatmak esneklik sağlamanın başka bir yoludur. Bir VM'yi durdurup serbest bıraktığınızda kapasite tutulmadığından, kapasitenin yeniden başlatılması AllocationFailure hatasına neden olabilir.
  • VM başlatma ve yeniden dağıtma işlemleri, başarıyla yapılandırıldıktan sonra Yakınlık Yerleştirme Grubuna uymaya devam eder.

Planlı bakım ve Yakınlık Yerleştirme Grupları

Azure veri merkezinde donanım yetkisini alma gibi planlı bakım olayları, yakın yerleştirme gruplarındaki kaynakların hizalamasını etkileyebilir. Kaynaklar farklı bir veri merkezine taşınarak yakınlık yerleştirme grubuyla ilişkili birlikte bulundurma ve gecikme beklentileri kesintiye uğrayabilir.

Hizalama durumunu denetleme

Yakınlık yerleştirme gruplarınızın hizalama durumunu denetlemek için aşağıdakileri yapabilirsiniz.

  • Yakınlık yerleştirme grubu birlikte bulundurma durumu portal, CLI ve PowerShell kullanılarak görüntülenebilir.

    • PowerShell için, isteğe bağlı '-ColocationStatus' parametresi dahil edilerek Get-AzProximityPlacementGroup cmdlet'i kullanılarak birlikte bulundurma durumu elde edilebilir.

    • CLI için, isteğe bağlı '--include-colocation-status' parametresi dahil edilerek birlikte bulundurma durumu elde az ppg show edilebilir.

  • Her yakınlık yerleştirme grubu için ortak konum durumu özelliği, gruplandırılmış kaynakların geçerli hizalama durumu özetini sağlar.

    • Hizalanmış: Kaynak, yakınlık yerleştirme grubunun aynı gecikme süresi içindedir.

    • Bilinmiyor: VM kaynaklarından en az biri serbest bırakıldı. Başarıyla başladıktan sonra durum Hizalı'ya geri döner.

    • Hizalanmamış: En az bir VM kaynağı yakınlık yerleştirme grubuyla hizalanmamıştır. Hizalanmamış belirli kaynaklar üyelik bölümünde ayrıca çağrılır

  • Kullanılabilirlik Kümeleri için, tek tek VM'lerin hizalaması hakkındaki bilgileri Kullanılabilirlik Kümesine Genel Bakış sayfasında görebilirsiniz.

  • Ölçek kümeleri için, tek tek örneklerin hizalaması hakkındaki bilgiler ölçek kümesinin Genel Bakış sayfasının Örnekler sekmesinde görülebilir.

Kaynakları yeniden hizalama

Yakınlık yerleştirme grubu ise Not Aligned, durdurma\serbest bırakma işlemini durdurabilir ve etkilenen kaynakları yeniden başlatabilirsiniz. VM bir kullanılabilirlik kümesinde veya ölçek kümesindeyse, kullanılabilirlik kümesindeki veya ölçek kümesindeki tüm VM'lerin yeniden başlatılmadan önce durdurulması\serbest bırakılması gerekir.

Dağıtım kısıtlamaları nedeniyle ayırma hatası varsa, önce etkilenen yakınlık yerleştirme grubundaki (hizalanmış kaynaklar dahil) tüm kaynakları durdurmanız\serbest bırakmanız ve ardından hizalamayı geri yüklemek için yeniden başlatmanız gerekebilir.

En iyi yöntemler

  • En düşük gecikme süresi için, hızlandırılmış ağ ile birlikte yakınlık yerleştirme gruplarını kullanın. Daha fazla bilgi için bkz. Hızlandırılmış Ağ ile Linux sanal makinesi oluşturma veya Hızlandırılmış Ağ ile Windows sanal makinesi oluşturma.
  • Tüm VM boyutlarını tek bir şablonda dağıtın. Tüm VM SKU'larını ve ihtiyacınız olan boyutları desteklemeyen donanıma giriş yapmaktan kaçınmak için tüm uygulama katmanlarını tek bir şablona ekleyin; böylece hepsi aynı anda dağıtılır.
  • Dağıtımınızı PowerShell, CLI veya SDK kullanarak betik olarak çalıştırıyorsanız ayırma hatası OverconstrainedAllocationRequestalabilirsiniz. Bu durumda, tüm mevcut VM'leri durdurmanız/serbest bırakmanız ve dağıtım betiğindeki sırayı başarısız olan VM SKU'su/boyutlarıyla başlayacak şekilde değiştirmeniz gerekir.
  • VM'lerin silindiği mevcut bir yerleştirme grubunu yeniden kullanırken, VM'leri eklemeden önce silme işleminin tamamlanmasını bekleyin.
  • İlk önceliğiniz gecikme süresiyse VM'leri bir yakınlık yerleştirme grubuna ve çözümün tamamını bir kullanılabilirlik alanına yerleştirin. Ancak, dayanıklılık en yüksek önceliğinizse, örneklerinizi birden çok kullanılabilirlik alanına yayın (tek bir yakınlık yerleştirme grubu bölgelere yayılamaz).

Yakınlık yerleştirme grubu oluşturma

New-AzProximityPlacementGroup cmdlet'ini kullanarak bir yakınlık yerleştirme grubu oluşturun.

$resourceGroup = "myPPGResourceGroup"
$location = "East US"
$ppgName = "myPPG"
New-AzResourceGroup -Name $resourceGroup -Location $location
$ppg = New-AzProximityPlacementGroup `
   -Location $location `
   -Name $ppgName `
   -ResourceGroupName $resourceGroup `
   -ProximityPlacementGroupType Standard

Yakınlık yerleştirme gruplarını listeleme

Get-AzProximityPlacementGroup cmdlet'ini kullanarak tüm yakınlık yerleştirme gruplarını listeleyebilirsiniz.

Get-AzProximityPlacementGroup

Yakın yerleştirme grubunda ölçek kümesi oluşturma

Önemli

Kasım 2023'den itibaren, düzenleme modu belirtilmezse PowerShell ve Azure CLI kullanılarak oluşturulan VM ölçek kümeleri varsayılan olarak Esnek Düzenleme Modu olarak ayarlanır. Bu değişiklik ve gerçekleştirmeniz gereken eylemler hakkında daha fazla bilgi için BKZ. VMSS PowerShell/CLI Müşterileri için Yeni Değişiklik - Microsoft Community Hub

New-AzVMSS kullanarak ölçek kümesini oluştururken yakınlık yerleştirme grubu kimliğine başvurmak için kullanarak -ProximityPlacementGroup $ppg.Id yakınlık yerleştirme grubunda bir ölçek oluşturun.

$scalesetName = "myVM"

New-AzVmss `
  -ResourceGroupName $resourceGroup `
  -Location $location `
  -OrchestrationMode "Uniform" `
  -VMScaleSetName $scalesetName `
  -VirtualNetworkName "myVnet" `
  -SubnetName "mySubnet" `
  -PublicIpAddressName "myPublicIPAddress" `
  -LoadBalancerName "myLoadBalancer" `
  -ProximityPlacementGroup $ppg.Id

Get-AzProximityPlacementGroup komutunu kullanarak yerleştirme grubunda örneği görebilirsiniz.

  Get-AzProximityPlacementGroup `
   -ResourceId $ppg.Id | Format-Table `
   -Wrap `
   -Property VirtualMachineScaleSets

Sonraki adımlar

Yakınlık yerleştirme grupları oluşturmak için Azure CLI'yi de kullanabilirsiniz.