VM's implementeren in nabijheidsplaatsingsgroepen met behulp van Azure PowerShell
Van toepassing op: ✔️ Virtuele Linux-machines ✔️ van Windows
Als u vm's zo dicht mogelijk bij elkaar wilt krijgen, moet u deze implementeren binnen een nabijheidsplaatsingsgroep.
Een nabijheidsplaatsingsgroep is een logische groepering die wordt gebruikt om ervoor te zorgen dat Azure-rekenresources zich fysiek dicht bij elkaar bevinden. Nabijheidsplaatsingsgroepen zijn handig voor workloads waarbij lage latentie een vereiste is.
Een nabijheidsplaatsingsgroep maken
Maak een nabijheidsplaatsingsgroep met behulp van de cmdlet New-AzProximityPlacementGroup .
$resourceGroup = "myPPGResourceGroup"
$location = "East US"
$ppgName = "myPPG"
$zone = "1"
$vmSize1 = "Standard_E64s_v4"
$vmSize2 = "Standard_M416ms_v2"
New-AzResourceGroup -Name $resourceGroup -Location $location
$ppg = New-AzProximityPlacementGroup `
-Location $location `
-Name $ppgName `
-ResourceGroupName $resourceGroup `
-ProximityPlacementGroupType Standard `
-Zone $zone `
-IntentVMSizeList $vmSize1, $vmSize2
Nabijheidsplaatsingsgroepen vermelden
U kunt alle nabijheidsplaatsingsgroepen weergeven met behulp van de cmdlet Get-AzProximityPlacementGroup .
Get-AzProximityPlacementGroup -ResourceGroupName $resourceGroup -Name $ppgName
ResourceGroupName : myPPGResourceGroup
ProximityPlacementGroupType : Standard
Id : /subscriptions/[subscriptionId]/resourceGroups/myPPGResourceGroup/providers/Microsoft.Compute/proximityPlacementGroups/myPPG
Name : myPPG
Type : Microsoft.Compute/proximityPlacementGroups
Location : eastus
Tags : {}
Intent :
VmSizes[0] : Standard_E64s_v4
VmSizes[1] : Standard_M416ms_v2
Zones[0] : 1
Een VM maken:
Maak een VIRTUELE machine in de nabijheidsplaatsingsgroep met behulp van -ProximityPlacementGroup $ppg.Id
de id van de nabijheidsplaatsingsgroep wanneer u New-AzVM gebruikt om de virtuele machine te maken.
$vmName = "myVM"
New-AzVm `
-ResourceGroupName $resourceGroup `
-Name $vmName `
-Location $location `
-ProximityPlacementGroup $ppg.Id
U kunt de VIRTUELE machine in de plaatsingsgroep zien met behulp van Get-AzProximityPlacementGroup.
Get-AzProximityPlacementGroup -ResourceId $ppg.Id |
Format-Table -Property VirtualMachines -Wrap
Een bestaande VM verplaatsen naar een nabijheidsplaatsingsgroep
U kunt ook een bestaande VIRTUELE machine toevoegen aan een nabijheidsplaatsingsgroep. U moet eerst de toewijzing van de virtuele machine stoppen en vervolgens de VM bijwerken en opnieuw opstarten.
$ppg = Get-AzProximityPlacementGroup -ResourceGroupName myPPGResourceGroup -Name myPPG
$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM
Stop-AzVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName
Update-AzVM -VM $vm -ResourceGroupName $vm.ResourceGroupName -ProximityPlacementGroupId $ppg.Id
Start-AzVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName
Een bestaande VM uit een nabijheidsplaatsingsgroep verplaatsen
Als u een VIRTUELE machine uit een nabijheidsplaatsingsgroep wilt verwijderen, moet u eerst de toewijzing van de virtuele machine stoppen en vervolgens de VM bijwerken en opnieuw opstarten.
$ppg = Get-AzProximityPlacementGroup -ResourceGroupName myPPGResourceGroup -Name myPPG
$vm = Get-AzVM -ResourceGroupName myResourceGroup -Name myVM
Stop-AzVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName
$vm.ProximityPlacementGroup = ""
Update-AzVM -VM $vm -ResourceGroupName $vm.ResourceGroupName
Start-AzVM -Name $vm.Name -ResourceGroupName $vm.ResourceGroupName
Beschikbaarheidssets
U kunt ook een beschikbaarheidsset maken in uw nabijheidsplaatsingsgroep. Gebruik dezelfde -ProximityPlacementGroup
parameter met de cmdlet New-AzAvailabilitySet om een beschikbaarheidsset te maken en alle virtuele machines die in de beschikbaarheidsset zijn gemaakt, worden ook gemaakt in dezelfde nabijheidsplaatsingsgroep.
Als u een bestaande beschikbaarheidsset wilt toevoegen aan of verwijderen uit een nabijheidsplaatsingsgroep, moet u eerst alle VIRTUELE machines in de beschikbaarheidsset stoppen.
Een bestaande beschikbaarheidsset verplaatsen naar een nabijheidsplaatsingsgroep
$resourceGroup = "myResourceGroup"
$avSetName = "myAvailabilitySet"
$avSet = Get-AzAvailabilitySet -ResourceGroupName $resourceGroup -Name $avSetName
$vmIds = $avSet.VirtualMachinesReferences
foreach ($vmId in $vmIDs){
$string = $vmID.Id.Split("/")
$vmName = $string[8]
Stop-AzVM -ResourceGroupName $resourceGroup -Name $vmName -Force
}
$ppg = Get-AzProximityPlacementGroup -ResourceGroupName myPPG -Name myPPG
Update-AzAvailabilitySet -AvailabilitySet $avSet -ProximityPlacementGroupId $ppg.Id
foreach ($vmId in $vmIDs){
$string = $vmID.Id.Split("/")
$vmName = $string[8]
Start-AzVM -ResourceGroupName $resourceGroup -Name $vmName
}
Een bestaande beschikbaarheidsset uit een nabijheidsplaatsingsgroep verplaatsen
$resourceGroup = "myResourceGroup"
$avSetName = "myAvailabilitySet"
$avSet = Get-AzAvailabilitySet -ResourceGroupName $resourceGroup -Name $avSetName
$vmIds = $avSet.VirtualMachinesReferences
foreach ($vmId in $vmIDs){
$string = $vmID.Id.Split("/")
$vmName = $string[8]
Stop-AzVM -ResourceGroupName $resourceGroup -Name $vmName -Force
}
$avSet.ProximityPlacementGroup = ""
Update-AzAvailabilitySet -AvailabilitySet $avSet
foreach ($vmId in $vmIDs){
$string = $vmID.Id.Split("/")
$vmName = $string[8]
Start-AzVM -ResourceGroupName $resourceGroup -Name $vmName
}
Schaalsets
U kunt ook een schaalset maken in uw nabijheidsplaatsingsgroep. Gebruik dezelfde -ProximityPlacementGroup
parameter met New-AzVmss om een schaalset te maken en alle exemplaren worden gemaakt in dezelfde nabijheidsplaatsingsgroep.
Als u een bestaande schaalset wilt toevoegen aan of verwijderen uit een nabijheidsplaatsingsgroep, moet u eerst de schaalset stoppen.
Een bestaande schaalset verplaatsen naar een nabijheidsplaatsingsgroep
$ppg = Get-AzProximityPlacementGroup -ResourceGroupName myPPG -Name myPPG
$vmss = Get-AzVmss -ResourceGroupName myVMSSResourceGroup -VMScaleSetName myScaleSet
Stop-AzVmss -VMScaleSetName $vmss.Name -ResourceGroupName $vmss.ResourceGroupName
Update-AzVmss -VMScaleSetName $vmss.Name -ResourceGroupName $vmss.ResourceGroupName -ProximityPlacementGroupId $ppg.Id
Start-AzVmss -VMScaleSetName $vmss.Name -ResourceGroupName $vmss.ResourceGroupName
Een bestaande schaalset uit een nabijheidsplaatsingsgroep verplaatsen
$vmss = Get-AzVmss -ResourceGroupName myVMSSResourceGroup -VMScaleSetName myScaleSet
Stop-AzVmss -VMScaleSetName $vmss.Name -ResourceGroupName $vmss.ResourceGroupName
$vmss.ProximityPlacementGroup = ""
Update-AzVmss -VirtualMachineScaleSet $vmss -VMScaleSetName $vmss.Name -ResourceGroupName $vmss.ResourceGroupName
Start-AzVmss -VMScaleSetName $vmss.Name -ResourceGroupName $vmss.ResourceGroupName
Volgende stappen
U kunt de Azure CLI ook gebruiken om nabijheidsplaatsingsgroepen te maken.