New-AzVM

Crée une machine virtuelle.

Syntaxe

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

Description

L’applet de commande New-AzVM crée une machine virtuelle dans Azure. Cette applet de commande prend un objet de machine virtuelle comme entrée. L’applet de commande New-AzVM crée un compte de stockage pour les diagnostics de démarrage s’il n’en existe pas déjà.

Utilisez l’applet de commande New-AzVMConfig pour créer un objet machine virtuelle.
Utilisez ensuite les applets de commande suivantes pour définir différentes propriétés de l’objet de machine virtuelle :

Exemples

Exemple 1 : Créer une machine virtuelle

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

Cet exemple de script montre comment créer une machine virtuelle. Le script demande un nom d’utilisateur et un mot de passe pour la machine virtuelle. Ce script utilise plusieurs autres applets de commande.

Exemple 2 : Créer une machine virtuelle à partir d’une image utilisateur personnalisée

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

Cet exemple montre comment utiliser une image de système d’exploitation personnalisée généralisée et généralisée et y attacher un disque de données, provisionner un nouveau réseau, déployer le disque dur virtuel et l’exécuter. Ce script peut être utilisé pour l’approvisionnement automatique, car il utilise les informations d’identification d’administrateur de machine virtuelle locale inline au lieu d’appeler Get-Credential , ce qui nécessite une interaction utilisateur. Ce script suppose que vous êtes déjà connecté à votre compte Azure. Vous pouvez confirmer votre état de connexion à l’aide de l’applet de commande Get-AzSubscription .

Exemple 3 : Créer une machine virtuelle à partir d’une image de la Place de marché sans adresse IP publique

$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

Cette commande crée une machine virtuelle à partir d’une image de la Place de marché sans adresse IP publique.

Exemple 4 : Créer une machine virtuelle avec une valeur 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;

La valeur UserData doit toujours être encodée en Base64.

Exemple 5 : Création d’une machine virtuelle avec un sous-réseau existant dans un autre groupe de ressources

$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

Cet exemple déploie une machine virtuelle Windows à partir de la Place de marché dans un groupe de ressources avec un sous-réseau existant dans un autre groupe de ressources.

Exemple 6 : Création d’une machine virtuelle dans le cadre d’un vmSS avec une valeur 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;

Cet exemple crée une machine virtuelle dans le cadre d’un VMSS avec une valeur PlatformFaultDomain.

Exemple 7 : Créer une machine virtuelle à l’aide de l’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

Cet exemple crée une machine virtuelle à l’aide du paramètre -Image, en fournissant de nombreuses valeurs par défaut à la machine virtuelle.

Exemple 8 : Création d’une machine virtuelle pour 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;

Cet exemple montre comment créer une machine virtuelle avec le type de sécurité TrustedLaunch et définir les indicateurs EnableSecureBoot et EnableVtpm comme True par défaut. Une machine virtuelle de lancement approuvé nécessite une image Gen2. Pour plus d’informations, consultez la page de fonctionnalité Lancement approuvé.

Exemple 9 : Créer une machine virtuelle avec lancement approuvé activé par defualt à l’aide de 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.

Cet exemple montre comment créer une machine virtuelle avec une image Gen2 valide, ce qui permet à la machine virtuelle de choisir par défaut TrustedLaunch, ce qui nécessite des images Gen2. Pour plus d’informations, consultez la page de fonctionnalité Lancement approuvé.

Exemple 10 : Crée une machine virtuelle avec TrustedLaunch activée par défaut.

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

Cet exemple montre comment l’appel d’applet de commande simple avec des paramètres minimaux entraîne une machine virtuelle compatible TrustedLaunch avec une image Gen2. Pour plus d’informations, consultez la page de fonctionnalité Lancement approuvé.

=======

Paramètres

-AddressPrefix

Préfixe d’adresse du réseau virtuel qui sera créé pour la machine virtuelle.

Type:String
Position:Named
Valeur par défaut:192.168.0.0/16
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AllocationMethod

Méthode d’allocation IP pour l’adresse IP publique qui sera créée pour la machine virtuelle.

Type:String
Valeurs acceptées:Static, Dynamic
Position:Named
Valeur par défaut:Static
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AsJob

Exécutez l’applet de commande en arrière-plan et retournez un travail pour suivre la progression.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-AvailabilitySetName

Spécifie un nom pour le groupe à haute disponibilité.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-CapacityReservationGroupId

ID du groupe de réservations de capacité utilisé pour allouer.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Confirm

Vous demande une confirmation avant d’exécuter la commande cmdlet.

Type:SwitchParameter
Alias:cf
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Credential

Informations d’identification de l’administrateur pour la machine virtuelle.

Nom d’utilisateur
Restriction:
Windows : Impossible de contenir des caractères spéciaux /"[] :|<>+= ;, ?*@> ou se terminez par « ».
Linux : le nom d’utilisateur ne doit contenir que des lettres, des chiffres, des traits d’union et des traits de soulignement et ne peut pas commencer par un trait d’union ou un nombre.
Valeurs non autorisées : « administrateur », « admin », « user », « user1 », « test », « user2 », « test1 », « 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 ».
Longueur minimale : 1 caractère
Longueur maximale : 20 caractères pour Windows, 64 caractères pour Linux

Mot de passe
Doit avoir 3 des éléments suivants : 1 caractère minuscule, 1 caractère majuscule, 1 nombre et 1 caractère spécial.
La valeur doit être comprise entre 12 et 123 caractères.

Type:PSCredential
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DataDiskDeleteOption

Spécifie l’option de suppression de disque de données après la suppression de la machine virtuelle. Les options sont Détacher, Supprimer

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DataDiskSizeInGb

Spécifie les tailles des disques de données en Go.

Type:Int32[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

Type:IAzureContextContainer
Alias:AzContext, AzureRmContext, AzureCredential
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DisableBginfoExtension

Indique que cette applet de commande n’installe pas l’extension BG Info sur la machine virtuelle.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DiskControllerType

Spécifie le type de contrôleur de disque configuré pour la machine virtuelle et VirtualMachineScaleSet. Cette propriété est uniquement prise en charge pour les machines virtuelles dont le disque du système d’exploitation et la référence SKU de machine virtuelle prennent en charge la génération 2 (https://video2.skills-academy.com/en-us/azure/virtual-machines/generation-2), vérifiez la fonctionnalité HyperVGenerations retournée dans le cadre des fonctionnalités de référence SKU de machine virtuelle dans la réponse de l’API SKU Microsoft.Compute pour la région contient V2 (https://video2.skills-academy.com/rest/api/compute/resourceskus/list).
Pour plus d’informations sur les types de contrôleurs de disque pris en charge, consultez https://aka.ms/azure-diskcontrollertypes.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DiskFile

Chemin d’accès local au fichier de disque dur virtuel à charger dans le cloud et pour créer la machine virtuelle, et il doit avoir « .vhd » comme suffixe.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-DomainNameLabel

Étiquette de sous-domaine pour le nom de domaine complet (FQDN) de la machine virtuelle. Cela prendra la forme {domainNameLabel}.{location}.cloudapp.azure.com.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EdgeZone

Définit le nom de la zone de périphérie. Si elle est définie, la requête est routée vers la zone de périphérie spécifiée au lieu de la région principale.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-EnableSecureBoot

Spécifie si le démarrage sécurisé doit être activé sur la machine virtuelle.

Type:Nullable<T>[Boolean]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-EnableUltraSSD

Utilisez des disques UltraSSD pour la machine virtuelle.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EnableVtpm

Spécifie si vTPM doit être activé sur la machine virtuelle.

Type:Nullable<T>[Boolean]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-EncryptionAtHost

La propriété EncryptionAtHost peut être utilisée par l’utilisateur dans la demande pour activer ou désactiver le chiffrement de l’hôte pour la machine virtuelle ou le groupe de machines virtuelles identiques. Cela active le chiffrement pour tous les disques, y compris le disque Resource/Temp sur l’hôte lui-même. Valeur par défaut : le chiffrement sur l’hôte est désactivé, sauf si cette propriété a la valeur true pour la ressource.

Type:SwitchParameter
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-EvictionPolicy

Stratégie d’éviction pour la machine virtuelle Azure Spot. Les valeurs prises en charge sont « Libérer » et « Supprimer ».

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-GenerateSshKey

Générez une paire de clés publique/privée SSH et créez une ressource de clé publique SSH sur Azure.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-HibernationEnabled

Indicateur qui active ou désactive la fonctionnalité de mise en veille prolongée sur la machine virtuelle.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-HostGroupId

Spécifie le groupe hôte dédié dans lequel réside la machine virtuelle.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-HostId

ID de l’hôte

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-IfMatch

permet d’effectuer une demande conditionnelle pour les méthodes PUT et autres méthodes non sécurisées. Le serveur retourne uniquement les ressources demandées si la ressource correspond à l’une des valeurs ETag répertoriées. Omettez cette valeur pour toujours remplacer la ressource actuelle. Spécifiez la dernière valeur ETag vue pour empêcher le remplacement accidentel des modifications simultanées.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-IfNoneMatch

Utilisé pour effectuer une requête conditionnelle pour les méthodes GET et HEAD. Le serveur retourne uniquement les ressources demandées si aucune des valeurs ETag répertoriées ne correspond à l’entité actuelle. Utilisé pour effectuer une requête conditionnelle pour les méthodes GET et HEAD. Le serveur retourne uniquement les ressources demandées si aucune des valeurs ETag répertoriées ne correspond à l’entité actuelle. Définissez la valeur « * » pour autoriser la création d’un nouveau jeu d’enregistrements, mais pour empêcher la mise à jour d’un jeu d’enregistrements existant. D’autres valeurs entraînent une erreur du serveur, car elles ne sont pas prises en charge.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Image

Nom de l’image conviviale sur laquelle la machine virtuelle sera générée. Les alias disponibles sont : Win2022AzureEdition, Win2022AzureEditionCore, Win2019Datacenter, Win2016Datacenter, Win2012R2Datacenter, Win2012Datacenter, Ubuntu2204, CentOS85Gen2, Debian11, OpenSuseLeap154Gen2, RHELRaw8LVMGen2, SuseSles15SP3, FlatcarLinuxFreeGen2.

Type:String
Alias:ImageName
Position:Named
Valeur par défaut:Win2016Datacenter
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ImageReferenceId

Spécifie l’ID unique de l’image de galerie partagée pour le déploiement de machines virtuelles. Cette opération peut être extraite de l’appel GET de l’image de galerie partagée.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-LicenseType

Spécifie un type de licence, qui indique que l’image ou le disque de la machine virtuelle a été concédé sous licence locale. Les valeurs possibles pour Windows Server sont les suivantes :

  • Windows_Client
  • Windows_Server

Les valeurs possibles pour le système d’exploitation Linux Server sont les suivantes :

  • RHEL_BYOS (pour RHEL)
  • SLES_BYOS (pour SUSE)
Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Linux

Indique si le fichier disque est pour la machine virtuelle Linux, s’il est spécifié ; ou Windows, s’il n’est pas spécifié par défaut.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Location

Spécifie un emplacement pour la machine virtuelle.

Type:String
Position:1
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-MaxPrice

Prix maximal de la facturation d’une machine virtuelle de faible priorité.

Type:Double
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Name

Nom de la ressource de machine virtuelle.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-NetworkInterfaceDeleteOption

Spécifie l’action à effectuer sur la ressource NetworkInterface lorsque la machine virtuelle est supprimée. Les options sont les suivantes : Détacher, Supprimer.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-OpenPorts

Liste des ports à ouvrir sur le groupe de sécurité réseau (NSG) pour la machine virtuelle créée. La valeur par défaut dépend du type d’image choisi (par exemple, Windows : 3389, 5985 et Linux : 22).

Type:Int32[]
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-OSDiskDeleteOption

Spécifie l’option de suppression de disque du système d’exploitation après la suppression de la machine virtuelle. Les options sont Détacher, Supprimer

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PlatformFaultDomain

Spécifie le domaine d’erreur de la machine virtuelle.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-Priority

Priorité de la machine virtuelle. Seules les valeurs prises en charge sont « Regular », « Spot » et « Low ». « Normal » est destiné à une machine virtuelle normale. « Spot » est destiné à une machine virtuelle spot. 'Low' est également destiné à la machine virtuelle spot, mais est remplacé par 'Spot'. Utilisez « Spot » au lieu de « Low ».

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ProximityPlacementGroupId

ID de ressource du groupe de placement de proximité à utiliser avec cette machine virtuelle.

Type:String
Alias:ProximityPlacementGroup
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PublicIpAddressName

Nom d’une adresse IP publique (ou existante) pour la machine virtuelle créée à utiliser. S’il n’est pas spécifié, un nom est généré.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-PublicIpSku

Spécifie le nom de la référence SKU IP publique

Les valeurs acceptées sont « De base » et « Standard »

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-ResourceGroupName

Spécifie le nom d’un groupe de ressources.

Type:String
Position:0
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SecurityGroupName

Nom d’un groupe de sécurité réseau (NSG) nouveau (ou existant) que la machine virtuelle créée doit utiliser. S’il n’est pas spécifié, un nom est généré.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SecurityType

Spécifie le SecurityType de la machine virtuelle. Il doit être défini sur n’importe quelle valeur spécifiée pour activer UefiSettings. Par défaut, UefiSettings n’est pas activé, sauf si cette propriété est définie.

Type:String
Valeurs acceptées:TrustedLaunch, ConfidentialVM, Standard
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-SharedGalleryImageId

Spécifie l’ID unique de l’image de galerie partagée pour le déploiement de machines virtuelles. Cette opération peut être extraite de l’appel GET de l’image de galerie partagée.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Size

Taille de la machine virtuelle. Get-AzComputeResourceSku peut être utilisé pour connaître les tailles disponibles pour votre abonnement et votre région.
La valeur par défaut est : Standard_D2s_v3.

Type:String
Position:Named
Valeur par défaut:Standard_D2s_v3
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SshKeyName

Nom de la ressource de clé publique SSH.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SshKeyType

Spécifiez le type de clé SSH à générer. Les valeurs autorisées sont « Ed25519 » et « RSA ».

Type:String
Valeurs acceptées:Ed25519, RSA
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SubnetAddressPrefix

Préfixe d’adresse du sous-réseau qui sera créé pour la machine virtuelle.

Type:String
Position:Named
Valeur par défaut:192.168.1.0/24
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SubnetName

Nom d’un sous-réseau (ou existant) pour la machine virtuelle créée à utiliser. S’il n’est pas spécifié, un nom est généré.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-SystemAssignedIdentity

Si le paramètre est présent, la machine virtuelle reçoit une identité de système managée générée automatiquement.

Type:SwitchParameter
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Tag

Spécifie que les ressources et les groupes de ressources peuvent être étiquetés avec un ensemble de paires nom-valeur. L’ajout de balises à des ressources vous permet de regrouper les ressources entre les groupes de ressources et de créer vos propres vues. Chaque ressource ou groupe de ressources peut inclure un maximum de 15 balises.

Type:Hashtable
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-UserAssignedIdentity

Nom d’une identité de service managé qui doit être affectée à la machine virtuelle.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-UserData

UserData pour la machine virtuelle, qui sera encodée en base 64. Le client ne doit pas transmettre de secrets ici.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-vCPUCountAvailable

Spécifie le nombre de processeurs virtuels disponibles pour la machine virtuelle. Lorsque cette propriété n’est pas spécifiée dans le corps de la requête, le comportement par défaut consiste à le définir sur la valeur des processeurs virtuels disponibles pour cette taille de machine virtuelle exposée dans la réponse api de liste de toutes les tailles de machine virtuelle disponibles dans une région.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-vCPUCountPerCore

Spécifie le ratio de cœurs virtuels en cœurs physiques. Lorsque cette propriété n’est pas spécifiée dans le corps de la requête, le comportement par défaut est défini sur la valeur de vCPUsPerCore pour la taille de machine virtuelle exposée dans la réponse d’API de liste de toutes les tailles de machine virtuelle disponibles dans une région. La définition de cette propriété sur 1 signifie également que l’hyperthreading est désactivé.

Type:Int32
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-VirtualNetworkName

Nom d’un réseau virtuel (ou existant) que la machine virtuelle créée doit utiliser. S’il n’est pas spécifié, un nom est généré.

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-VM

Spécifie une machine virtuelle locale à créer. Pour obtenir un objet de machine virtuelle, utilisez l’applet de commande New-AzVMConfig. D’autres applets de commande peuvent être utilisées pour configurer la machine virtuelle, comme Set-AzVMOperatingSystem, Set-AzVMSourceImage et Add-AzVMNetworkInterface.

Type:PSVirtualMachine
Alias:VMProfile
Position:2
Valeur par défaut:None
Obligatoire:True
Accepter l'entrée de pipeline:True
Accepter les caractères génériques:False

-VmssId

ID du groupe de machines virtuelles identiques auquel cette machine virtuelle sera associée

Type:String
Position:Named
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-WhatIf

Montre ce qui se passe en cas d’exécution de l’applet de commande. L’applet de commande n’est pas exécutée.

Type:SwitchParameter
Alias:wi
Position:Named
Valeur par défaut:False
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

-Zone

Spécifie la zone de la machine virtuelle. Bien qu’elle prenne en charge un tableau de zones, les machines virtuelles ne prennent pas en charge plusieurs zones de disponibilité. La valeur autorisée dépend des fonctionnalités de la région. La valeur autorisée est normalement 1, 2 ou 3. Plus d’informations sur les zones de disponibilité Azure.

Type:String[]
Position:3
Valeur par défaut:None
Obligatoire:False
Accepter l'entrée de pipeline:False
Accepter les caractères génériques:False

Entrées

String

PSVirtualMachine

String[]

Hashtable

Sorties

PSAzureOperationResponse

PSVirtualMachine