New-AzVmss

Crea un set di scalabilità di macchine virtuali.

Sintassi

New-AzVmss
   [-ResourceGroupName] <String>
   [-VMScaleSetName] <String>
   [-VirtualMachineScaleSet] <PSVirtualMachineScaleSet>
   [-AsJob]
   [-EdgeZone <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzVmss
   [[-ResourceGroupName] <String>]
   [-VMScaleSetName] <String>
   [-AsJob]
   [-UserData <String>]
   [-EnableAutomaticOSUpgrade]
   [-ImageName <String>]
   -Credential <PSCredential>
   [-InstanceCount <Int32>]
   [-VirtualNetworkName <String>]
   [-SubnetName <String>]
   [-PublicIpAddressName <String>]
   [-DomainNameLabel <String>]
   [-SecurityGroupName <String>]
   [-LoadBalancerName <String>]
   [-BackendPort <Int32[]>]
   [-Location <String>]
   [-EdgeZone <String>]
   [-VmSize <String>]
   [-UpgradePolicyMode <UpgradeMode>]
   [-AllocationMethod <String>]
   [-VnetAddressPrefix <String>]
   [-SubnetAddressPrefix <String>]
   [-FrontendPoolName <String>]
   [-BackendPoolName <String>]
   [-SystemAssignedIdentity]
   [-UserAssignedIdentity <String>]
   [-EnableUltraSSD]
   [-Zone <System.Collections.Generic.List`1[System.String]>]
   [-NatBackendPort <Int32[]>]
   [-DataDiskSizeInGb <Int32[]>]
   [-ProximityPlacementGroupId <String>]
   [-HostGroupId <String>]
   [-Priority <String>]
   [-EvictionPolicy <String>]
   [-MaxPrice <Double>]
   [-ScaleInPolicy <String[]>]
   [-SkipExtensionsOnOverprovisionedVMs]
   [-EncryptionAtHost]
   [-PlatformFaultDomainCount <Int32>]
   [-OrchestrationMode <String>]
   [-CapacityReservationGroupId <String>]
   [-ImageReferenceId <String>]
   [-DiskControllerType <String>]
   [-SharedGalleryImageId <String>]
   [-SecurityType <String>]
   [-EnableVtpm <Boolean>]
   [-EnableSecureBoot <Boolean>]
   [-DefaultProfile <IAzureContextContainer>]
   [-SinglePlacementGroup]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

Descrizione

Il cmdlet New-AzVmss crea un set di scalabilità di macchine virtuali in Azure. Usare il set di parametri semplice (SimpleParameterSet) per creare rapidamente un set di macchine virtuali preconfigurato e le risorse associate.

Usare il set di parametri predefinito (DefaultParameter) per scenari più avanzati quando è necessario configurare con precisione ogni componente del set di scalabilità di macchine virtuali e ogni risorsa associata prima della creazione. Per il set di parametri predefinito, usare prima di tutto il cmdlet New-AzVmssConfig per creare un oggetto set di scalabilità di macchine virtuali.

Usare quindi i cmdlet seguenti per impostare proprietà diverse dell'oggetto set di scalabilità di macchine virtuali:

Vedere altri cmdlet per il set di scalabilità di macchine virtuali qui.

Vedere Avvio rapido: Creare un set di scalabilità di macchine virtuali con Azure PowerShell per l'esercitazione.

Esempio

Esempio 1: Creare un set di scalabilità di macchine virtuali con SimpleParameterSet

$vmssName = 'VMSSNAME'
# Create credentials, I am using one way to create credentials, there are others as well.
# Pick one that makes the most sense according to your use case.
$vmPassword = ConvertTo-SecureString "PASSWORD" -AsPlainText -Force
$vmCred = New-Object System.Management.Automation.PSCredential('USERNAME', $vmPassword)
$securityTypeStnd = "Standard"

#Create a VMSS using the default settings
New-AzVmss -Credential $vmCred -VMScaleSetName $vmssName -SecurityType $securityTypeStnd

Il comando precedente crea il codice seguente con il nome $vmssName :

  • Un gruppo di risorse
  • Una rete virtuale
  • Un servizio di bilanciamento del carico
  • Un indirizzo IP pubblico
  • set di scalabilità di macchine virtuali con 2 istanze

L'immagine predefinita scelta per le macchine virtuali nel set di scalabilità di macchine virtuali è 2016-Datacenter Windows Server e lo SKU è Standard_DS1_v2

Esempio 2: Creare un set di scalabilità di macchine virtuali con DefaultParameterSet

# Common
$LOC = "WestUs";
$RGName = "rgkyvms";

New-AzResourceGroup -Name $RGName -Location $LOC -Force;

# SRP
$STOName = "sto" + $RGName;
$STOType = "Standard_GRS";
New-AzStorageAccount -ResourceGroupName $RGName -Name $STOName -Location $LOC -Type $STOType;
$STOAccount = Get-AzStorageAccount -ResourceGroupName $RGName -Name $STOName;

# NRP
$SubNet = New-AzVirtualNetworkSubnetConfig -Name ("subnet" + $RGName) -AddressPrefix "10.0.0.0/24";
$VNet = New-AzVirtualNetwork -Force -Name ("vnet" + $RGName) -ResourceGroupName $RGName -Location $LOC -AddressPrefix "10.0.0.0/16" -DnsServer "10.1.1.1" -Subnet $SubNet;
$VNet = Get-AzVirtualNetwork -Name ('vnet' + $RGName) -ResourceGroupName $RGName;
$SubNetId = $VNet.Subnets[0].Id;

$PubIP = New-AzPublicIpAddress -Force -Name ("pubip" + $RGName) -ResourceGroupName $RGName -Location $LOC -AllocationMethod Dynamic -DomainNameLabel ("pubip" + $RGName);
$PubIP = Get-AzPublicIpAddress -Name ("pubip"  + $RGName) -ResourceGroupName $RGName;

# Create LoadBalancer
$FrontendName = "fe" + $RGName
$BackendAddressPoolName = "bepool" + $RGName
$ProbeName = "vmssprobe" + $RGName
$InboundNatPoolName  = "innatpool" + $RGName
$LBRuleName = "lbrule" + $RGName
$LBName = "vmsslb" + $RGName

$Frontend = New-AzLoadBalancerFrontendIpConfig -Name $FrontendName -PublicIpAddress $PubIP
$BackendAddressPool = New-AzLoadBalancerBackendAddressPoolConfig -Name $BackendAddressPoolName
$Probe = New-AzLoadBalancerProbeConfig -Name $ProbeName -RequestPath healthcheck.aspx -Protocol http -Port 80 -IntervalInSeconds 15 -ProbeCount 2
$InboundNatPool = New-AzLoadBalancerInboundNatPoolConfig -Name $InboundNatPoolName  -FrontendIPConfigurationId `
    $Frontend.Id -Protocol Tcp -FrontendPortRangeStart 3360 -FrontendPortRangeEnd 3367 -BackendPort 3370;
$LBRule = New-AzLoadBalancerRuleConfig -Name $LBRuleName `
    -FrontendIPConfiguration $Frontend -BackendAddressPool $BackendAddressPool `
    -Probe $Probe -Protocol Tcp -FrontendPort 80 -BackendPort 80 `
    -IdleTimeoutInMinutes 15 -EnableFloatingIP -LoadDistribution SourceIP;
$ActualLb = New-AzLoadBalancer -Name $LBName -ResourceGroupName $RGName -Location $LOC `
    -FrontendIpConfiguration $Frontend -BackendAddressPool $BackendAddressPool `
    -Probe $Probe -LoadBalancingRule $LBRule -InboundNatPool $InboundNatPool;
$ExpectedLb = Get-AzLoadBalancer -Name $LBName -ResourceGroupName $RGName

# New VMSS Parameters
$VMSSName = "vmss" + $RGName;

$AdminUsername = "Admin01";
$AdminPassword = "p4ssw0rd@123" + $RGName;

$PublisherName = "MicrosoftWindowsServer"
$Offer         = "WindowsServer"
$Sku           = "2012-R2-Datacenter"
$Version       = "latest"

$VHDContainer = "https://" + $STOName + ".blob.core.windows.net/" + $VMSSName;

$ExtName = "CSETest";
$Publisher = "Microsoft.Compute";
$ExtType = "BGInfo";
$ExtVer = "2.1";

#IP Config for the NIC
$IPCfg = New-AzVmssIpConfig -Name "Test" `
    -LoadBalancerInboundNatPoolsId $ExpectedLb.InboundNatPools[0].Id `
    -LoadBalancerBackendAddressPoolsId $ExpectedLb.BackendAddressPools[0].Id `
    -SubnetId $SubNetId;

#VMSS Config
$securityTypeStnd = "Standard";
$VMSS = New-AzVmssConfig -Location $LOC -SkuCapacity 2 -SkuName "Standard_E4-2ds_v4" -UpgradePolicyMode "Automatic" -SecurityType $securityTypeStnd `
    | Add-AzVmssNetworkInterfaceConfiguration -Name "Test" -Primary $True -IPConfiguration $IPCfg `
    | Add-AzVmssNetworkInterfaceConfiguration -Name "Test2"  -IPConfiguration $IPCfg `
    | Set-AzVmssOsProfile -ComputerNamePrefix "Test"  -AdminUsername $AdminUsername -AdminPassword $AdminPassword `
    | Set-AzVmssStorageProfile -Name "Test"  -OsDiskCreateOption 'FromImage' -OsDiskCaching "None" `
    -ImageReferenceOffer $Offer -ImageReferenceSku $Sku -ImageReferenceVersion $Version `
    -ImageReferencePublisher $PublisherName -VhdContainer $VHDContainer `
    | Add-AzVmssExtension -Name $ExtName -Publisher $Publisher -Type $ExtType -TypeHandlerVersion $ExtVer -AutoUpgradeMinorVersion $True

#Create the VMSS
New-AzVmss -ResourceGroupName $RGName -Name $VMSSName -VirtualMachineScaleSet $VMSS;

L'esempio complesso precedente crea un set di scalabilità di macchine virtuali, di seguito è riportata una spiegazione di ciò che accade:

  • Il primo comando crea un gruppo di risorse con il nome e la posizione specificati.
  • Il secondo comando usa il cmdlet New-Az Archiviazione Account per creare un account di archiviazione.
  • Il terzo comando usa quindi il cmdlet Get-Az Archiviazione Account per ottenere l'account di archiviazione creato nel secondo comando e archivia il risultato nella variabile $STOAccount.
  • Il quinto comando usa il cmdlet New-AzVirtualNetworkSubnetConfig per creare una subnet e archivia il risultato nella variabile denominata $SubNet.
  • Il sesto comando usa il cmdlet New-AzVirtualNetwork per creare una rete virtuale e archivia il risultato nella variabile denominata $VNet.
  • Il settimo comando usa Get-AzVirtualNetwork per ottenere informazioni sulla rete virtuale creata nel sesto comando e archivia le informazioni nella variabile denominata $VNet.
  • L'ottavo e il nono comando usano New-AzPublicIpAddress e Get- AzureRmPublicIpAddress per creare e ottenere informazioni da tale indirizzo IP pubblico.
  • I comandi archiviano le informazioni nella variabile denominata $PubIP.
  • Il decimo comando usa il cmdlet New- AzureRmLoadBalancerFrontendIpConfig per creare un servizio di bilanciamento del carico front-end e archivia il risultato nella variabile denominata $Frontend.
  • L'undicesimo comando usa New-AzLoadBalancerBackendAddressPoolConfig per creare una configurazione del pool di indirizzi back-end e archivia il risultato nella variabile denominata $BackendAddressPool.
  • Il dodicesimo comando usa New-AzLoadBalancerProbeConfig per creare un probe e archivia le informazioni del probe nella variabile denominata $Probe.
  • Il tredicesimo comando usa il cmdlet New-AzLoadBalancerInboundNatPoolConfig per creare una configurazione del pool NAT (Network Address Translation) del servizio di bilanciamento del carico.
  • Il quattordicesimo comando usa New-AzLoadBalancerRuleConfig per creare una configurazione della regola di bilanciamento del carico e archivia il risultato nella variabile denominata $LBRule.
  • Il quindicesimo comando usa il cmdlet New-AzLoadBalancer per creare un servizio di bilanciamento del carico e archivia il risultato nella variabile denominata $ActualLb.
  • Il sedicesimo comando usa Get-AzLoadBalancer per ottenere informazioni sul servizio di bilanciamento del carico creato nel quindicesimo comando e archivia le informazioni nella variabile denominata $ExpectedLb.
  • Il diciassettesimo comando usa il cmdlet New-AzVmssIpConfig per creare una configurazione IP del set di scalabilità di macchine virtuali e archivia le informazioni nella variabile denominata $IPCfg.
  • Il settecento comando usa il cmdlet New-AzVmssConfig per creare un oggetto di configurazione VMSS e archivia il risultato nella variabile denominata $VMSS.
  • Il diciannovesimo comando usa il cmdlet New-AzVmss per creare il set di scalabilità di macchine virtuali.

Esempio 3: Creare un set di scalabilità di macchine virtuali con un valore UserData

$ResourceGroupName = 'RESOURCE GROUP NAME';
$vmssName = 'VMSSNAME';
$domainNameLabel = "dnl" + $ResourceGroupName;
# Create credentials, I am using one way to create credentials, there are others as well.
# Pick one that makes the most sense according to your use case.
$vmPassword = ConvertTo-SecureString 'PASSWORD' -AsPlainText -Force;
$vmCred = New-Object System.Management.Automation.PSCredential('USERNAME', $vmPassword);

$text = "UserData value to encode";
$bytes = [System.Text.Encoding]::Unicode.GetBytes($text);
$userData = [Convert]::ToBase64String($bytes);
$securityTypeStnd = "Standard";

#Create a VMSS
New-AzVmss -ResourceGroupName $ResourceGroupName -Name $vmssName -Credential $vmCred -DomainNameLabel $domainNameLabel -Userdata $userData -SecurityType $securityTypeStnd;
$vmss = Get-AzVmss -ResourceGroupName $ResourceGroupName -VMScaleSetName $vmssName -InstanceView:$false -Userdata;

Creare un set di scalabilità di macchine virtuali con un valore UserData

Esempio 4: Creare una macchina virtuale con il tipo di sicurezza TrustedLaunch

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

# VMSS Profile & Hardware requirements for the TrustedLaunch default behavior.
$vmssSize = 'Standard_D4s_v3';
$vmssName1 = 'vmss1' + $rgname;
$imageName = "Win2022AzureEdition";
$adminUsername = "<Username>";
$adminPassword = "<Password>" | ConvertTo-SecureString -AsPlainText -Force;
$vmCred = New-Object System.Management.Automation.PSCredential ($adminUsername, $adminPassword);

# VMSS Creation 
$result = New-AzVmss -Credential $vmCred -VMScaleSetName $vmssName1 -ImageName $imageName -SecurityType "TrustedLaunch";
# Validate that for -SecurityType "TrustedLaunch", "-Vtpm" and -"SecureBoot" are "Enabled/true"
# $result.VirtualMachineProfile.SecurityProfile.UefiSettings.VTpmEnabled;
# $result.VirtualMachineProfile.SecurityProfile.UefiSettings.SecureBootEnabled;

Questo esempio crea un nuovo set di scalabilità di macchine virtuali con il nuovo tipo di sicurezza "TrustedLaunch" e i valori UEFI Impostazioni necessari, VTpmEnabled e SecureBootEnalbed sono true. Per altre informazioni, vedere la pagina della funzionalità Avvio attendibile.

Esempio 5: Creare una macchina virtuale in modalità di orchestrazione: flessibile per impostazione predefinita

# Create configration object
$vmssConfig = New-AzVmssConfig -Location EastUs2 -UpgradePolicyMode Manual -SinglePlacementGroup $true

# VMSS Creation 
New-AzVmss -ResourceGroupName TestRg -VMScaleSetName myVMSS -VirtualMachineScaleSet $vmssConfig

Questo esempio crea un nuovo set di scalabilità di macchine virtuali e per impostazione predefinita orchestrationMode flessibile.

Esempio 6: Creare un nuovo set di scalabilità di macchine virtuali con TrustedLaunch attivato per impostazione predefinita.

$rgname = "<Resource Group>";
$loc = "<Azure Region>";
New-AzResourceGroup -Name $rgname -Location $loc -Force;

$vmssName = 'vmss' + $rgname;
$vmssSize = 'Standard_D4s_v3';
$imageName = "Win2022AzureEdition";
$publisherName = "MicrosoftWindowsServer";
$offer = "WindowsServer";
$sku = "2022-Datacenter-Azure-Edition";
$adminUsername = "<Username>";
$password = "<Password>";

# NRP
$vnetworkName = 'vnet' + $rgname;
$subnetName = 'subnet' + $rgname;
$subnet = New-AzVirtualNetworkSubnetConfig -Name $subnetName -AddressPrefix "10.0.0.0/24";
$vnet = New-AzVirtualNetwork -Name $vnetworkName -ResourceGroupName $rgname -Location $loc -AddressPrefix "10.0.0.0/16" -Subnet $subnet;
$vnet = Get-AzVirtualNetwork -Name $vnetworkName -ResourceGroupName $rgname;
$subnetId = $vnet.Subnets[0].Id;

$ipCfg = New-AzVmssIpConfig -Name 'test' -SubnetId $subnetId;

$vmss = New-AzVmssConfig -Location $loc -SkuCapacity 2 -SkuName $vmssSize -UpgradePolicyMode 'Manual' `
    | Add-AzVmssNetworkInterfaceConfiguration -Name 'test' -Primary $true -IPConfiguration $ipCfg `
    | Set-AzVmssOsProfile -ComputerNamePrefix 'test' -AdminUsername $adminUsername -AdminPassword $password;
    
# Create TL Vmss
$result = New-AzVmss -ResourceGroupName $rgname -VMScaleSetName $vmssName -VirtualMachineScaleSet $vmss;
$vmssGet = Get-AzVmss -ResourceGroupName $rgname -VMScaleSetName $vmssName;

# Verify $vmssGet.VirtualMachineProfile.SecurityProfile.SecurityType is TrustedLaunch.
# Verify $vmssGet.VirtualMachineProfile.SecurityProfile.UefiSettings.VTpmEnabled is True.
# Verify $vmssGet.VirtualMachineProfile.SecurityProfile.UefiSettings.SecureBootEnabled is True.
# Verify $vmssGet.VirtualMachineProfile.StorageProfile.ImageReference.Sku is 2022-Datacenter-Azure-Edition.

Per impostazione predefinita, il set di scalabilità di macchine virtuali precedente è abilitato per l'avvio attendibile. Per altre informazioni, vedere la pagina della funzionalità Avvio attendibile.

Parametri

-AllocationMethod

Metodo di allocazione per l'indirizzo IP pubblico del set di scalabilità (statico o dinamico). Se non viene specificato alcun valore, l'allocazione sarà statica.

Type:String
Accepted values:Static, Dynamic
Position:Named
Default value:Static
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AsJob

Eseguire il cmdlet in background e restituire un processo per tenere traccia dello stato di avanzamento.

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

-BackendPoolName

Nome del pool di indirizzi back-end da usare nel servizio di bilanciamento del carico per questo set di scalabilità. Se non viene specificato alcun valore, verrà creato un nuovo pool back-end con lo stesso nome del set di scalabilità.

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

-BackendPort

Numeri di porta back-end usati dal servizio di bilanciamento del carico del set di scalabilità per comunicare con le macchine virtuali nel set di scalabilità. Se non vengono specificati valori, verranno usate le porte 3389 e 5985 per le macchine virtuali Windows e la porta 22 verrà usata per le macchine virtuali Linux.

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

-CapacityReservationGroupId

ID del gruppo di prenotazioni di capacità utilizzato per allocare.

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

-Confirm

Richiede conferma prima di eseguire il cmdlet.

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

-Credential

Credenziali di amministratore (nome utente e password) per le macchine virtuali in questo set di scalabilità.

Nome utente
Restrizione:
Windows: Impossibile contenere caratteri speciali /""[]:|<>+=;,?*@& or end in "."
Linux: il nome utente deve contenere solo lettere, numeri, trattini e caratteri di sottolineatura e non iniziare con un trattino o un numero.
Valori non consentiti: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin"2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".
Lunghezza minima: 1 carattere
Lunghezza massima: 20 caratteri per Windows, 64 caratteri per Linux
Password
Deve avere 3 dei caratteri seguenti: 1 carattere minuscolo, 1 carattere maiuscolo, 1 numero e 1 carattere speciale.
Il valore deve essere compreso tra 12 e 123 caratteri.

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

-DataDiskSizeInGb

Specifica le dimensioni dei dischi dati in GB.

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

-DefaultProfile

Credenziali, account, tenant e sottoscrizione usati per la comunicazione con Azure.

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

-DiskControllerType

Specifica il tipo di controller del disco configurato per la macchina virtuale e VirtualMachineScaleSet. Questa proprietà è supportata solo per le macchine virtuali il cui disco del sistema operativo e lo SKU della macchina virtuale supportano la generazione 2 (https://learn.microsoft.com/en-us/azure/virtual-machines/generation-2), controllare la funzionalità HyperVGenerations restituita come parte delle funzionalità sku della macchina virtuale nella risposta dell'API SKU Microsoft.Compute per l'area che contiene V2 (https://learn.microsoft.com/rest/api/compute/resourceskus/list).
Per altre informazioni sui tipi di controller disco supportati, vedere https://aka.ms/azure-diskcontrollertypes.

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

-DomainNameLabel

Etichetta del nome di dominio per il nome di dominio completo pubblico (FQDN) per questo set di scalabilità. Si tratta del primo componente del nome di dominio assegnato automaticamente al set di scalabilità. I nomi di dominio assegnati automaticamente usano il modulo (<DomainNameLabel>.<Location>.cloudapp.azure.com). Se non viene specificato alcun valore, l'etichetta del nome di dominio predefinita sarà la concatenazione di <ScaleSetName> e <ResourceGroupName>.

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

-EdgeZone

Imposta il nome della zona perimetrale. Se impostata, la query verrà instradata alla zona perimetrale specificata anziché all'area principale.

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

-EnableAutomaticOSUpgrade

Indica se gli aggiornamenti del sistema operativo devono essere applicati automaticamente alle istanze del set di scalabilità in sequenza quando diventa disponibile una versione più recente dell'immagine.

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

-EnableSecureBoot

Specifica se l'avvio protetto deve essere abilitato nella macchina virtuale.

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

-EnableUltraSSD

Usare dischi UltraSSD per le macchine virtuali nel set di scalabilità.

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

-EnableVtpm

Specifica se vTPM deve essere abilitato nella macchina virtuale.

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

-EncryptionAtHost

Questo parametro abiliterà la crittografia per tutti i dischi, incluso il disco Resource/Temp nell'host stesso. Impostazione predefinita: la crittografia dell'host verrà disabilitata a meno che questa proprietà non sia impostata su true per la risorsa.

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

-EvictionPolicy

Criteri di rimozione per il set di scalabilità di macchine virtuali con priorità bassa. Solo i valori supportati sono 'Deallocate' e 'Delete'.

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

-FrontendPoolName

Nome del pool di indirizzi front-end da usare nel servizio di bilanciamento del carico del set di scalabilità. Se non viene specificato alcun valore, verrà creato un nuovo pool di indirizzi front-end con lo stesso nome del set di scalabilità.

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

-HostGroupId

Specifica il gruppo host dedicato in cui risiederà il set di scalabilità di macchine virtuali.

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

-ImageName

Alias dell'immagine per le macchine virtuali in questo set di scalabilità. Se non viene specificato alcun valore, verrà usata l'immagine "Windows Server 2016 DataCenter". Gli alias disponibili sono: Win2022AzureEdition, Win2022AzureEditionCore, Win2019Datacenter, Win2016Datacenter, Win2012R2Datacenter, Win2012Datacenter, UbuntuLTS, Ubuntu2204, CentOS85Gen2, Debian11, OpenSuseLeap154Gen2, RHELRaw8LVMGen2, SuseSles15SP3, FlatcarLinuxFreeGen2.

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

-ImageReferenceId

Specifica l'ID univoco dell'immagine della raccolta condivisa per la distribuzione di vmss. Questa operazione può essere recuperata dalla chiamata GET dell'immagine della raccolta condivisa.

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

-InstanceCount

Numero di immagini di macchine virtuali nel set di scalabilità. Se non viene specificato alcun valore, verranno create 2 istanze.

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

-LoadBalancerName

Nome del servizio di bilanciamento del carico da usare con questo set di scalabilità. Se non viene specificato alcun valore, verrà creato un nuovo servizio di bilanciamento del carico con lo stesso nome del set di scalabilità.

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

-Location

Percorso di Azure in cui verrà creato questo set di scalabilità. Se non viene specificato alcun valore, la posizione verrà dedotta dalla posizione di altre risorse a cui si fa riferimento nei parametri.

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

-MaxPrice

Prezzo massimo della fatturazione di un set di scalabilità di macchine virtuali con priorità bassa.

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

-NatBackendPort

Porta back-end per la conversione degli indirizzi di rete in ingresso.

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

-OrchestrationMode

Specifica la modalità di orchestrazione per il set di scalabilità di macchine virtuali. Valori possibili: Uniform, Flessibile

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

-PlatformFaultDomainCount

Numero di domini di errore per ogni gruppo di posizionamento.

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

-Priority

Priorità per la macchina virtuale nel set di scalabilità. Solo i valori supportati sono 'Regular', 'Spot' e 'Low'. 'Regular' è per la normale macchina virtuale. 'Spot' è per la macchina virtuale spot. 'Low' è anche per la macchina virtuale spot, ma viene sostituito da 'Spot'. Usare "Spot" invece di "Low".

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

-ProximityPlacementGroupId

ID risorsa del gruppo di posizionamento di prossimità da usare con questo set di scalabilità.

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

-PublicIpAddressName

Nome dell'indirizzo IP pubblico da usare con questo set di scalabilità. Se non viene specificato alcun valore, verrà creato un nuovo indirizzo IP pubblico con lo stesso nome del set di scalabilità.

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

-ResourceGroupName

Specifica il nome del gruppo di risorse del set di scalabilità di macchine virtuali. Se non viene specificato alcun valore, verrà creato un nuovo gruppo di risorse con lo stesso nome del set di scalabilità.

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

-ScaleInPolicy

Regole da seguire durante il ridimensionamento di un set di scalabilità di macchine virtuali. I valori possibili sono: 'Default', 'OldestVM' e 'NewestVM'. "Impostazione predefinita" quando viene ridimensionato un set di scalabilità di macchine virtuali, il set di scalabilità verrà prima bilanciato tra le zone se si tratta di un set di scalabilità di zona. Quindi, verrà bilanciato tra domini di errore il più possibile. All'interno di ogni dominio di errore, le macchine virtuali scelte per la rimozione saranno quelle più recenti che non sono protette dal ridimensionamento. "OldestVM" quando viene ridimensionato un set di scalabilità di macchine virtuali, verranno scelte le macchine virtuali meno recenti che non sono protette dal ridimensionamento. Per i set di scalabilità di macchine virtuali di zona, il set di scalabilità verrà prima bilanciato tra le zone. All'interno di ogni zona, verranno scelte le macchine virtuali meno recenti che non sono protette per la rimozione. "NewestVM" quando viene ridimensionato un set di scalabilità di macchine virtuali, verranno scelte le macchine virtuali più recenti che non sono protette dal ridimensionamento. Per i set di scalabilità di macchine virtuali di zona, il set di scalabilità verrà prima bilanciato tra le zone. All'interno di ogni zona, verranno scelte le macchine virtuali più recenti che non sono protette per la rimozione.

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

-SecurityGroupName

Nome del gruppo di sicurezza di rete da applicare a questo set di scalabilità. Se non viene specificato alcun valore, verrà creato e applicato un gruppo di sicurezza di rete predefinito con lo stesso nome del set di scalabilità.

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

-SecurityType

Specifica il Tipo di sicurezza della macchina virtuale. Deve essere impostato su qualsiasi valore specificato per abilitare Uefi Impostazioni. Uefi Impostazioni non verrà abilitato a meno che questa proprietà non sia impostata.

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

-SharedGalleryImageId

È stato specificato l'ID univoco dell'immagine della raccolta condivisa per la distribuzione della macchina virtuale. Questa operazione può essere recuperata dalla chiamata GET dell'immagine della raccolta condivisa.

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

-SinglePlacementGroup

Usare questa opzione per creare il set di scalabilità in un singolo gruppo di posizionamento, il valore predefinito è costituito da più gruppi

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

-SkipExtensionsOnOverprovisionedVMs

Specifica che le estensioni non vengono eseguite nelle macchine virtuali con provisioning eccessivo aggiuntivo.

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

-SubnetAddressPrefix

Prefisso dell'indirizzo della subnet che verrà usato da questo set di scalabilità. Le impostazioni subnet predefinite (192.168.1.0/24) verranno applicate se non viene specificato alcun valore.

Type:String
Position:Named
Default value:192.168.1.0/24
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-SubnetName

Nome della subnet da usare con questo set di scalabilità. Se non viene specificato alcun valore, verrà creata una nuova subnet con lo stesso nome del set di scalabilità.

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

-SystemAssignedIdentity

Se il parametro è presente, alle macchine virtuali nel set di scalabilità viene assegnata un'identità del sistema gestita generata automaticamente.

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

-UpgradePolicyMode

Modalità dei criteri di aggiornamento per le istanze di macchine virtuali in questo set di scalabilità. I criteri di aggiornamento possono specificare aggiornamenti automatici, manuali o in sequenza.

Type:UpgradeMode
Accepted values:Automatic, Manual, Rolling
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserAssignedIdentity

Nome di un'identità del servizio gestita che deve essere assegnata alle macchine virtuali nel set di scalabilità.

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

-UserData

UserData per le macchine virtuali, che saranno codificate in base 64. Il cliente non deve passare segreti qui.

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

-VirtualMachineScaleSet

Specifica l'oggetto VirtualMachineScaleSet che contiene le proprietà del set di scalabilità di macchine virtuali creato da questo cmdlet.

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

-VirtualNetworkName

Nome del Rete virtuale da usare con questo set di scalabilità. Se non viene specificato alcun valore, verrà creata una nuova rete virtuale con lo stesso nome del set di scalabilità.

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

-VMScaleSetName

Specifica il nome del set di scalabilità di macchine virtuali creato da questo cmdlet.

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

-VmSize

Dimensioni delle istanze di macchina virtuale in questo set di scalabilità. Get-AzComputeResourceSku può essere usato per individuare le dimensioni disponibili per la sottoscrizione e l'area. Se non viene specificata alcuna dimensione, verrà utilizzata una dimensione predefinita (Standard_DS1_v2).

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

-VnetAddressPrefix

Prefisso dell'indirizzo per la rete virtuale usata con questo set di scalabilità. Le impostazioni predefinite del prefisso dell'indirizzo di rete virtuale (192.168.0.0/16) verranno usate se non viene fornito alcun valore.

Type:String
Position:Named
Default value:192.168.0.0/16
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

Mostra gli effetti dell'esecuzione del cmdlet. Il cmdlet non viene eseguito.

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

-Zone

Elenco delle zone di disponibilità che denota l'INDIRIZZO IP allocato per la risorsa da cui deve provenire.

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

Input

String

PSVirtualMachineScaleSet

List<T>[[System.String, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]

Output

PSVirtualMachineScaleSet