Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Podczas tworzenia zestawu skalowania należy wskazać obraz używany do wdrożenia wystąpień maszyn wirtualnych. Aby zmniejszyć liczbę zadań wykonywanych po wdrożeniu wystąpień maszyn wirtualnych, można użyć niestandardowego obrazu maszyny wirtualnej. Niestandardowy obraz maszyny wirtualnej obejmuje wszystkie wymagane instalacje i konfiguracje aplikacji. Wszystkie wystąpienia maszyn wirtualnych utworzone w zestawie skalowania używają niestandardowego obrazu maszyny wirtualnej i są gotowe do obsługi ruchu aplikacji. Z tego samouczka dowiesz się, jak wykonywać następujące działania:
- Tworzenie galerii zasobów obliczeniowych platformy Azure
- Tworzenie definicji obrazu
- Tworzenie wersji obrazu
- Tworzenie zestawu skalowania na podstawie obrazu
- Udostępnianie galerii obrazów
Jeśli nie masz subskrypcji Azure, przed rozpoczęciem utwórz darmowe konto.
Uruchamianie usługi Azure Cloud Shell
Usługa Azure Cloud Shell to bezpłatna interaktywna powłoka, której możesz używać do wykonywania kroków opisanych w tym artykule. Ma zainstalowane i skonfigurowane popularne narzędzia Azure do użycia z Twoim kontem.
Aby otworzyć Cloud Shell, należy po prostu wybrać Try it w prawym górnym rogu bloku kodu. Możesz również uruchomić Cloud Shell w osobnej karcie przeglądarki, przechodząc do https://shell.azure.com/powershell. Wybierz przycisk Kopiuj, aby skopiować bloki kodu, wklej je do usługi Cloud Shell, a następnie naciśnij klawisz Enter, aby je uruchomić.
Tworzenie i konfigurowanie źródłowej maszyny wirtualnej
Najpierw utwórz grupę zasobów za pomocą polecenia New-AzResourceGroup, a następnie utwórz maszynę wirtualną za pomocą polecenia New-AzVM. Ta maszyna wirtualna jest następnie używana jako źródło obrazu. Poniższy przykład tworzy maszynę wirtualną o nazwie myVM w grupie zasobów o nazwie myResourceGroup:
New-AzResourceGroup -Name 'myResourceGroup' -Location 'EastUS'
New-AzVm `
-ResourceGroupName 'myResourceGroup' `
-Name 'myVM' `
-Location 'East US' `
-VirtualNetworkName 'myVnet' `
-SubnetName 'mySubnet' `
-SecurityGroupName 'myNetworkSecurityGroup' `
-PublicIpAddressName 'myPublicIpAddress' `
-OpenPorts 80,3389
Przechowaj zmienną maszyny wirtualnej
Możesz wyświetlić listę maszyn wirtualnych, które są dostępne w grupie zasobów przy użyciu polecenia Get-AzVM. Gdy znasz nazwę maszyny wirtualnej i grupę zasobów, możesz użyć Get-AzVM jej ponownie, aby pobrać obiekt maszyny wirtualnej i zapisać go w zmiennej do późniejszego użycia. Ten przykład pobiera maszynę wirtualną o nazwie myVM z grupy zasobów "myResourceGroup" i przypisuje ją do zmiennej $vm.
$sourceVM = Get-AzVM `
-Name myVM `
-ResourceGroupName myResourceGroup
Tworzenie galerii obrazów
Galeria obrazów jest podstawowym zasobem używanym do włączania udostępniania obrazów. Dozwolone znaki w nazwie galerii to małe i wielkie litery, cyfry, kropki i inne znaki interpunkcyjne. Nazwa galerii nie może zawierać kreski. Nazwy galerii muszą być unikatowe w ramach subskrypcji.
Utwórz galerię obrazów przy użyciu New-AzGallery. Poniższy przykład tworzy galerię o nazwie myGallery w grupie zasobów myGalleryRG .
$resourceGroup = New-AzResourceGroup `
-Name 'myGalleryRG' `
-Location 'EastUS'
$gallery = New-AzGallery `
-GalleryName 'myGallery' `
-ResourceGroupName $resourceGroup.ResourceGroupName `
-Location $resourceGroup.Location `
-Description 'Azure Compute Gallery for my organization'
Tworzenie definicji obrazu
Definicje obrazów tworzą logiczne grupowanie obrazów. Są one używane do zarządzania informacjami o wersjach obrazów, które są w nich tworzone. Nazwy definicji obrazów mogą składać się z wielkich lub małych liter, cyfr, kropek i myślników. Aby uzyskać więcej informacji na temat wartości, które można określić dla definicji obrazu, zobacz Definicje obrazów.
Utwórz definicję obrazu przy użyciu polecenia New-AzGalleryImageDefinition. W tym przykładzie obraz galerii nosi nazwę myGalleryImage i jest tworzony dla wyspecjalizowanego obrazu.
$galleryImage = New-AzGalleryImageDefinition `
-GalleryName $gallery.Name `
-ResourceGroupName $resourceGroup.ResourceGroupName `
-Location $gallery.Location `
-Name 'myImageDefinition' `
-OsState specialized `
-OsType Windows `
-Publisher 'myPublisher' `
-Offer 'myOffer' `
-Sku 'mySKU'
Tworzenie wersji obrazu
Utwórz wersję obrazu z maszyny wirtualnej przy użyciu New-AzGalleryImageVersion.
Dozwolone znaki dla wersji obrazu to liczby i kropki. Liczby muszą należeć do zakresu 32-bitowej liczby całkowitej. Format: MajorVersion.Wersja pomocnicza.Stosowanie poprawek.
W tym przykładzie wersja obrazu to 1.0.0 i jest replikowana do centrów danych Wschodnie stany USA i Południowo-środkowe stany USA . Podczas wybierania regionów docelowych na potrzeby replikacji należy uwzględnić region źródłowy jako docelowy dla replikacji.
Aby utworzyć wersję obrazu dysku na podstawie maszyny wirtualnej, użyj polecenia $vm.Id.ToString() dla parametru -Source.
$region1 = @{Name='South Central US';ReplicaCount=1}
$region2 = @{Name='East US';ReplicaCount=2}
$targetRegions = @($region1,$region2)
New-AzGalleryImageVersion `
-GalleryImageDefinitionName $galleryImage.Name`
-GalleryImageVersionName '1.0.0' `
-GalleryName $gallery.Name `
-ResourceGroupName $resourceGroup.ResourceGroupName `
-Location $resourceGroup.Location `
-TargetRegion $targetRegions `
-Source $sourceVM.Id.ToString() `
-PublishingProfileEndOfLifeDate '2023-12-01'
Replikacja obrazu do wszystkich regionów docelowych może zająć trochę czasu.
Tworzenie zestawu skalowania na podstawie obrazu
Teraz utwórz zestaw skalowania za pomocą polecenia New-AzVmss , który używa parametru -ImageName do zdefiniowania niestandardowego obrazu maszyny wirtualnej utworzonego w poprzednim kroku. Aby dystrybuować ruch do poszczególnych wystąpień maszyn wirtualnych, tworzony jest również moduł równoważenia obciążenia. Moduł równoważenia obciążenia zawiera reguły dystrybucji ruchu na porcie TCP 80, a także zezwalać na ruch pulpitu zdalnego na porcie TCP 3389 i komunikacji zdalnej programu PowerShell na porcie TCP 5985. Po wyświetleniu monitu podaj własne żądane poświadczenia administracyjne dla wystąpień maszyn wirtualnych w zestawie skalowania:
Ważne
Od listopada 2023 r. zestawy skalowania maszyn wirtualnych utworzone przy użyciu programu PowerShell i interfejsu wiersza polecenia platformy Azure będą domyślnie ustawiać tryb elastycznej orkiestracji, jeśli nie określono trybu aranżacji. Aby uzyskać więcej informacji na temat tej zmiany i akcji, które należy wykonać, zobacz Zmiana powodująca niezgodność dla klientów programu PowerShell/interfejsu wiersza polecenia usługi VMSS — Microsoft Community Hub
# Define variables for the scale set
$resourceGroupName = "myScaleSet"
$scaleSetName = "myScaleSet"
$location = "East US"
# Create a resource group
New-AzResourceGroup -ResourceGroupName $resourceGroupName -Location $location
# Create a configuration
$vmssConfig = New-AzVmssConfig `
-Location $location `
-OrchestrationMode Flexible `
-SkuCapacity 2 `
-SkuName "Standard_D2s_v3"
# Reference the image version
Set-AzVmssStorageProfile $vmssConfig `
-OsDiskCreateOption "FromImage" `
-ImageReferenceId $galleryImage.Id
# Create the scale set
New-AzVmss `
-ResourceGroupName $resourceGroupName `
-Name $scaleSetName `
-VirtualMachineScaleSet $vmssConfig
Utworzenie i skonfigurowanie wszystkich zasobów i maszyn wirtualnych zestawu skalowania trwa kilka minut.
Udostępnianie galerii
Zalecamy udostępnienie dostępu na poziomie galerii obrazów. Użyj adresu e-mail i polecenia cmdlet Get-AzADUser , aby uzyskać identyfikator obiektu dla użytkownika, a następnie użyj polecenia New-AzRoleAssignment , aby udzielić im dostępu do galerii. Zastąp przykładowy adres e-mail w alinne_montes@contoso.com tym przykładzie własnymi informacjami.
# Get the object ID for the user
$user = Get-AzADUser -StartsWith alinne_montes@contoso.com
# Grant access to the user for our gallery
New-AzRoleAssignment `
-ObjectId $user.Id `
-RoleDefinitionName Reader `
-ResourceName $gallery.Name `
-ResourceType Microsoft.Compute/galleries `
-ResourceGroupName $resourceGroup.ResourceGroupName
Uprzątnij zasoby
Gdy grupa zasobów nie będzie już potrzebna, możesz usunąć grupę zasobów i wszystkie powiązane zasoby za pomocą polecenia cmdlet Remove-AzResourceGroup :
# Delete the gallery
Remove-AzResourceGroup -Name myGalleryRG
# Delete the scale set resource group
Remove-AzResourceGroup -Name myResoureceGroup
Dalsze kroki
W tym samouczku nauczyłeś się, jak tworzyć i używać niestandardowego obrazu maszyny wirtualnej dla swoich zestawów skalowania za pomocą Azure PowerShell.
- Tworzenie galerii zasobów obliczeniowych platformy Azure
- Tworzenie definicji obrazu
- Tworzenie wersji obrazu
- Tworzenie zestawu skalowania na podstawie obrazu
- Udostępnianie galerii obrazów
Przejdź do następnego samouczka, aby dowiedzieć się, jak wdrożyć aplikacje w zestawie skalowania.