Udostępnij za pośrednictwem


New-AzVM

Tworzy maszynę wirtualną.

Składnia

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>]
   [-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>]

Opis

Polecenie cmdlet New-AzVM tworzy maszynę wirtualną na platformie Azure. To polecenie cmdlet przyjmuje obiekt maszyny wirtualnej jako dane wejściowe. Polecenie cmdlet New-AzVM utworzy nowe konto magazynu na potrzeby diagnostyki rozruchu, jeśli jeszcze nie istnieje.

Użyj polecenia cmdlet New-AzVMConfig, aby utworzyć obiekt maszyny wirtualnej.
Następnie użyj następujących poleceń cmdlet, aby ustawić różne właściwości obiektu maszyny wirtualnej:

Przykłady

Przykład 1. Tworzenie maszyny wirtualnej

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

Ten przykładowy skrypt pokazuje, jak utworzyć maszynę wirtualną. Skrypt wyświetli monit o podanie nazwy użytkownika i hasła dla maszyny wirtualnej. Ten skrypt używa kilku innych poleceń cmdlet.

Przykład 2. Tworzenie maszyny wirtualnej na podstawie niestandardowego obrazu użytkownika

## 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")

W tym przykładzie jest pobierany istniejący obraz systemu z uogólnioną niestandardową wersją systemu operacyjnego i dołącza do niego dysk danych, aprowizuje nową sieć, wdraża dysk VHD i uruchamia go. Ten skrypt może służyć do automatycznej aprowizacji, ponieważ używa wbudowanych poświadczeń administratora lokalnej maszyny wirtualnej zamiast wywoływania polecenia Get-Credential , co wymaga interakcji użytkownika. Ten skrypt zakłada, że użytkownik jest już zalogowany na koncie platformy Azure. Stan logowania można potwierdzić przy użyciu polecenia cmdlet Get-AzSubscription .

Przykład 3. Tworzenie maszyny wirtualnej na podstawie obrazu z witryny Marketplace bez publicznego adresu 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

To polecenie tworzy maszynę wirtualną na podstawie obrazu z witryny Marketplace bez publicznego adresu IP.

Przykład 4. Tworzenie maszyny wirtualnej z wartością UserData:

# 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;

Wartość UserData musi zawsze być zakodowana w formacie Base64.

Przykład 5. Tworzenie nowej maszyny wirtualnej z istniejącą podsiecią w innej grupie zasobów

$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

W tym przykładzie maszyna wirtualna z systemem Windows jest wdrażana z witryny Marketplace w jednej grupie zasobów z istniejącą podsiecią w innej grupie zasobów.

Przykład 6. Tworzenie nowej maszyny wirtualnej w ramach zestawu skalowania maszyn wirtualnych z wartością PlatformFaultDomain.

$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;

W tym przykładzie zostanie utworzona nowa maszyna wirtualna w ramach zestawu skalowania maszyn wirtualnych z wartością PlatformFaultDomain.

Przykład 7. Tworzenie maszyny wirtualnej przy użyciu aliasu -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

W tym przykładzie zostanie utworzona nowa maszyna wirtualna przy użyciu parametru -Image, podając wiele wartości domyślnych dla maszyny wirtualnej.

Przykład 8. Tworzenie maszyny wirtualnej dla zaufanego typu zabezpieczeń uruchamiania.

$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;

W tym przykładzie utworzono nową maszynę wirtualną z typem zabezpieczeń TrustedLaunch i ustawiono flagi EnableSecureBoot i EnableVtpm jako true. Zaufana maszyna wirtualna uruchamiania wymaga obrazu gen2. Aby uzyskać więcej informacji, zapoznaj się ze stroną funkcji Zaufane uruchamianie.

Przykład 9. Tworzenie maszyny wirtualnej z zaufanym uruchamianiem włączonym przez defualt przy użyciu polecenia New-AzVMConfig.

$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.

W tym przykładzie pokazano, jak utworzyć maszynę wirtualną z prawidłowym obrazem gen2, umożliwiając maszynie wirtualnej domyślne ustawienie TrustedLaunch, które wymaga obrazów gen2. Aby uzyskać więcej informacji, zapoznaj się ze stroną funkcji Zaufane uruchamianie.

Przykład 10: Domyślnie tworzy maszynę wirtualną z włączoną funkcją TrustedLaunch.

$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.

W tym przykładzie pokazano, jak proste wywołanie polecenia cmdlet z minimalnymi parametrami spowoduje, że maszyna wirtualna z włączoną usługą TrustedLaunch z obrazem gen2. Aby uzyskać więcej informacji, zapoznaj się ze stroną funkcji Zaufane uruchamianie.

=======

Parametry

-AddressPrefix

Prefiks adresu dla sieci wirtualnej, który zostanie utworzony dla maszyny wirtualnej.

Typ:String
Position:Named
Domyślna wartość:192.168.0.0/16
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-AllocationMethod

Metoda alokacji adresów IP dla publicznego adresu IP, który zostanie utworzony dla maszyny wirtualnej.

Typ:String
Dopuszczalne wartości:Static, Dynamic
Position:Named
Domyślna wartość:Static
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-AsJob

Uruchom polecenie cmdlet w tle i zwróć zadanie, aby śledzić postęp.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-AvailabilitySetName

Określa nazwę zestawu dostępności.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-CapacityReservationGroupId

Identyfikator grupy rezerwacji pojemności używanej do przydzielenia.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Confirm

Monituje o potwierdzenie przed uruchomieniem polecenia cmdlet.

Typ:SwitchParameter
Aliasy:cf
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Credential

Poświadczenia administratora maszyny wirtualnej.

Nazwa użytkownika
Restrykcja:
Windows: Nie można zawierać znaków specjalnych /"[]:|<>+=;,?*@& lub end in "."
Linux: nazwa użytkownika musi zawierać tylko litery, cyfry, łączniki i podkreślenia i może nie zaczynać się od łącznika lub liczby.
Niedozwolone wartości: "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".
Minimalna długość: 1 znak
Maksymalna długość: 20 znaków dla systemu Windows, 64 znaki dla systemu Linux

Hasło
Musi mieć 3 z następujących znaków: 1 małe litery, 1 wielkie litery, 1 numer i 1 znak specjalny.
Wartość musi mieć długość od 12 do 123 znaków.

Typ:PSCredential
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DataDiskDeleteOption

Określa opcję usuwania dysku danych po usunięciu maszyny wirtualnej. Opcje to Odłączanie, Usuwanie

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DataDiskSizeInGb

Określa rozmiary dysków danych w GB.

Typ:Int32[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

Typ:IAzureContextContainer
Aliasy:AzContext, AzureRmContext, AzureCredential
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DisableBginfoExtension

Wskazuje, że to polecenie cmdlet nie instaluje rozszerzenia BG Info na maszynie wirtualnej.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DiskControllerType

Określa typ kontrolera dysku skonfigurowany dla maszyny wirtualnej i virtualMachineScaleSet. Ta właściwość jest obsługiwana tylko w przypadku maszyn wirtualnych, których dysk systemu operacyjnego i jednostka SKU maszyny wirtualnej obsługuje generację 2 (https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), sprawdź funkcję HyperVGenerations zwróconą jako część możliwości jednostki SKU maszyny wirtualnej w odpowiedzi interfejsu API jednostek SKU Microsoft.Compute dla regionu zawierającego 2 (https://learn.microsoft.com/rest/api/compute/resourceskus/list) .
Aby uzyskać więcej informacji o obsługiwanych typach kontrolera dysków, zobacz https://aka.ms/azure-diskcontrollertypes.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DiskFile

Ścieżka lokalna do pliku wirtualnego dysku twardego, który ma zostać przekazany do chmury i do utworzenia maszyny wirtualnej, i musi mieć sufiks ".vhd".

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-DomainNameLabel

Etykieta poddomeny dla w pełni kwalifikowanej nazwy domeny (FQDN) maszyny wirtualnej. Będzie to mieć postać {domainNameLabel}.{location}.cloudapp.azure.com.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-EdgeZone

Ustawia nazwę strefy krawędzi. W przypadku ustawienia zapytanie będzie kierowane do określonej strefy brzegowej zamiast do regionu głównego.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-EnableSecureBoot

Określa, czy bezpieczny rozruch powinien być włączony na maszynie wirtualnej.

Typ:Nullable<T>[Boolean]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-EnableUltraSSD

Użyj dysków UltraSSD dla maszyny wirtualnej.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-EnableVtpm

Określa, czy maszyna wirtualna ma być włączona na maszynie wirtualnej.

Typ:Nullable<T>[Boolean]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-EncryptionAtHost

Właściwość EncryptionAtHost może być używana przez użytkownika w żądaniu w celu włączenia lub wyłączenia szyfrowania hosta dla maszyny wirtualnej lub zestawu skalowania maszyn wirtualnych. Spowoduje to włączenie szyfrowania dla wszystkich dysków, w tym dysku zasobu/tymczasowego na samym hoście. Ustawienie domyślne: Szyfrowanie na hoście zostanie wyłączone, chyba że ta właściwość ma wartość true dla zasobu.

Typ:SwitchParameter
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-EvictionPolicy

Zasady eksmisji dla maszyny wirtualnej typu spot platformy Azure. Obsługiwane wartości to "Cofnij przydział" i "Usuń".

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-GenerateSshKey

Wygeneruj parę kluczy publicznych/prywatnych SSH i utwórz zasób klucza publicznego SSH na platformie Azure.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-HibernationEnabled

Flaga, która włącza lub wyłącza funkcję hibernacji na maszynie wirtualnej.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-HostGroupId

Określa dedykowaną grupę hostów, w którym będzie znajdować się maszyna wirtualna.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-HostId

Identyfikator hosta

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-IfMatch

służy do wykonywania żądania warunkowego dla metody PUT i innych metod niebezpiecznych. Serwer zwróci żądane zasoby tylko wtedy, gdy zasób jest zgodny z jedną z wymienionych wartości elementu ETag. Pomiń tę wartość, aby zawsze zastąpić bieżący zasób. Określ ostatnio widzianą wartość elementu ETag, aby zapobiec przypadkowemu zastępowaniu współbieżnych zmian.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-IfNoneMatch

Służy do warunkowego żądania dla metod GET i HEAD. Serwer zwróci żądane zasoby tylko wtedy, gdy żadna z wymienionych wartości elementu ETag nie jest zgodna z bieżącą jednostką. Służy do warunkowego żądania dla metod GET i HEAD. Serwer zwróci żądane zasoby tylko wtedy, gdy żadna z wymienionych wartości elementu ETag nie jest zgodna z bieżącą jednostką. Ustaw wartość "*", aby zezwolić na utworzenie nowego zestawu rekordów, ale aby zapobiec aktualizowaniu istniejącego zestawu rekordów. Inne wartości spowodują błąd z serwera, ponieważ nie są one obsługiwane.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Image

Przyjazna nazwa obrazu, na którym zostanie utworzona maszyna wirtualna. Dostępne aliasy to: Win2022AzureEdition, Win2022AzureEditionCore, Win2019Datacenter, Win2016Datacenter, Win2012R2Datacenter, Win2012Datacenter, Ubuntu2204, CentOS85Gen2, Debian11, OpenSuseLeap154Gen2, RHELRaw8LVMGen2, SuseSles15SP3, FlatcarLinuxFreeGen2.

Typ:String
Aliasy:ImageName
Position:Named
Domyślna wartość:Win2016Datacenter
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ImageReferenceId

Określono unikatowy identyfikator obrazu galerii udostępnionej dla wdrożenia maszyny wirtualnej. Można to pobrać z udostępnionego wywołania GET obrazu galerii.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-LicenseType

Określa typ licencji, który wskazuje, że obraz lub dysk maszyny wirtualnej został licencjonowany lokalnie. Możliwe wartości systemu Windows Server to:

  • Windows_Client
  • Windows_Server

Możliwe wartości systemu operacyjnego Linux Server to:

  • RHEL_BYOS (dla RHEL)
  • SLES_BYOS (dla SUSE)
Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Linux

Wskazuje, czy plik dysku jest przeznaczony dla maszyny wirtualnej z systemem Linux, jeśli określono; lub Windows, jeśli nie zostanie określony domyślnie.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Location

Określa lokalizację maszyny wirtualnej.

Typ:String
Position:1
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-MaxPrice

Maksymalna cena rozliczeń maszyny wirtualnej o niskim priorytcie.

Typ:Double
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Name

Nazwa zasobu maszyny wirtualnej.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-NetworkInterfaceDeleteOption

Określa, jaką akcję należy wykonać w zasobie NetworkInterface po usunięciu maszyny wirtualnej. Opcje to: Odłącz, Usuń.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-OpenPorts

Lista portów do otwarcia w sieciowej grupie zabezpieczeń dla utworzonej maszyny wirtualnej. Wartość domyślna zależy od wybranego typu obrazu (tj. Windows: 3389, 5985 i Linux: 22).

Typ:Int32[]
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-OSDiskDeleteOption

Określa opcję usuwania dysku systemu operacyjnego po usunięciu maszyny wirtualnej. Opcje to Odłączanie, Usuwanie

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PlatformFaultDomain

Określa domenę błędów maszyny wirtualnej.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-Priority

Priorytet maszyny wirtualnej. Obsługiwane wartości to "Regular", "Spot" i "Low". "Regular" jest przeznaczony dla zwykłej maszyny wirtualnej. "Spot" jest przeznaczony dla maszyny wirtualnej typu spot. Wartość "Niska" dotyczy również maszyny wirtualnej typu spot, ale jest zastępowana przez "Spot". Użyj polecenia "Spot" zamiast "Niski".

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ProximityPlacementGroupId

Identyfikator zasobu grupy umieszczania w pobliżu do użycia z tą maszyną wirtualną.

Typ:String
Aliasy:ProximityPlacementGroup
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PublicIpAddressName

Nazwa nowego (lub istniejącego) publicznego adresu IP utworzonej maszyny wirtualnej do użycia. Jeśli nie zostanie określona, zostanie wygenerowana nazwa.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-PublicIpSku

Określa nazwę jednostki SKU publicznego adresu IP

Akceptowane wartości to "Basic" i "Standard"

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-ResourceGroupName

Określa nazwę grupy zasobów.

Typ:String
Position:0
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SecurityGroupName

Nazwa nowej (lub istniejącej) sieciowej grupy zabezpieczeń dla utworzonej maszyny wirtualnej do użycia. Jeśli nie zostanie określona, zostanie wygenerowana nazwa.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SecurityType

Określa typ zabezpieczeń maszyny wirtualnej. Musi być ustawiona na dowolną określoną wartość, aby włączyć interfejs UefiSettings. Domyślnie ustawienie UefiSettings nie zostanie włączone, chyba że ta właściwość jest ustawiona.

Typ:String
Dopuszczalne wartości:TrustedLaunch, ConfidentialVM, Standard
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-SharedGalleryImageId

Określono unikatowy identyfikator obrazu galerii udostępnionej dla wdrożenia maszyny wirtualnej. Można to pobrać z udostępnionego wywołania GET obrazu galerii.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Size

Rozmiar maszyny wirtualnej. Polecenie Get-AzComputeResourceSku może służyć do znajdowania dostępnych rozmiarów subskrypcji i regionu.
Wartość domyślna to: Standard_D2s_v3.

Typ:String
Position:Named
Domyślna wartość:Standard_D2s_v3
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SshKeyName

Nazwa zasobu klucza publicznego SSH.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SubnetAddressPrefix

Prefiks adresu dla podsieci, która zostanie utworzona dla maszyny wirtualnej.

Typ:String
Position:Named
Domyślna wartość:192.168.1.0/24
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SubnetName

Nazwa nowej (lub istniejącej) podsieci utworzonej maszyny wirtualnej do użycia. Jeśli nie zostanie określona, zostanie wygenerowana nazwa.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-SystemAssignedIdentity

Jeśli parametr jest obecny, maszyna wirtualna ma przypisaną tożsamość systemu zarządzanego, która jest generowana automatycznie.

Typ:SwitchParameter
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Tag

Określa, że zasoby i grupy zasobów można oznaczyć zestawem par nazwa-wartość. Dodawanie tagów do zasobów umożliwia grupowanie zasobów w grupach zasobów i tworzenie własnych widoków. Każdy zasób lub grupa zasobów mogą zawierać maksymalnie 15 tagów.

Typ:Hashtable
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-UserAssignedIdentity

Nazwa tożsamości usługi zarządzanej, która powinna być przypisana do maszyny wirtualnej.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-UserData

UserData dla maszyny wirtualnej, która będzie zakodowana w formacie base-64. Klient nie powinien przekazywać żadnych wpisów tajnych w tym miejscu.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-vCPUCountAvailable

Określa liczbę procesorów wirtualnych dostępnych dla maszyny wirtualnej. Jeśli ta właściwość nie jest określona w treści żądania, domyślne zachowanie polega na ustawieniu jej na wartość procesorów wirtualnych dostępnych dla tego rozmiaru maszyny wirtualnej uwidocznionej w odpowiedzi interfejsu API listy wszystkich dostępnych rozmiarów maszyn wirtualnych w regionie.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-vCPUCountPerCore

Określa stosunek procesorów wirtualnych do fizycznego rdzenia. Jeśli ta właściwość nie zostanie określona w treści żądania, domyślne zachowanie jest ustawione na wartość vCPUsPerCore dla rozmiaru maszyny wirtualnej uwidocznionego w odpowiedzi interfejsu API listy wszystkich dostępnych rozmiarów maszyn wirtualnych w regionie. Ustawienie tej właściwości na 1 oznacza również, że funkcja hyper-threading jest wyłączona.

Typ:Int32
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VirtualNetworkName

Nazwa nowej (lub istniejącej) sieci wirtualnej do użycia przez utworzoną maszynę wirtualną. Jeśli nie zostanie określona, zostanie wygenerowana nazwa.

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-VM

Określa lokalną maszynę wirtualną do utworzenia. Aby uzyskać obiekt maszyny wirtualnej, użyj polecenia cmdlet New-AzVMConfig. Inne polecenia cmdlet mogą służyć do konfigurowania maszyny wirtualnej, takich jak Set-AzVMOperatingSystem, Set-AzVMSourceImage i Add-AzVMNetworkInterface.

Typ:PSVirtualMachine
Aliasy:VMProfile
Position:2
Domyślna wartość:None
Wymagane:True
Akceptowanie danych wejściowych potoku:True
Akceptowanie symboli wieloznacznych:False

-VmssId

Identyfikator zestawu skalowania maszyn wirtualnych, z którą ta maszyna wirtualna zostanie skojarzona

Typ:String
Position:Named
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-WhatIf

Pokazuje, co się stanie po uruchomieniu polecenia cmdlet. Polecenie cmdlet nie zostało uruchomione.

Typ:SwitchParameter
Aliasy:wi
Position:Named
Domyślna wartość:False
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

-Zone

Określa strefę maszyny wirtualnej. Mimo że odbywa się to w tablicy stref, maszyny wirtualne nie obsługują wielu stref dostępności. Dozwolona wartość zależy od możliwości regionu. Dozwolona wartość będzie zwykle wynosić 1, 2 lub 3. Więcej informacji na temat stref dostępności platformy Azure.

Typ:String[]
Position:3
Domyślna wartość:None
Wymagane:False
Akceptowanie danych wejściowych potoku:False
Akceptowanie symboli wieloznacznych:False

Dane wejściowe

String

PSVirtualMachine

String[]

Hashtable

Dane wyjściowe

PSAzureOperationResponse

PSVirtualMachine