New-AzVMConfig

Konfigurálható virtuálisgép-objektumot hoz létre.

Syntax

New-AzVMConfig
   [-VMName] <String>
   [-VMSize] <String>
   [[-AvailabilitySetId] <String>]
   [[-LicenseType] <String>]
   [-Zone <String[]>]
   [-ProximityPlacementGroupId <String>]
   [-HostId <String>]
   [-VmssId <String>]
   [-MaxPrice <Double>]
   [-EvictionPolicy <String>]
   [-Priority <String>]
   [-Tags <Hashtable>]
   [-EnableUltraSSD]
   [-EncryptionAtHost]
   [-CapacityReservationGroupId <String>]
   [-ImageReferenceId <String>]
   [-DiskControllerType <String>]
   [-UserData <String>]
   [-PlatformFaultDomain <Int32>]
   [-HibernationEnabled]
   [-vCPUCountAvailable <Int32>]
   [-vCPUCountPerCore <Int32>]
   [-SharedGalleryImageId <String>]
   [-SecurityType <String>]
   [-EnableVtpm <Boolean>]
   [-EnableSecureBoot <Boolean>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
New-AzVMConfig
   [-VMName] <String>
   [-VMSize] <String>
   [[-AvailabilitySetId] <String>]
   [[-LicenseType] <String>]
   [-IdentityType] <ResourceIdentityType>
   [-IdentityId <String[]>]
   [-Zone <String[]>]
   [-ProximityPlacementGroupId <String>]
   [-HostId <String>]
   [-VmssId <String>]
   [-MaxPrice <Double>]
   [-EvictionPolicy <String>]
   [-Priority <String>]
   [-Tags <Hashtable>]
   [-EnableUltraSSD]
   [-EncryptionAtHost]
   [-CapacityReservationGroupId <String>]
   [-ImageReferenceId <String>]
   [-DiskControllerType <String>]
   [-UserData <String>]
   [-PlatformFaultDomain <Int32>]
   [-HibernationEnabled]
   [-vCPUCountAvailable <Int32>]
   [-vCPUCountPerCore <Int32>]
   [-SharedGalleryImageId <String>]
   [-SecurityType <String>]
   [-EnableVtpm <Boolean>]
   [-EnableSecureBoot <Boolean>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Description

A New-AzVMConfig parancsmag létrehoz egy konfigurálható helyi virtuálisgép-objektumot az Azure-hoz.

A virtuálisgép-objektum különböző tulajdonságainak beállításához a következő parancsmagok használhatók:

Példák

1. példa: Virtuálisgép-erőforrás létrehozása

$rgname = "resourceGroupName";
$loc = "eastus";

New-AzResourceGroup -Name $rgname -Location $loc -Force;

# General Setup
$vmname = 'v' + $rgname;
$domainNameLabel = "d1" + $rgname;
$vmSize = 'Standard_DS3_v2';
$computerName = "c" + $rgname;
$securityTypeStnd = "Standard";
        
# Credential. Input Username and Password values
$user = "";
$securePassword = "" | ConvertTo-SecureString -AsPlainText -Force;  
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
        
# Creating a VMConfig 
$vmconfig = New-AzVMConfig -VMName $vmname -vmsize $vmsize -SecurityType $securityTypeStnd;

# Set source image values
$publisherName = "MicrosoftWindowsServer";
$offer = "WindowsServer";
$sku = "2019-DataCenter";
$vmconfig = Set-AzVMSourceImage -VM $vmconfig -PublisherName $publisherName -Offer $offer -Skus $sku -Version 'latest';

# NRP Setup
$subnet = New-AzVirtualNetworkSubnetConfig -Name ('subnet' + $rgname) -AddressPrefix "10.0.0.0/24";
$vnet = New-AzVirtualNetwork -Force -Name ('vnet' + $rgname) -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
$vnet = Get-AzVirtualNetwork -Name ('vnet' + $rgname) -ResourceGroupName $rgname;
$subnetId = $vnet.Subnets[0].Id;
$pubip = New-AzPublicIpAddress -Force -Name ('pubip' + $rgname) -ResourceGroupName $rgname -Location $loc -AllocationMethod Static -DomainNameLabel $domainNameLabel;
$pubip = Get-AzPublicIpAddress -Name ('pubip' + $rgname) -ResourceGroupName $rgname;
$pubipId = $pubip.Id;
$nic = New-AzNetworkInterface -Force -Name ('nic' + $rgname) -ResourceGroupName $rgname -Location $loc -SubnetId $subnetId -PublicIpAddressId $pubip.Id;
$nic = Get-AzNetworkInterface -Name ('nic' + $rgname) -ResourceGroupName $rgname;
$nicId = $nic.Id;

$vmconfig = Add-AzVMNetworkInterface -VM $vmconfig -Id $nicId;
$vmconfig = Set-AzVMOperatingSystem -VM $vmconfig -Windows -ComputerName $computerName -Credential $cred;

# Create the VM
New-AzVM -ResourceGroupName $rgname -Location $loc -Vm $vmconfig;
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmname;

2. példa: Virtuálisgép-objektum létrehozása tartalék tartományok beállításával rendelkező virtuálisgép-méretezési csoportban

$rgname = "resourceGroupName";
$loc = "eastus";
$vmname = "vm" + $rgname;

New-AzResourceGroup -Name $rgname -Location $loc -Force;

$domainNameLabel = "d1" + $rgname;
$vmname = "v" + $rgname;
$vnetname = "myVnet";
$vnetAddress = "10.0.0.0/16";
$subnetname = "slb" + $rgname;
$subnetAddress = "10.0.2.0/24";
$vmssName = "vmss" + $rgname;
$faultDomainNumber = 2;
$vmssFaultDomain = 3;
$securityTypeStnd = "Standard";

$OSDiskName = $vmname + "-osdisk";
$NICName = $vmname+ "-nic";
$NSGName = $vmname + "-NSG";
$OSDiskSizeinGB = 128;
$VMSize = "Standard_DS2_v2";
$PublisherName = "MicrosoftWindowsServer";
$Offer = "WindowsServer";
$SKU = "2019-Datacenter";
        
# Credential. Input Username and Password values.
$user = "";
$securePassword = "" | ConvertTo-SecureString -AsPlainText -Force;  
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);

$frontendSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetname -AddressPrefix $subnetAddress;
$vnet = New-AzVirtualNetwork -Name $vnetname -ResourceGroupName $rgname -Location $loc -AddressPrefix $vnetAddress -Subnet $frontendSubnet;

$vmssConfig = New-AzVmssConfig -Location $loc -PlatformFaultDomainCount $vmssFaultDomain -SecurityType $securityTypeStnd;
$vmss = New-AzVmss -ResourceGroupName $RGName -Name $VMSSName -VirtualMachineScaleSet $vmssConfig;

$nsgRuleRDP = New-AzNetworkSecurityRuleConfig -Name RDP  -Protocol Tcp  -Direction Inbound -Priority 1001 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389 -Access Allow;
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $RGName -Location $loc -Name $NSGName  -SecurityRules $nsgRuleRDP;
$nic = New-AzNetworkInterface -Name $NICName -ResourceGroupName $RGName -Location $loc -SubnetId $vnet.Subnets[0].Id -NetworkSecurityGroupId $nsg.Id -EnableAcceleratedNetworking;

# VM
$vmConfig = New-AzVMConfig -VMName $vmName -VMSize $VMSize  -VmssId $vmss.Id -PlatformFaultDomain $faultDomainNumber -SecurityType $securityTypeStnd;
Set-AzVMOperatingSystem -VM $vmConfig -Windows -ComputerName $vmName -Credential $cred ;
Set-AzVMOSDisk -VM $vmConfig -StorageAccountType "Premium_LRS" -Caching ReadWrite -Name $OSDiskName -DiskSizeInGB $OSDiskSizeinGB -CreateOption FromImage ;
Set-AzVMSourceImage -VM $vmConfig -PublisherName $PublisherName -Offer $Offer -Skus $SKU -Version latest ;
Add-AzVMNetworkInterface -VM $vmConfig -Id $nic.Id;

New-AzVM -ResourceGroupName $RGName -Location $loc -VM $vmConfig;
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmName;

2. példa: Virtuális gép létrehozása a TrustedLaunch biztonsági típus virtuálisgép-konfigurációs objektumával, a Vtpm és a Biztonságos rendszerindítás jelző alapértelmezés szerint Igaz értékre van állítva.

$rgname = "rgname";
$loc = "eastus";
New-AzResourceGroup -Name $rgname -Location $loc -Force;    
 
# VM Profile & Hardware
$domainNameLabel = "d1" + $rgname;
$vmsize = 'Standard_D4s_v3';
$vmname = $rgname + 'Vm';
$securityType_TL = "TrustedLaunch";
$vnetname = "myVnet";
$vnetAddress = "10.0.0.0/16";
$subnetname = "slb" + $rgname;
$subnetAddress = "10.0.2.0/24";
$OSDiskName = $vmname + "-osdisk";
$NICName = $vmname+ "-nic";
$NSGName = $vmname + "-NSG";
$OSDiskSizeinGB = 128;
$PublisherName = "MicrosoftWindowsServer";
$Offer = "WindowsServer";
$SKU = "2016-datacenter-gensecond";
$disable = $false;
$enable = $true;
$extDefaultName = "GuestAttestation";
$vmGADefaultIDentity = "SystemAssigned";
# Credential
$password = <Password>;
$securePassword = $password | ConvertTo-SecureString -AsPlainText -Force;  
$user = <Username>;
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
# Network resources
$frontendSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetname -AddressPrefix $subnetAddress;
$vnet = New-AzVirtualNetwork -Name $vnetname -ResourceGroupName $rgname -Location $loc -AddressPrefix $vnetAddress -Subnet $frontendSubnet;
$nsgRuleRDP = New-AzNetworkSecurityRuleConfig -Name RDP  -Protocol Tcp  -Direction Inbound -Priority 1001 -SourceAddressPrefix * -SourcePortRange * -DestinationAddressPrefix * -DestinationPortRange 3389 -Access Allow;
$nsg = New-AzNetworkSecurityGroup -ResourceGroupName $rgname -Location $loc -Name $NSGName  -SecurityRules $nsgRuleRDP;
$nic = New-AzNetworkInterface -Name $NICName -ResourceGroupName $rgname -Location $loc -SubnetId $vnet.Subnets[0].Id -NetworkSecurityGroupId $nsg.Id -EnableAcceleratedNetworking;
# Configure Values using VMConfig Object
$vmConfig = New-AzVMConfig -VMName $vmname -VMSize $vmsize;
Set-AzVMOperatingSystem -VM $vmConfig -Windows -ComputerName $vmname -Credential $cred;
Set-AzVMSourceImage -VM $vmConfig -PublisherName $PublisherName -Offer $Offer -Skus $SKU -Version latest ;
Add-AzVMNetworkInterface -VM $vmConfig -Id $nic.Id;
  
# VM Creation using VMConfig for Trusted Launch SecurityType
$vmConfig = Set-AzVMSecurityProfile -VM $vmConfig -SecurityType $securityType_TL;
New-AzVM -ResourceGroupName $rgname -Location $loc -VM $vmConfig;
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmname;
# Validate that for -SecurityType "TrustedLaunch", "-Vtpm" and "-SecureBoot" are "Enabled/true"
#$vm.SecurityProfile.UefiSettings.VTpmEnabled $true;
#$vm.SecurityProfile.UefiSettings.SecureBootEnabled $true;

Ez a példa létrehoz egy virtuális gépet egy VMConfig objektummal a TrustedLaunch biztonsági típushoz, és ellenőrzi, hogy a VtpmEnabled és a SecureBootEnabled érték alapértelmezés szerint igaz-e.

Paraméterek

-AvailabilitySetId

Egy rendelkezésre állási csoport azonosítóját adja meg. Rendelkezésre állási csoport objektumának beszerzéséhez használja a Get-AzAvailabilitySet parancsmagot. A rendelkezésre állási csoport objektuma azonosító tulajdonságot tartalmaz.
Az azonos rendelkezésre állási csoportban megadott virtuális gépek különböző csomópontokhoz vannak lefoglalva a rendelkezésre állás maximalizálása érdekében.
A rendelkezésre állási csoportokról további információt a virtuális gépek rendelkezésre állásának kezelése című témakörben talál.
Az Azure tervezett karbantartásával kapcsolatos további információkért tekintse meg az Azure-beli virtuális gépek tervezett karbantartását ismertető témakört .
Jelenleg egy virtuális gép csak a létrehozáskor vehető fel a rendelkezésre állási csoporthoz. A rendelkezésre állási csoportnak, amelyhez a virtuális gépet hozzá szeretné adni, ugyanabban az erőforráscsoportban kell lennie, mint a rendelkezésre állási csoport erőforrásának. Meglévő virtuális gép nem vehető fel rendelkezésre állási csoporthoz.
Ez a tulajdonság nem létezhet nem null értékű properties.virtualMachineScaleSet hivatkozással együtt.

Type:String
Position:2
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-CapacityReservationGroupId

A lefoglaláshoz használt kapacitásfoglalási csoport azonosítója.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

Az Azure-ral való kommunikációhoz használt hitelesítő adatok, fiók, bérlő és előfizetés.

Type:IAzureContextContainer
Aliases:AzContext, AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DiskControllerType

Megadja a virtuális géphez és a VirtualMachineScaleSethez konfigurált lemezvezérlő típusát. Ez a tulajdonság csak azokhoz a virtuális gépekhez támogatott, amelyek operációsrendszer-lemeze és virtuálisgép-termékváltozata támogatja a 2. generációt (https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2). Ellenőrizze, hogy a régióhoz tartozó Microsoft.Compute termékváltozat api válaszában a virtuálisgép-termékváltozatok részeként visszaadott HyperVGenerations képesség tartalmazza-e a V2 -t (https://learn.microsoft.com/rest/api/compute/resourceskus/list) .
A támogatott lemezvezérlő-típusokkal kapcsolatos további információkért tekintse meg a következőt https://aka.ms/azure-diskcontrollertypes:

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EnableSecureBoot

Megadja, hogy engedélyezni kell-e a biztonságos rendszerindítást a virtuális gépen.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EnableUltraSSD

Lehetővé teszi, hogy egy vagy több felügyelt adatlemez UltraSSD_LRS tárfióktípussal rendelkezzen a virtuális gépen. A tárfiók típusú felügyelt lemezek UltraSSD_LRS csak akkor vehetők fel virtuális gépekre, ha ez a tulajdonság engedélyezve van.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EnableVtpm

Megadja, hogy a virtuális gépen engedélyezve legyen-e a vTPM.

Type:Nullable<T>[Boolean]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-EncryptionAtHost

A EncryptionAtHost tulajdonságot a felhasználó használhatja a kérelemben a virtuális gép vagy virtuálisgép-méretezési csoport gazdagéptitkosításának engedélyezésére vagy letiltására. Ez lehetővé teszi az összes lemez titkosítását, beleértve magát a gazdagépen található Resource/Temp lemezt is. Alapértelmezett: A gazdagép titkosítása le lesz tiltva, kivéve, ha ez a tulajdonság igaz értékre van állítva az erőforrás esetében.

Type:SwitchParameter
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-EvictionPolicy

Az Azure Spot virtuális gép kiürítési szabályzata. A támogatott értékek a "Felszabadítás" és a "Törlés".

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-HibernationEnabled

A virtuális gépen a hibernálási képességet engedélyező vagy letiltó jelző.

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-HostId

A gazdagép azonosítója

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-IdentityId

Megadja a virtuálisgép-méretezési csoporthoz társított felhasználói identitások listáját. A felhasználói identitáshivatkozások ARM-erőforrás-azonosítók lesznek az űrlapon: "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/identityes/{identityName}"

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-IdentityType

A virtuális gép identitása, ha konfigurálva van.

Type:Nullable<T>[ResourceIdentityType]
Accepted values:SystemAssigned, UserAssigned, SystemAssignedUserAssigned, None
Position:4
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-ImageReferenceId

A megosztott katalógus lemezképének egyedi azonosítóját adta meg a virtuális gép üzembe helyezéséhez. Ez lekérhető a megosztott katalógus képének GET hívásából.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-LicenseType

Megadja a licenc típusát, amely azt jelzi, hogy a virtuális gép lemezképe vagy lemeze helyszíni licenccel rendelkezik. A Windows Server lehetséges értékei a következők:

  • Windows_Client
  • Windows_Server

A Linux Server operációs rendszer lehetséges értékei a következők:

  • RHEL_BYOS (RHEL esetén)
  • SLES_BYOS (su Standard kiadás esetén)
Type:String
Position:3
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxPrice

Meghatározza az alacsony prioritású virtuális gépek/VMSS-k maximális árát. Ez az ár amerikai dollárban van. Ez az ár a virtuális gép méretének jelenlegi alacsony prioritású árával lesz összehasonlítva. Emellett az árakat az alacsony prioritású virtuális gép/VMSS létrehozása/frissítésekor hasonlítják össze, és a művelet csak akkor lesz sikeres, ha a maximális Ár nagyobb a jelenlegi alacsony prioritású árnál. A maxPrice az alacsony prioritású virtuális gép/VMSS kiürítésére is használható, ha az aktuális alacsony prioritású ár meghaladja a maxPrice értéket a virtuális gép/VMSS létrehozása után. A lehetséges értékek a következők: a nullánál nagyobb decimális értékek. Példa: 0.01538. A -1 azt jelzi, hogy az alacsony prioritású virtuális gépet/VMSS-t ár miatt nem szabad kizárni. Emellett az alapértelmezett maximális ár -1, ha ön nem adja meg.

Type:Double
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-PlatformFaultDomain

Megadja a virtuális gép tartalék tartományát.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Priority

A virtuális gép prioritása. Csak a támogatott értékek a "Regular", a "Spot" és az "Low". A "Regular" a normál virtuális géphez készült. A "Spot" a kihasználatlan virtuális géphez készült. Az "Alacsony" a kihasználatlan virtuális gépekre is vonatkozik, de a "Spot" helyére a "Spot" lép. Használja a "Spot" elemet a "Low" helyett.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-ProximityPlacementGroupId

A virtuális géppel használni kívánt közelségi elhelyezési csoport erőforrás-azonosítója.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SecurityType

A virtuális gép SecurityType tulajdonságát adja meg. Az Uefi engedélyezéséhez minden megadott értékre be kell állítani Gépház. Alapértelmezés szerint az Uefi Gépház csak akkor lesz engedélyezve, ha ez a tulajdonság be van állítva.

Type:String
Accepted values:TrustedLaunch, ConfidentialVM, Standard
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-SharedGalleryImageId

A megosztott katalógus lemezképének egyedi azonosítóját adta meg a virtuális gép üzembe helyezéséhez. Ez lekérhető a megosztott katalógus képének GET hívásából.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Tags

Az erőforráshoz csatolt címkék.

Type:Hashtable
Aliases:Tag
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-UserData

UserData a virtuális géphez, amely a base-64 kódolású lesz. Az ügyfélnek itt nem szabad titkos kulcsokat átadnia.

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-vCPUCountAvailable

A virtuális géphez elérhető vCPU-k számát adja meg. Ha ez a tulajdonság nincs megadva a kérelem törzsében, az alapértelmezett viselkedés az, hogy az adott virtuálisgép-mérethez elérhető virtuálisgép-mérethez elérhető értékre állítja azt a régióban elérhető összes virtuálisgép-méret listájának API-válaszában.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-vCPUCountPerCore

Megadja a vCPU és a fizikai mag arányát. Ha ez a tulajdonság nincs megadva a kérelem törzsében, az alapértelmezett viselkedés a virtuálisgép-mérethez tartozó vCPUsPerCore értékre van állítva a régióban elérhető összes virtuálisgép-méret listázása API-válaszában. A tulajdonság 1 értékre állítása azt is jelenti, hogy a hyper-threading le van tiltva.

Type:Int32
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-VMName

Megadja a virtuális gép nevét.

Type:String
Aliases:ResourceName, Name
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VMSize

Megadja a virtuális gép méretét. A Get-AzComputeResourceSku segítségével megtalálhatja az előfizetéséhez és régiójához elérhető méreteket.

Type:String
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-VmssId

A virtuálisgép-méretezési csoport azonosítója

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

-Zone

Megadja a virtuális gép rendelkezésre állási zónáját. Bár zónák tömbjében van, a virtuális gépek nem támogatnak több rendelkezésre állási zónát. Az engedélyezett érték a régió képességeitől függ. Az engedélyezett érték általában 1, 2 vagy 3 lesz. További információ az Azure rendelkezésre állási zónáiról.

Type:String[]
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False

Bevitelek

String

String[]

Hashtable

SwitchParameter

Kimenetek

PSVirtualMachine