Freigeben über


New-AzVM

Erstellt einen virtuellen Computer.

Syntax

New-AzVM
   [[-ResourceGroupName] <String>]
   [[-Location] <String>]
   [-EdgeZone <String>]
   [[-Zone] <String[]>]
   [-PublicIpSku <String>]
   -Name <String>
   -Credential <PSCredential>
   [-NetworkInterfaceDeleteOption <String>]
   [-VirtualNetworkName <String>]
   [-AddressPrefix <String>]
   [-SubnetName <String>]
   [-SubnetAddressPrefix <String>]
   [-PublicIpAddressName <String>]
   [-DomainNameLabel <String>]
   [-AllocationMethod <String>]
   [-SecurityGroupName <String>]
   [-OpenPorts <Int32[]>]
   [-Image <String>]
   [-Size <String>]
   [-AvailabilitySetName <String>]
   [-SystemAssignedIdentity]
   [-UserAssignedIdentity <String>]
   [-AsJob]
   [-OSDiskDeleteOption <String>]
   [-DataDiskSizeInGb <Int32[]>]
   [-DataDiskDeleteOption <String>]
   [-EnableUltraSSD]
   [-ProximityPlacementGroupId <String>]
   [-HostId <String>]
   [-VmssId <String>]
   [-Priority <String>]
   [-EvictionPolicy <String>]
   [-MaxPrice <Double>]
   [-EncryptionAtHost]
   [-HostGroupId <String>]
   [-SshKeyName <String>]
   [-GenerateSshKey]
   [-CapacityReservationGroupId <String>]
   [-UserData <String>]
   [-ImageReferenceId <String>]
   [-PlatformFaultDomain <Int32>]
   [-HibernationEnabled]
   [-vCPUCountAvailable <Int32>]
   [-vCPUCountPerCore <Int32>]
   [-DiskControllerType <String>]
   [-SharedGalleryImageId <String>]
   [-SecurityType <String>]
   [-EnableVtpm <Boolean>]
   [-EnableSecureBoot <Boolean>]
   [-IfMatch <String>]
   [-IfNoneMatch <String>]
   [-SshKeyType <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzVM
   [-ResourceGroupName] <String>
   [-Location] <String>
   [-EdgeZone <String>]
   [-VM] <PSVirtualMachine>
   [[-Zone] <String[]>]
   [-DisableBginfoExtension]
   [-Tag <Hashtable>]
   [-LicenseType <String>]
   [-AsJob]
   [-OSDiskDeleteOption <String>]
   [-DataDiskDeleteOption <String>]
   [-SshKeyName <String>]
   [-GenerateSshKey]
   [-vCPUCountAvailable <Int32>]
   [-vCPUCountPerCore <Int32>]
   [-IfMatch <String>]
   [-IfNoneMatch <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzVM
   [[-ResourceGroupName] <String>]
   [[-Location] <String>]
   [-EdgeZone <String>]
   [-PublicIpSku <String>]
   -Name <String>
   [-NetworkInterfaceDeleteOption <String>]
   [-VirtualNetworkName <String>]
   [-AddressPrefix <String>]
   [-SubnetName <String>]
   [-SubnetAddressPrefix <String>]
   [-PublicIpAddressName <String>]
   [-DomainNameLabel <String>]
   [-AllocationMethod <String>]
   [-SecurityGroupName <String>]
   [-OpenPorts <Int32[]>]
   -DiskFile <String>
   [-Linux]
   [-Size <String>]
   [-AvailabilitySetName <String>]
   [-SystemAssignedIdentity]
   [-UserAssignedIdentity <String>]
   [-AsJob]
   [-OSDiskDeleteOption <String>]
   [-DataDiskSizeInGb <Int32[]>]
   [-DataDiskDeleteOption <String>]
   [-EnableUltraSSD]
   [-ProximityPlacementGroupId <String>]
   [-HostId <String>]
   [-VmssId <String>]
   [-Priority <String>]
   [-EvictionPolicy <String>]
   [-MaxPrice <Double>]
   [-EncryptionAtHost]
   [-HostGroupId <String>]
   [-CapacityReservationGroupId <String>]
   [-UserData <String>]
   [-PlatformFaultDomain <Int32>]
   [-HibernationEnabled]
   [-vCPUCountAvailable <Int32>]
   [-vCPUCountPerCore <Int32>]
   [-IfMatch <String>]
   [-IfNoneMatch <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Beschreibung

Das Cmdlet New-AzVM erstellt einen virtuellen Computer in Azure. Dieses Cmdlet verwendet ein Objekt des virtuellen Computers als Eingabe. Das Cmdlet New-AzVM erstellt ein neues Speicherkonto für die Startdiagnose, falls noch kein Speicher vorhanden ist.

Erstellen Sie mit dem Cmdlet New-AzVMConfig ein konfigurierbares VM-Objekt.
Verwenden Sie dann die folgenden Cmdlets, um verschiedene Eigenschaften des Objekts des virtuellen Computers festzulegen:

Beispiele

Beispiel 1: Erstellen eines virtuellen Computers

New-AzVM -Name MyVm -Credential (Get-Credential)

VERBOSE: Use 'mstsc /v:myvm-222222.eastus.cloudapp.azure.com' to connect to the VM.

ResourceGroupName        : MyVm
Id                       : /subscriptions/00000000-0000-0000-0000-000000000000/resourceGroups/MyVm/provi
ders/Microsoft.Compute/virtualMachines/MyVm
VmId                     : 11111111-1111-1111-1111-111111111111
Name                     : MyVm
Type                     : Microsoft.Compute/virtualMachines
Location                 : eastus
Tags                     : {}
HardwareProfile          : {VmSize}
NetworkProfile           : {NetworkInterfaces}
OSProfile                : {ComputerName, AdminUsername, WindowsConfiguration, Secrets}
ProvisioningState        : Succeeded
StorageProfile           : {ImageReference, OsDisk, DataDisks}
FullyQualifiedDomainName : myvm-222222.eastus.cloudapp.azure.com

Dieses Beispielskript zeigt, wie Sie einen virtuellen Computer erstellen. Das Skript fragt einen Benutzernamen und ein Kennwort für die VM. Dieses Skript verwendet mehrere andere Cmdlets.

Beispiel 2: Erstellen eines virtuellen Computers aus einem benutzerdefinierten Benutzerimage

## VM Account
# Credentials for Local Admin account you created in the sysprepped (generalized) vhd image
$VMLocalAdminUser = "LocalAdminUser"
$VMLocalAdminSecurePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force
## Azure Account
$LocationName = "westus"
$ResourceGroupName = "MyResourceGroup"
# This a Premium_LRS storage account.
# It is required in order to run a client VM with efficiency and high performance.
$StorageAccount = "Mydisk"

## VM
$OSDiskName = "MyClient"
$ComputerName = "MyClientVM"
$OSDiskUri = "https://Mydisk.blob.core.windows.net/disks/MyOSDisk.vhd"
$SourceImageUri = "https://Mydisk.blob.core.windows.net/vhds/MyOSImage.vhd"
$VMName = "MyVM"
# Modern hardware environment with fast disk, high IOPs performance.
# Required to run a client VM with efficiency and performance
$VMSize = "Standard_DS3"
$OSDiskCaching = "ReadWrite"
$OSCreateOption = "FromImage"

## Networking
$DNSNameLabel = "mydnsname" # mydnsname.westus.cloudapp.azure.com
$NetworkName = "MyNet"
$NICName = "MyNIC"
$PublicIPAddressName = "MyPIP"
$SubnetName = "MySubnet"
$SubnetAddressPrefix = "10.0.0.0/24"
$VnetAddressPrefix = "10.0.0.0/16"

$SingleSubnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix
$Vnet = New-AzVirtualNetwork -Name $NetworkName -ResourceGroupName $ResourceGroupName -Location $LocationName -AddressPrefix $VnetAddressPrefix -Subnet $SingleSubnet
$PIP = New-AzPublicIpAddress -Name $PublicIPAddressName -DomainNameLabel $DNSNameLabel -ResourceGroupName $ResourceGroupName -Location $LocationName -AllocationMethod Dynamic
$NIC = New-AzNetworkInterface -Name $NICName -ResourceGroupName $ResourceGroupName -Location $LocationName -SubnetId $Vnet.Subnets[0].Id -PublicIpAddressId $PIP.Id

$Credential = New-Object System.Management.Automation.PSCredential ($VMLocalAdminUser, $VMLocalAdminSecurePassword);

$securityTypeStnd = "Standard"
$VirtualMachine = New-AzVMConfig -VMName $VMName -VMSize $VMSize -SecurityType $securityTypeStnd 
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate
$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $NIC.Id
$VirtualMachine = Set-AzVMOSDisk -VM $VirtualMachine -Name $OSDiskName -VhdUri $OSDiskUri -SourceImageUri $SourceImageUri -Caching $OSDiskCaching -CreateOption $OSCreateOption -Windows

New-AzVM -ResourceGroupName $ResourceGroupName -Location $LocationName -VM $VirtualMachine -Verbose -Zone @("1")

This example takes an existing sys-prepped, generalized custom operating system image and attaches a data disk to it, deploys a new network, deploys the VHD, and runs it. Dieses Skript kann für die automatische Bereitstellung verwendet werden, da sie die Anmeldeinformationen des lokalen virtuellen Computers inline verwendet, anstatt Get-Credential aufzurufen, die eine Benutzerinteraktion erfordern. Dieses Skript geht davon aus, dass Sie bereits bei Ihrem Azure-Konto angemeldet sind. Sie können Ihren Anmeldestatus mithilfe des Cmdlets "Get-AzSubscription " bestätigen.

Beispiel 3: Erstellen eines virtuellen Computers aus einem Marketplace-Image ohne öffentliche IP

$VMLocalAdminUser = "LocalAdminUser"
$VMLocalAdminSecurePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force
$LocationName = "eastus2"
$ResourceGroupName = "MyResourceGroup"
$ComputerName = "MyVM"
$VMName = "MyVM"
$VMSize = "Standard_DS3"

$NetworkName = "MyNet"
$NICName = "MyNIC"
$SubnetName = "MySubnet"
$SubnetAddressPrefix = "10.0.0.0/24"
$VnetAddressPrefix = "10.0.0.0/16"

$SingleSubnet = New-AzVirtualNetworkSubnetConfig -Name $SubnetName -AddressPrefix $SubnetAddressPrefix
$Vnet = New-AzVirtualNetwork -Name $NetworkName -ResourceGroupName $ResourceGroupName -Location $LocationName -AddressPrefix $VnetAddressPrefix -Subnet $SingleSubnet
$NIC = New-AzNetworkInterface -Name $NICName -ResourceGroupName $ResourceGroupName -Location $LocationName -SubnetId $Vnet.Subnets[0].Id

$Credential = New-Object System.Management.Automation.PSCredential ($VMLocalAdminUser, $VMLocalAdminSecurePassword);

$VirtualMachine = New-AzVMConfig -VMName $VMName -VMSize $VMSize
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -ProvisionVMAgent -EnableAutoUpdate
$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $NIC.Id
$VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -PublisherName 'MicrosoftWindowsServer' -Offer 'WindowsServer' -Skus '2022-datacenter-azure-edition-core' -Version latest

New-AzVM -ResourceGroupName $ResourceGroupName -Location $LocationName -VM $VirtualMachine -Verbose

Dieser Befehl erstellt einen virtuellen Computer aus einem Marketplace-Image ohne öffentliche IP.

Beispiel 4: Erstellen eines virtuellen Computers mit einem UserData-Wert:

# VM Account
$VMLocalAdminUser = "LocalAdminUser";
$VMLocalAdminSecurePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;

# Azure Account
$LocationName = "eastus";
$ResourceGroupName = "MyResourceGroup";

# VM Profile & Hardware
$VMName = 'v' + $ResourceGroupName;
$domainNameLabel = "d1" + $ResourceGroupName;
$Credential = New-Object System.Management.Automation.PSCredential ($VMLocalAdminUser, $VMLocalAdminSecurePassword);

# Create UserData value
$text = "text for UserData";
$bytes = [System.Text.Encoding]::Unicode.GetBytes($text);
$userData = [Convert]::ToBase64String($bytes);

# Create VM
New-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName -Credential $Credential -DomainNameLabel $domainNameLabel -UserData $userData;
$vm = Get-AzVM -ResourceGroupName $ResourceGroupName -Name $VMName -UserData;

Der UserData-Wert muss immer Base64-codiert sein.

Beispiel 5: Erstellen eines neuen virtuellen Computers mit einem vorhandenen Subnetz in einer anderen Ressourcengruppe

$UserName = "User"
$Password = ConvertTo-SecureString -String "****" -AsPlainText -Force
$psCred = New-Object System.Management.Automation.PSCredential($UserName, $Password)

$Vnet = $(Get-AzVirtualNetwork -ResourceGroupName ResourceGroup2 -Name VnetName)
$PIP = (Get-AzPublicIpAddress -ResourceGroupName ResourceGroup2 -Name PublicIPName)

$NIC = New-AzNetworkInterface -Name NICname -ResourceGroupName ResourceGroup2 -Location SouthCentralUS -SubnetId $Vnet.Subnets[1].Id -PublicIpAddressId $PIP.Id
$VirtualMachine = New-AzVMConfig -VMName VirtualMachineName -VMSize Standard_D4s_v3
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName computerName -Credential $psCred -ProvisionVMAgent -EnableAutoUpdate
$VirtualMachine = Add-AzVMNetworkInterface -VM $VirtualMachine -Id $NIC.Id
$VirtualMachine = Set-AzVMSourceImage -VM $VirtualMachine -PublisherName 'MicrosoftWindowsServer' -Offer 'WindowsServer' -Skus '2022-datacenter-azure-edition-core' -Version latest
New-AzVM -ResourceGroupName ResourceGroup1 -Location SouthCentralUS -VM $VirtualMachine

In diesem Beispiel wird eine Windows-VM aus dem Marketplace in einer Ressourcengruppe mit einem vorhandenen Subnetz in einer anderen Ressourcengruppe bereitgestellt.

Beispiel 6: Erstellen eines neuen virtuellen Computers als Teil eines VMSS mit einem PlatformFaultDomain-Wert.

$resourceGroupName= "ResourceGroupName";
$loc = 'eastus';
New-AzResourceGroup -Name $resourceGroupName -Location $loc -Force;

$domainNameLabel = "d1" + $resourceGroupName;
$vmname = "vm" + $resourceGroupName;
$platformFaultDomainVMDefaultSet = 2;
$vmssFaultDomain = 3;
$securePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;
$user = <USERNAME>;
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
$vmssName = "vmss" + $resourceGroupName;

$vmssConfig = New-AzVmssConfig -Location $loc -PlatformFaultDomainCount $vmssFaultDomain;
$vmss = New-AzVmss -ResourceGroupName $resourceGroupName -Name $vmssName -VirtualMachineScaleSet $vmssConfig;

$vm = New-AzVM -ResourceGroupName $resourceGroupName -Name $vmname -Credential $cred -DomainNameLabel $domainNameLabel -PlatformFaultDomain $platformFaultDomainVMDefaultSet -VmssId $vmss.Id;

In diesem Beispiel wird ein neuer virtueller Computer als Teil eines VMSS mit einem PlatformFaultDomain-Wert erstellt.

Beispiel 7: Erstellen sie einen virtuellen Computer mit dem Alias "-Image".

$resourceGroupName= "<Resource Group Name>"
$loc = "<Azure Region>"
$domainNameLabel = "<Domain Name Label>"
$vmname = "<Virtual Machine Name>"
$securePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force
$user = "<Username>"
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword)

New-AzResourceGroup -Name $resourceGroupName -Location $loc -Force

# Create a VM using an Image alias.
$vmname = 'v' + $resourceGroupName
$domainNameLabel = "d" + $resourceGroupName
$vm = New-AzVM -ResourceGroupName $resourceGroupName -Name $vmname -Credential $cred -Image OpenSuseLeap154Gen2 -DomainNameLabel $domainNameLabel

$vm = Get-AzVM -ResourceGroupName $resourceGroupName -Name $vmname

In diesem Beispiel wird ein neuer virtueller Computer mit dem Parameter "-Image" erstellt, der viele Standardwerte für den virtuellen Computer bereitstellt.

Beispiel 8: Erstellen einer VM für Trusted Launch SecurityType.

$rgname = <Resource Group Name>;
$loc = "eastus";
 
New-AzResourceGroup -Name $rgname -Location $loc -Force;    
# VM Profile & Hardware       
$domainNameLabel1 = 'd1' + $rgname;
$vmsize = 'Standard_D4s_v3';
$vmname1 = 'v' + $rgname;
$imageName = "Win2022AzureEdition";
$disable = $false;
$enable = $true;
$securityType = "TrustedLaunch";

$securePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;
$user = <Username>;
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);

# VM creation using Simple parameterset
New-AzVM -ResourceGroupName $rgname -Location $loc -Name $vmname1 -Credential $cred -Size $vmsize -Image $imageName -DomainNameLabel $domainNameLabel1 -SecurityType $securityType;
$vm1 = Get-AzVM -ResourceGroupName $rgname -Name $vmname1;

# Verify Values
#$vm1.SecurityProfile.SecurityType "TrustedLaunch";
#$vm1.SecurityProfile.UefiSettings.VTpmEnabled $true;
#$vm1.SecurityProfile.UefiSettings.SecureBootEnabled $true;

In diesem Beispiel wird eine neue VM mit dem Sicherheitstyp "TrustedLaunch" erstellt und standardmäßig "EnableSecureBoot" und "EnableVtpm" als "True" festgelegt. Eine VM für vertrauenswürdige Starte erfordert ein Gen2-Image. Weitere Informationen finden Sie auf der Seite "Vertrauenswürdige Startfeatures" .

Beispiel 9: Erstellen Sie einen virtuellen Computer mit aktiviertem vertrauenswürdigem Start, indem Sie die Funktion "New-AzVMConfig" defualt verwenden.

$rgname = "<Resource Group Name>";
$loc = "<Azure Region>";
$vmname = 'vm' + $rgname;
$domainNameLabel = "d1" + $rgname;
$vnetname = "vn" + $rgname;
$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;
$VMSize = "Standard_DS2_v2";
$PublisherName = "MicrosoftWindowsServer";
$Offer = "WindowsServer";
$SKU = "2022-datacenter-azure-edition";
$version = "latest";
$securePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;
$user = <Username>;
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
# Network setup
$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;
# VM
$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 $version ;
Add-AzVMNetworkInterface -VM $vmConfig -Id $nic.Id;
New-AzVM -ResourceGroupName $rgname -Location $loc -VM $vmConfig;
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmname;
# Verify $vm.SecurityProfile.SecurityType is TrustedLaunch
# Verify $vm.SecurityProfile.UefiSettings.SecureBootEnabled is true.
# Verify $vm.SecurityProfile.UefiSettings.VTpmEnabled is true.

In diesem Beispiel wird gezeigt, wie Sie einen virtuellen Computer mit einem gültigen Gen2-Image erstellen, sodass der virtuelle Computer standardmäßig "TrustedLaunch" verwendet wird, der Gen2-Images erfordert. Weitere Informationen finden Sie auf der Seite "Vertrauenswürdige Startfeatures" .

Beispiel 10: Erstellt einen virtuellen Computer, auf dem "TrustedLaunch" standardmäßig aktiviert ist.

$rgname = "<Resource Group Name>";
$loc = "<Azure Region>";
$vmname = 'vm' + $rgname;
$domainNameLabel = "d1" + $rgname;
$securePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;
$user = <Username>;
$cred = New-Object System.Management.Automation.PSCredential ($user, $securePassword);
# Create VM
$vm = New-AzVM -ResourceGroupName $rgname -Name $vmname -Credential $cred -DomainNameLabel $domainNameLabel; 
$vm = Get-AzVM -ResourceGroupName $rgname -Name $vmname;
# Verify $vm.SecurityProfile.SecurityType is TrustedLaunch.
# Verify the $vm.StorageProfile.ImageReference.Sku has defaulted to "2022-datacenter-azure-edition", a Gen2 image.

In diesem Beispiel wird gezeigt, wie der einfache Cmdlet-Aufruf mit minimalen Parametern zu einem trustedLaunch-aktivierten virtuellen Computer mit einem Gen2-Image führt. Weitere Informationen finden Sie auf der Seite "Vertrauenswürdige Startfeatures" .

=======

Parameter

-AddressPrefix

Das Adresspräfix für das virtuelle Netzwerk, das für den virtuellen Computer erstellt wird.

Typ:String
Position:Named
Standardwert:192.168.0.0/16
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AllocationMethod

Die IP-Zuordnungsmethode für die öffentliche IP, die für den virtuellen Computer erstellt wird.

Typ:String
Zulässige Werte:Static, Dynamic
Position:Named
Standardwert:Static
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AsJob

Führen Sie das Cmdlet im Hintergrund aus, und geben Sie einen Auftrag zurück, um den Fortschritt nachzuverfolgen.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-AvailabilitySetName

Gibt einen Namen für den Verfügbarkeitssatz an.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-CapacityReservationGroupId

ID der Kapazitätsreservierungsgruppe, die für die Zuordnung verwendet wird.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Confirm

Hiermit werden Sie vor der Ausführung des Cmdlets zur Bestätigung aufgefordert.

Typ:SwitchParameter
Aliase:cf
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Credential

Die Administratoranmeldeinformationen für den virtuellen Computer.

Benutzername
Einschränkung:
Windows: Sonderzeichen /"[]:|<>+=;,?*@& oder enden sie in "."
Linux: Benutzername darf nur Buchstaben, Zahlen, Bindestriche und Unterstriche enthalten und darf nicht mit einem Bindestrich oder einer Zahl beginnen.
Unzulässige Werte: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".
Mindestlänge: 1 Zeichen
Maximale Länge: 20 Zeichen für Windows, 64 Zeichen für Linux

Kennwort
Muss 3 der folgenden Zeichen aufweisen: 1 Kleinbuchstabe, 1 Großbuchstaben, 1 Zahl und 1 Sonderzeichen.
Der Wert muss zwischen 12 und 123 Zeichen lang sein.

Typ:PSCredential
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DataDiskDeleteOption

Gibt die Option zum Löschen von Datenträgerdatenträgern nach dem Löschen des virtuellen Computers an. Optionen sind "Trennen", "Löschen"

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DataDiskSizeInGb

Gibt die Größe von Datenträgern in GB an.

Typ:Int32[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DefaultProfile

Die Anmeldeinformationen, Konten, Mandanten und Abonnements, die für die Kommunikation mit Azure verwendet werden.

Typ:IAzureContextContainer
Aliase:AzContext, AzureRmContext, AzureCredential
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DisableBginfoExtension

Gibt an, dass dieses Cmdlet die BG Info-Erweiterung nicht auf dem virtuellen Computer installiert.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DiskControllerType

Gibt den Datenträgercontrollertyp an, der für den virtuellen Computer und VirtualMachineScaleSet konfiguriert ist. Diese Eigenschaft wird nur für virtuelle Computer unterstützt, deren Betriebssystemdatenträger und VM-Sku die Generation 2 unterstützt (https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), überprüfen Sie die HyperVGenerations-Funktion, die als Teil der VM-Sku-Funktionen in der Antwort der Microsoft.Compute SKUs-API für die Region V2 (https://learn.microsoft.com/rest/api/compute/resourceskus/list) zurückgegeben wird.
Weitere Informationen zu unterstützten Datenträgercontrollertypen finden Sie unter https://aka.ms/azure-diskcontrollertypes.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DiskFile

Der lokale Pfad zur virtuellen Festplattendatei, die in die Cloud hochgeladen werden soll, und zum Erstellen der VM und muss ".vhd" als Suffix aufweisen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-DomainNameLabel

Die Unterdomänenbezeichnung für den vollqualifizierten Domänennamen (FQDN) der VM. Dies wird die Form {domainNameLabel}.{location}.cloudapp.azure.comannehmen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EdgeZone

Legt den Namen der Randzone fest. Wenn festgelegt, wird die Abfrage anstelle des Hauptbereichs an die angegebene Edgezone weitergeleitet.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-EnableSecureBoot

Gibt an, ob der sichere Start auf dem virtuellen Computer aktiviert werden soll.

Typ:Nullable<T>[Boolean]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-EnableUltraSSD

Verwenden Sie UltraSSD-Datenträger für den virtuellen Computer.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EnableVtpm

Gibt an, ob vTPM auf dem virtuellen Computer aktiviert werden soll.

Typ:Nullable<T>[Boolean]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-EncryptionAtHost

EncryptionAtHost-Eigenschaft kann vom Benutzer in der Anforderung verwendet werden, um die Hostverschlüsselung für den virtuellen Computer oder den Skalierungssatz des virtuellen Computers zu aktivieren oder zu deaktivieren. Dadurch wird die Verschlüsselung für alle Datenträger einschließlich Ressourcen-/Temp-Datenträger auf dem Host selbst aktiviert. Standard: Die Verschlüsselung auf dem Host wird deaktiviert, es sei denn, diese Eigenschaft ist für die Ressource auf "true" festgelegt.

Typ:SwitchParameter
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-EvictionPolicy

Die Eviction-Richtlinie für den virtuellen Azure Spot-Computer. Unterstützte Werte sind "Deallocate" und "Delete".

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-GenerateSshKey

Generieren Sie ein SSH Public/Private Key-Paar, und erstellen Sie eine SSH Public Key-Ressource in Azure.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-HibernationEnabled

Das Kennzeichen, das die Ruhezustandsfunktion auf dem virtuellen Computer aktiviert oder deaktiviert.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-HostGroupId

Gibt die dedizierte Hostgruppe an, in der sich der virtuelle Computer befindet.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-HostId

Die ID des Hosts

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-IfMatch

wird verwendet, um eine Anforderung für die PUT- und andere nicht sichere Methoden bedingt zu stellen. Der Server gibt nur die angeforderten Ressourcen zurück, wenn die Ressource mit einem der aufgelisteten ETag-Werte übereinstimmt. Lassen Sie diesen Wert aus, um die aktuelle Ressource immer zu überschreiben. Geben Sie den zuletzt gesehenen ETag-Wert an, um zu verhindern, dass gleichzeitige Änderungen versehentlich überschrieben werden.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-IfNoneMatch

Wird verwendet, um eine Anforderung für die GET- und HEAD-Methoden bedingt zu machen. Der Server gibt nur die angeforderten Ressourcen zurück, wenn keiner der aufgelisteten ETag-Werte mit der aktuellen Entität übereinstimmt. Wird verwendet, um eine Anforderung für die GET- und HEAD-Methoden bedingt zu machen. Der Server gibt nur die angeforderten Ressourcen zurück, wenn keiner der aufgelisteten ETag-Werte mit der aktuellen Entität übereinstimmt. Legen Sie auf '*' fest, damit ein neuer Datensatzsatz erstellt werden kann, aber um zu verhindern, dass ein vorhandener Datensatzsatz aktualisiert wird. Andere Werte führen zu Einem Fehler vom Server, da sie nicht unterstützt werden.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Image

Der Anzeigeimagename, auf dem die VM erstellt wird. Die verfügbaren Aliase sind: Win2022AzureEdition, Win2022AzureEditionCore, Win2019Datacenter, Win2016Datacenter, Win2012R2Datacenter, Win2012Datacenter, Ubuntu2204, CentOS85Gen2, Debian11, OpenSuseLeap154Gen2, RHELRaw8LVMGen2, SuseSles15SP3, FlatcarLinuxFreeGen2.

Typ:String
Aliase:ImageName
Position:Named
Standardwert:Win2016Datacenter
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ImageReferenceId

Gibt die eindeutige ID des freigegebenen Katalogimages für die Vm-Bereitstellung an. Dies kann aus dem GET-Aufruf des freigegebenen Katalogbilds abgerufen werden.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-LicenseType

Gibt einen Lizenztyp an, der angibt, dass das Image oder der Datenträger für den virtuellen Computer lokal lizenziert wurde. Mögliche Werte für Windows Server sind:

  • Windows_Client
  • Windows_Server

Mögliche Werte für das Linux Server-Betriebssystem sind:

  • RHEL_BYOS (für RHEL)
  • SLES_BYOS (für SUSE)
Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Linux

Gibt an, ob die Datenträgerdatei für linux-VM ist, falls angegeben; oder Windows, wenn nicht standardmäßig angegeben.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Location

Gibt einen Speicherort für den virtuellen Computer an.

Typ:String
Position:1
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-MaxPrice

Der maximale Preis für die Abrechnung eines virtuellen Computers mit niedriger Priorität.

Typ:Double
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Name

Der Name der VM-Ressource.

Typ:String
Position:Named
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-NetworkInterfaceDeleteOption

Gibt an, welche Aktion für die NetworkInterface-Ressource ausgeführt werden soll, wenn der virtuelle Computer gelöscht wird. Optionen sind: Trennen, Löschen.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-OpenPorts

Eine Liste der Ports, die für die erstellte VM in der Netzwerksicherheitsgruppe (Network Security Group, NSG) geöffnet werden sollen. Der Standardwert hängt vom Typ des ausgewählten Images ab (d. h. Windows: 3389, 5985 und Linux: 22).

Typ:Int32[]
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-OSDiskDeleteOption

Gibt die Option zum Löschen des Betriebssystemdatenträgers nach dem Löschen des virtuellen Computers an. Optionen sind "Trennen", "Löschen"

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PlatformFaultDomain

Gibt die Fehlerdomäne des virtuellen Computers an.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-Priority

Die Priorität für den virtuellen Computer. Nur unterstützte Werte sind "Regular", "Spot" und "Low". "Normal" ist für einen normalen virtuellen Computer vorgesehen. "Spot" ist für einen virtuellen Spotcomputer vorgesehen. "Niedrig" ist auch für einen virtuellen Spotcomputer vorgesehen, wird aber durch "Spot" ersetzt. Verwenden Sie "Spot" anstelle von "Niedrig".

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ProximityPlacementGroupId

Die Ressourcen-ID der Näherungsplatzierungsgruppe, die mit diesem virtuellen Computer verwendet werden soll.

Typ:String
Aliase:ProximityPlacementGroup
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PublicIpAddressName

Der Name einer neuen (oder vorhandenen) öffentlichen IP-Adresse für die erstellte VM, die verwendet werden soll. Wenn nicht angegeben, wird ein Name generiert.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-PublicIpSku

Gibt den namen der öffentlichen IP-Sku an.

Akzeptierte Werte sind "Basic" und "Standard"

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-ResourceGroupName

Gibt den Namen einer Ressourcengruppe an.

Typ:String
Position:0
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SecurityGroupName

Der Name einer neuen (oder vorhandenen) Netzwerksicherheitsgruppe (NSG) für die erstellte VM, die verwendet werden soll. Wenn nicht angegeben, wird ein Name generiert.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SecurityType

Gibt den SecurityType des virtuellen Computers an. Sie muss auf einen beliebigen angegebenen Wert festgelegt werden, um UefiSettings zu aktivieren. Standardmäßig ist UefiSettings nur aktiviert, wenn diese Eigenschaft festgelegt ist.

Typ:String
Zulässige Werte:TrustedLaunch, ConfidentialVM, Standard
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-SharedGalleryImageId

Gibt die eindeutige ID des freigegebenen Katalogimages für die Vm-Bereitstellung an. Dies kann aus dem GET-Aufruf des freigegebenen Katalogbilds abgerufen werden.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Size

Die Größe des virtuellen Computers. Get-AzComputeResourceSku kann verwendet werden, um verfügbare Größen für Ihr Abonnement und Ihre Region zu ermitteln.
Der Standardwert ist: Standard_D2s_v3.

Typ:String
Position:Named
Standardwert:Standard_D2s_v3
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SshKeyName

Name der SSH Public Key-Ressource.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SshKeyType

Geben Sie den Typ des zu generierenden SSH-Schlüssels an. Zulässige Werte sind "Ed25519" und "RSA".

Typ:String
Zulässige Werte:Ed25519, RSA
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SubnetAddressPrefix

Das Adresspräfix für das Subnetz, das für den virtuellen Computer erstellt wird.

Typ:String
Position:Named
Standardwert:192.168.1.0/24
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SubnetName

Der Name eines neuen (oder vorhandenen) Subnetzes für die erstellte VM, die verwendet werden soll. Wenn nicht angegeben, wird ein Name generiert.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-SystemAssignedIdentity

Wenn der Parameter vorhanden ist, wird dem virtuellen Computer eine verwaltete Systemidentität zugewiesen, die automatisch generiert wird.

Typ:SwitchParameter
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Tag

Gibt an, dass Ressourcen und Ressourcengruppen mit einer Gruppe von Namen-Wert-Paaren markiert werden können. Durch das Hinzufügen von Tags zu Ressourcen können Sie Ressourcen in Ressourcengruppen gruppieren und eigene Ansichten erstellen. Jede Ressource oder Ressourcengruppe kann maximal 15 Tags haben.

Typ:Hashtable
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-UserAssignedIdentity

Der Name einer verwalteten Dienstidentität, die der VM zugewiesen werden soll.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-UserData

UserData für den virtuellen Computer, der base64-codiert ist. Der Kunde sollte hier keine Geheimnisse weitergeben.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-vCPUCountAvailable

Gibt die Anzahl der für den virtuellen Computer verfügbaren vCPUs an. Wenn diese Eigenschaft nicht im Anforderungstext angegeben ist, besteht das Standardverhalten darin, sie auf den Wert von vCPUs festzulegen, der für diese VM-Größe verfügbar ist, die in api-Antwort der Liste aller verfügbaren größe virtueller Computer in einer Region verfügbar gemacht wird.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-vCPUCountPerCore

Gibt das vCPU-Verhältnis zum physischen Kernverhältnis an. Wenn diese Eigenschaft nicht im Anforderungstext angegeben ist, wird das Standardverhalten auf den Wert von vCPUsPerCore für die VM-Größe festgelegt, die in der API-Antwort der Liste aller verfügbaren vm-Größen in einer Region verfügbar gemacht wird. Das Festlegen dieser Eigenschaft auf 1 bedeutet auch, dass Hyperthreading deaktiviert ist.

Typ:Int32
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-VirtualNetworkName

Der Name eines neuen (oder vorhandenen) virtuellen Netzwerks für den erstellten virtuellen Computer, der verwendet werden soll. Wenn nicht angegeben, wird ein Name generiert.

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-VM

Gibt einen zu erstellenden lokalen virtuellen Computer an. Verwenden Sie das Cmdlet New-AzVMConfig, um ein Objekt eines virtuellen Computers abzurufen. Andere Cmdlets können verwendet werden, um den virtuellen Computer zu konfigurieren, z. B. Set-AzVMOperatingSystem, Set-AzVMSourceImage und Add-AzVMNetworkInterface.

Typ:PSVirtualMachine
Aliase:VMProfile
Position:2
Standardwert:None
Erforderlich:True
Pipelineeingabe akzeptieren:True
Platzhalterzeichen akzeptieren:False

-VmssId

Die ID des VM-Skalierungssatzes, dem diese VM zugeordnet wird

Typ:String
Position:Named
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-WhatIf

Zeigt, was geschieht, wenn das Cmdlet ausgeführt wird. Das Cmdlet wird nicht ausgeführt.

Typ:SwitchParameter
Aliase:wi
Position:Named
Standardwert:False
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

-Zone

Gibt die Zone des virtuellen Computers an. Obwohl sie in einem Array von Zonen verwendet wird, unterstützen virtuelle Computer nicht mehrere Verfügbarkeitszonen. Der zulässige Wert hängt von den Funktionen der Region ab. Zulässiger Wert ist normalerweise 1, 2 oder 3. Weitere Informationen zu Azure-Verfügbarkeitszonen.

Typ:String[]
Position:3
Standardwert:None
Erforderlich:False
Pipelineeingabe akzeptieren:False
Platzhalterzeichen akzeptieren:False

Eingaben

String

PSVirtualMachine

String[]

Hashtable

Ausgaben

PSAzureOperationResponse

PSVirtualMachine