Wdrażanie maszyn wirtualnych w grupach umieszczania w pobliżu przy użyciu programu Azure PowerShell
Dotyczy: ✔️ Maszyny wirtualne z systemem Linux maszyny wirtualne z ✔️ systemem Windows
Aby uzyskać możliwie najbliższe maszyny wirtualne, osiągnięcie najmniejszego możliwego opóźnienia, należy wdrożyć je w grupie umieszczania w pobliżu.
Grupa umieszczania w pobliżu to logiczne grupowanie używane do upewnienia się, że zasoby obliczeniowe platformy Azure znajdują się fizycznie blisko siebie. Grupy umieszczania w pobliżu są przydatne w przypadku obciążeń, w których wymagane jest małe opóźnienie.
Tworzenie grupy umieszczania w pobliżu
Utwórz grupę umieszczania w pobliżu przy użyciu polecenia 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
Wyświetlanie listy grup umieszczania w pobliżu
Listę wszystkich grup umieszczania w pobliżu można wyświetlić przy użyciu polecenia 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
Tworzenie maszyny wirtualnej
Utwórz maszynę wirtualną w grupie umieszczania w pobliżu przy użyciu polecenia , -ProximityPlacementGroup $ppg.Id
aby odwołać się do identyfikatora grupy umieszczania w pobliżu podczas tworzenia maszyny wirtualnej za pomocą polecenia New-AzVM .
$vmName = "myVM"
New-AzVm `
-ResourceGroupName $resourceGroup `
-Name $vmName `
-Location $location `
-ProximityPlacementGroup $ppg.Id
Maszyna wirtualna jest widoczna w grupie umieszczania przy użyciu polecenia Get-AzProximityPlacementGroup.
Get-AzProximityPlacementGroup -ResourceId $ppg.Id |
Format-Table -Property VirtualMachines -Wrap
Przenoszenie istniejącej maszyny wirtualnej do grupy umieszczania w pobliżu
Możesz również dodać istniejącą maszynę wirtualną do grupy umieszczania w pobliżu. Najpierw należy zatrzymać\cofnąć przydział maszyny wirtualnej, a następnie zaktualizować maszynę wirtualną i ponownie uruchomić.
$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
Przenoszenie istniejącej maszyny wirtualnej z grupy umieszczania w pobliżu
Aby usunąć maszynę wirtualną z grupy umieszczania w pobliżu, najpierw należy zatrzymać\cofnąć przydział maszyny wirtualnej, a następnie zaktualizować maszynę wirtualną i ponownie uruchomić.
$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
Zestawy dostępności
Zestaw dostępności można również utworzyć w grupie umieszczania w pobliżu. Użyj tego samego -ProximityPlacementGroup
parametru z poleceniem cmdlet New-AzAvailabilitySet , aby utworzyć zestaw dostępności, a wszystkie maszyny wirtualne utworzone w zestawie dostępności również zostaną utworzone w tej samej grupie umieszczania w pobliżu.
Aby dodać lub usunąć istniejący zestaw dostępności do grupy umieszczania w pobliżu, należy najpierw zatrzymać wszystkie maszyny wirtualne w zestawie dostępności.
Przenoszenie istniejącego zestawu dostępności do grupy umieszczania w pobliżu
$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
}
Przenoszenie istniejącego zestawu dostępności z grupy umieszczania w pobliżu
$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
}
Zestawy skalowania
Zestaw skalowania można również utworzyć w grupie umieszczania w pobliżu. Użyj tego samego -ProximityPlacementGroup
parametru z poleceniem New-AzVmss , aby utworzyć zestaw skalowania, a wszystkie wystąpienia zostaną utworzone w tej samej grupie umieszczania w pobliżu.
Aby dodać lub usunąć istniejący zestaw skalowania do grupy umieszczania w pobliżu, należy najpierw zatrzymać zestaw skalowania.
Przenoszenie istniejącego zestawu skalowania do grupy umieszczania w pobliżu
$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
Przenoszenie istniejącego zestawu skalowania z grupy umieszczania w pobliżu
$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
Następne kroki
Interfejs wiersza polecenia platformy Azure umożliwia również tworzenie grup umieszczania w pobliżu.