Dostarczanie informacji o planie zakupu w witrynie Azure Marketplace podczas tworzenia obrazów
Dotyczy: ✔️ Maszyny wirtualne z systemem Linux Maszyny ✔️ wirtualne z systemem Windows — elastyczne zestawy ✔️ ✔️ skalowania
Jeśli tworzysz obraz w galerii udostępnionej, używając źródła, które zostało pierwotnie utworzone na podstawie obrazu witryny Azure Marketplace, może być konieczne śledzenie informacji o planie zakupu. W tym artykule pokazano, jak znaleźć informacje o planie zakupu dla maszyny wirtualnej, a następnie użyć tych informacji podczas tworzenia definicji obrazu. Omówiono również używanie informacji z definicji obrazu w celu uproszczenia dostarczania informacji o planie zakupu podczas tworzenia maszyny wirtualnej dla obrazu.
Aby uzyskać więcej informacji na temat znajdowania obrazów z witryny Marketplace i korzystania z nich, zobacz Znajdowanie obrazów z witryny Azure Marketplace i korzystanie z nich.
Pobieranie informacji o źródłowej maszynie wirtualnej
Jeśli nadal masz oryginalną maszynę wirtualną, możesz uzyskać informacje o planie, wydawcy i produkcie przy użyciu polecenia Get-AzVM. Ten przykład pobiera maszynę wirtualną o nazwie myVM w grupie zasobów myResourceGroup , a następnie wyświetla informacje o planie zakupu maszyny wirtualnej.
$vm = Get-azvm `
-ResourceGroupName myResourceGroup `
-Name myVM
$vm.Plan
Tworzenie definicji obrazu
Pobierz galerię, której chcesz użyć do przechowywania obrazu. Możesz najpierw wyświetlić listę wszystkich galerii.
Get-AzResource -ResourceType Microsoft.Compute/galleries | Format-Table
Następnie utwórz zmienne dla galerii, której chcesz użyć. W tym przykładzie tworzymy zmienną o nazwie $gallery
myGallery w grupie zasobów myGalleryRG .
$gallery = Get-AzGallery `
-Name myGallery `
-ResourceGroupName myGalleryRG
Utwórz definicję obrazu przy użyciu parametrów -PurchasePlanPublisher
, -PurchasePlanProduct
i -PurchasePlanName
.
$imageDefinition = New-AzGalleryImageDefinition `
-GalleryName $gallery.Name `
-ResourceGroupName $gallery.ResourceGroupName `
-Location $gallery.Location `
-Name 'myImageDefinition' `
-OsState specialized `
-OsType Linux `
-Publisher 'myPublisher' `
-Offer 'myOffer' `
-Sku 'mySKU' `
-PurchasePlanPublisher $vm.Plan.Publisher `
-PurchasePlanProduct $vm.Plan.Product `
-PurchasePlanName $vm.Plan.Name
Następnie utwórz wersję obrazu przy użyciu polecenia New-AzGalleryImageVersion.
Tworzenie maszyny wirtualnej
Po przejściu do utworzenia maszyny wirtualnej na podstawie obrazu możesz użyć informacji z definicji obrazu, aby przekazać informacje o wydawcy przy użyciu polecenia Set-AzVMPlan.
# Create some variables for the new VM.
$resourceGroup = "mySIGPubVM"
$location = "West Central US"
$vmName = "mySIGPubVM"
# Create a resource group
New-AzResourceGroup -Name $resourceGroup -Location $location
# Create the network resources.
$subnetConfig = New-AzVirtualNetworkSubnetConfig `
-Name mySubnet `
-AddressPrefix 192.168.1.0/24
$vnet = New-AzVirtualNetwork `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name MYvNET `
-AddressPrefix 192.168.0.0/16 `
-Subnet $subnetConfig
$pip = New-AzPublicIpAddress `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name "mypublicdns$(Get-Random)" `
-AllocationMethod Static `
-IdleTimeoutInMinutes 4
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig `
-Name myNetworkSecurityGroupRuleRDP `
-Protocol Tcp `
-Direction Inbound `
-Priority 1000 `
-SourceAddressPrefix * `
-SourcePortRange * `
-DestinationAddressPrefix * `
-DestinationPortRange 3389 -Access Deny
$nsg = New-AzNetworkSecurityGroup `
-ResourceGroupName $resourceGroup `
-Location $location `
-Name myNetworkSecurityGroup `
-SecurityRules $nsgRuleRDP
$nic = New-AzNetworkInterface `
-Name $vmName `
-ResourceGroupName $resourceGroup `
-Location $location `
-SubnetId $vnet.Subnets[0].Id `
-PublicIpAddressId $pip.Id `
-NetworkSecurityGroupId $nsg.Id
# Create a virtual machine configuration using Set-AzVMSourceImage -Id $imageDefinition.Id to use the latest available image version. Set-AZVMPlan is used to pass the plan information in for the VM.
$vmConfig = New-AzVMConfig `
-VMName $vmName `
-VMSize Standard_D1_v2 | `
Set-AzVMSourceImage -Id $imageDefinition.Id | `
Set-AzVMPlan `
-Publisher $imageDefinition.PurchasePlan.Publisher `
-Product $imageDefinition.PurchasePlan.Product `
-Name $imageDefinition.PurchasePlan.Name | `
Add-AzVMNetworkInterface -Id $nic.Id
# Create the virtual machine
New-AzVM `
-ResourceGroupName $resourceGroup `
-Location $location `
-VM $vmConfig
Następne kroki
Aby uzyskać więcej informacji na temat znajdowania obrazów z witryny Marketplace i korzystania z nich, zobacz Znajdowanie obrazów z witryny Azure Marketplace i korzystanie z nich.