Set-AzVmssOsProfile

Anger egenskaperna för VMSS-operativsystemets profil.

Syntax

Default (Standard)

Set-AzVmssOsProfile
    [-VirtualMachineScaleSet] <PSVirtualMachineScaleSet>
    [[-ComputerNamePrefix] <String>]
    [[-AdminUsername] <String>]
    [[-AdminPassword] <String>]
    [[-CustomData] <String>]
    [[-WindowsConfigurationProvisionVMAgent] <Boolean>]
    [-LinuxConfigurationProvisionVMAgent <Boolean>]
    [[-WindowsConfigurationEnableAutomaticUpdate] <Boolean>]
    [[-TimeZone] <String>]
    [[-AdditionalUnattendContent] <AdditionalUnattendContent[]>]
    [[-Listener] <WinRMListener[]>]
    [[-LinuxConfigurationDisablePasswordAuthentication] <Boolean>]
    [[-PublicKey] <SshPublicKey[]>]
    [[-Secret] <VaultSecretGroup[]>]
    [-WindowsConfigurationPatchMode <String>]
    [-LinuxConfigurationPatchMode <String>]
    [-EnableHotpatching]
    [-DefaultProfile <IAzureContextContainer>]
    [-WhatIf]
    [-Confirm]
    [<CommonParameters>]

Description

Cmdleten Set-AzVmssOsProfile anger egenskaperna för vm-skalningsuppsättningens operativsystemprofil.

Exempel

Exempel 1: Ange operativsystemets profilegenskaper för en VMSS

$vmss = New-AzVmssConfig -Location $Loc -SkuCapacity 2 -SkuName "Standard_A0" -UpgradePolicyMode "Automatic" -NetworkInterfaceConfiguration $NetCfg
Set-AzVmssOsProfile -VirtualMachineScaleSet $vmss -ComputerNamePrefix "Test" -AdminUsername $AdminUsername -AdminPassword $AdminPassword

Det här kommandot anger egenskaper för operativsystemets profil för $vmss-objektet. Kommandot anger datornamnprefixet för alla virtuella datorinstanser i VMSS för att testa och tillhandahåller administratörens användarnamn och lösenord.

Exempel 2: Ange operativsystemets profilegenskaper för en virtuell dator i flexibelt läge med Hotpatching aktiverat.

# Setup variables.
$loc = "eastus";
$rgname = "<Resource Group Name>";
$vmssName = "myVmssSlb";
$vmNamePrefix = "vmSlb";
$vmssInstanceCount = 5;
$vmssSku = "Standard_DS1_v2";
$vnetname = "myVnet";
$vnetAddress = "10.0.0.0/16";
$subnetname = "default-slb";
$subnetAddress = "10.0.2.0/24";
$securePassword = ConvertTo-SecureString -String "****" -AsPlainText -Force;
$cred = New-Object System.Management.Automation.PSCredential ("<Username>", $securePassword);

# VMSS Flex requires explicit outbound access.
# Create a virtual network.
$frontendSubnet = New-AzVirtualNetworkSubnetConfig -Name $subnetname -AddressPrefix $subnetAddress;
$virtualNetwork = New-AzVirtualNetwork -Name $vnetname -ResourceGroupName $rgname -Location $loc -AddressPrefix $vnetAddress -Subnet $frontendSubnet;

# Create a public IP address.
$publicIP = New-AzPublicIpAddress `
    -ResourceGroupName $rgname `
    -Location $loc `
    -AllocationMethod Static `
    -Sku "Standard" `
    -IpAddressVersion "IPv4" `
    -Name "myLBPublicIP";

# Create a frontend and backend IP pool.
$frontendIP = New-AzLoadBalancerFrontendIpConfig `
    -Name "myFrontEndPool" `
    -PublicIpAddress $publicIP;

$backendPool = New-AzLoadBalancerBackendAddressPoolConfig -Name "myBackEndPool" ;

# Create the load balancer.
$lb = New-AzLoadBalancer `
    -ResourceGroupName $rgname `
    -Name "myLoadBalancer" `
    -Sku "Standard" `
    -Tier "Regional" `
    -Location $loc `
    -FrontendIpConfiguration $frontendIP `
    -BackendAddressPool $backendPool;

# Create a load balancer health probe for TCP port 80.
Add-AzLoadBalancerProbeConfig -Name "myHealthProbe" `
    -LoadBalancer $lb `
    -Protocol TCP `
    -Port 80 `
    -IntervalInSeconds 15 `
    -ProbeCount 2;

# Create a load balancer rule to distribute traffic on port TCP 80.
# The health probe from the previous step is used to make sure that traffic is
# only directed to healthy VM instances.
Add-AzLoadBalancerRuleConfig `
    -Name "myLoadBalancerRule" `
    -LoadBalancer $lb `
    -FrontendIpConfiguration $lb.FrontendIpConfigurations[0] `
    -BackendAddressPool $lb.BackendAddressPools[0] `
    -Protocol TCP `
    -FrontendPort 80 `
    -BackendPort 80 `
    -DisableOutboundSNAT `
    -Probe (Get-AzLoadBalancerProbeConfig -Name "myHealthProbe" -LoadBalancer $lb);

# Add outbound connectivity rule.
Add-AzLoadBalancerOutboundRuleConfig `
    -Name "outboundrule" `
    -LoadBalancer $lb `
    -AllocatedOutboundPort '10000' `
    -Protocol 'All' `
    -IdleTimeoutInMinutes '15' `
    -FrontendIpConfiguration $lb.FrontendIpConfigurations[0] `
    -BackendAddressPool $lb.BackendAddressPools[0];

# Update the load balancer configuration.
Set-AzLoadBalancer -LoadBalancer $lb;

# Create IP address configurations.
# Instances will require explicit outbound connectivity, for example
#   - NAT Gateway on the subnet (recommended)
#   - Instances in backend pool of Standard LB with outbound connectivity rules
#   - Public IP address on each instance
# See aka.ms/defaultoutboundaccess for more info.
$ipConfig = New-AzVmssIpConfig `
    -Name "myIPConfig" `
    -SubnetId $virtualNetwork.Subnets[0].Id `
    -LoadBalancerBackendAddressPoolsId $lb.BackendAddressPools[0].Id `
    -Primary;

# Create a config object.
# The Vmss config object stores the core information for creating a scale set.
$vmssConfig = New-AzVmssConfig `
    -Location $loc `
    -SkuCapacity $vmssInstanceCount `
    -SkuName $vmssSku `
    -OrchestrationMode 'Flexible' `
    -PlatformFaultDomainCount 1;

# Reference a virtual machine image from the gallery.
Set-AzVmssStorageProfile $vmssConfig `
    -OsDiskCreateOption "FromImage" `
    -ImageReferencePublisher "MicrosoftWindowsServer" `
    -ImageReferenceOffer "WindowsServer" `
    -ImageReferenceSku "2022-datacenter-azure-edition-core-smalldisk" `
    -ImageReferenceVersion "latest";

# Set up information for authenticating with the virtual machine.
Set-AzVmssOsProfile $vmssConfig `
    -AdminUsername $cred.UserName `
    -AdminPassword $cred.Password `
    -ComputerNamePrefix $vmNamePrefix `
    -WindowsConfigurationProvisionVMAgent $true `
    -WindowsConfigurationPatchMode "AutomaticByPlatform" `
    -EnableHotpatching;

# Attach the virtual network to the config object.
Add-AzVmssNetworkInterfaceConfiguration `
    -VirtualMachineScaleSet $vmssConfig `
    -Name "network-config" `
    -Primary $true `
    -IPConfiguration $ipConfig `
    -NetworkApiVersion '2020-11-01';

# Define the Application Health extension properties.
$publicConfig = @{"protocol" = "http"; "port" = 80; "requestPath" = "/healthEndpoint"};
$extensionName = "myHealthExtension";
$extensionType = "ApplicationHealthWindows";
$publisher = "Microsoft.ManagedServices";
# Add the Application Health extension to the scale set model.
Add-AzVmssExtension -VirtualMachineScaleSet $vmssConfig `
    -Name $extensionName `
    -Publisher $publisher `
    -Setting $publicConfig `
    -Type $extensionType `
    -TypeHandlerVersion "1.0" `
    -AutoUpgradeMinorVersion $True;

# Create the virtual machine scale set.
$vmss = New-AzVmss `
    -ResourceGroupName $rgname `
    -Name $vmssName `
    -VirtualMachineScaleSet $vmssConfig;

Ange operativsystemets profilegenskaper för en virtuell dator i flexibelt läge med Hotpatching aktiverat

Parametrar

-AdditionalUnattendContent

Anger ett obevakat innehållsobjekt. Du kan använda Add-AzVMAdditionalUnattendContent för att skapa objektet.

Parameteregenskaper

Typ:

AdditionalUnattendContent[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:8
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-AdminPassword

Anger administratörslösenordet som ska användas för alla virtuella datorinstanser i VMSS.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:3
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-AdminUsername

Anger namnet på administratörskontot som ska användas för alla virtuella datorinstanser i VMSS.
Begränsning:
Windows: Får inte innehålla specialtecken /""[]:|+=;,?*@& eller sluta i "".
Linux: Användarnamn får endast innehålla bokstäver, siffror, bindestreck och understreck och får inte börja med ett bindestreck eller tal.
Otillåtna värden: "administratör", "administratör", "användare", "användare1", "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".
Minsta längd: 1 tecken
Max-length: 20 tecken för Windows, 64 tecken för Linux
En lista över inbyggda systemanvändare i Linux som inte ska användas i det här fältet finns i Välj användarnamn för Linux på Azure.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:2
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-ComputerNamePrefix

Anger datornamnprefixet för alla virtuella datorinstanser i VMSS. Datornamnen måste vara mellan 1 och 15 tecken långa.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:1
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Confirm

Uppmanar dig att bekräfta innan du kör cmdleten.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:jfr

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-CustomData

Anger en base-64-kodad sträng med anpassade data. Detta avkodas till en binär matris som sparas som en fil på den virtuella datorn. Den maximala längden på den binära matrisen är 65535 byte.
Information om hur du använder cloud-init för din virtuella dator finns i Använda cloud-init för att anpassa en virtuell Linux-dator under skapandet.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:4
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-DefaultProfile

Autentiseringsuppgifter, konto, klientorganisation och prenumeration som används för kommunikation med Azure.

Parameteregenskaper

Typ:IAzureContextContainer
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:AzContext, AzureRmContext, AzureCredential

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-EnableHotpatching

Gör det möjligt för kunder att korrigera sina Azure virtuella datorer utan att behöva starta om. För enableHotpatching måste "provisionVMAgent" anges till true och "patchMode" måste anges till "AutomaticByPlatform".

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-LinuxConfigurationDisablePasswordAuthentication

Anger att den här cmdleten inaktiverar lösenordsautentisering.

Parameteregenskaper

Typ:

Nullable<T>[Boolean]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:10
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-LinuxConfigurationPatchMode

Anger läget för vm-gästkorrigering till virtuell IaaS-dator eller virtuella datorer som är associerade med VM-skalningsuppsättning med OrchestrationMode som flexibel.

Möjliga värden är:

ImageDefault – Den virtuella datorns standardkonfiguration för korrigering används.

AutomaticByPlatform – Den virtuella datorn uppdateras automatiskt av plattformen. Egenskapen provisionVMAgent måste vara sann

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-LinuxConfigurationProvisionVMAgent

Anger om den virtuella datoragenten ska etableras på den virtuella datorn.

När den här egenskapen inte anges i begärandetexten är standardbeteendet att ange den till true. Detta säkerställer att VM-agenten är installerad på den virtuella datorn så att tillägg kan läggas till i den virtuella datorn senare

Parameteregenskaper

Typ:

Nullable<T>[Boolean]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Listener

Anger Windows WinRM-lyssnare (Remote Management). Detta möjliggör fjärr-Windows PowerShell. Du kan använda cmdleten Add-AzVmssWinRMListener för att skapa lyssnaren.

Parameteregenskaper

Typ:

WinRMListener[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:9
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-PublicKey

Anger det offentliga SSH-nyckelobjektet (Secure Shell). Du kan använda cmdleten Add-AzVMSshPublicKey för att skapa objektet.

Parameteregenskaper

Typ:

SshPublicKey[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:11
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-Secret

Anger det hemlighetsobjekt som innehåller certifikatreferenserna som ska finnas på den virtuella datorn. Du kan använda cmdleten Add-AzVmssSecret för att skapa objektet secrets.

Parameteregenskaper

Typ:

VaultSecretGroup[]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:12
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-TimeZone

Anger tidszonen för den virtuella datorn. t.ex. "Pacific Standard Time".
Möjliga värden kan vara TimeZoneInfo.Id värde från tidszoner som returneras av TimeZoneInfo.GetSystemTimeZones.

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:7
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-VirtualMachineScaleSet

Anger VMSS-objektet. Du kan använda cmdleten New-AzVmssConfig för att skapa objektet.

Parameteregenskaper

Typ:PSVirtualMachineScaleSet
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:0
Obligatorisk:True
Värde från pipeline:True
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-WhatIf

Visar vad som skulle hända om kommandot körs. Cmdleten körs inte.

Parameteregenskaper

Typ:SwitchParameter
Standardvärde:None
Stöder jokertecken:False
DontShow:False
Alias:Wi

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:False
Värde från återstående argument:False

-WindowsConfigurationEnableAutomaticUpdate

Anger om de virtuella datorerna i VMSS är aktiverade för automatiska uppdateringar.

Parameteregenskaper

Typ:

Nullable<T>[Boolean]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:6
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-WindowsConfigurationPatchMode

Anger läget för vm-gästkorrigering till virtuell IaaS-dator eller virtuella datorer som är associerade med VM-skalningsuppsättning med OrchestrationMode som flexibel.

Möjliga värden är:

Manuell – Du styr tillämpningen av korrigeringar på en virtuell dator. Det gör du genom att tillämpa korrigeringar manuellt i den virtuella datorn. I det här läget inaktiveras automatiska uppdateringar. egenskapen WindowsConfiguration.enableAutomaticUpdates måste vara false

AutomaticByOS – Den virtuella datorn uppdateras automatiskt av operativsystemet. Egenskapen WindowsConfiguration.enableAutomaticUpdates måste vara sann.

AutomaticByPlatform – uppdateras den virtuella datorn automatiskt av plattformen. Egenskaperna provisionVMAgent och WindowsConfiguration.enableAutomaticUpdates måste vara sanna

Parameteregenskaper

Typ:String
Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:Named
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

-WindowsConfigurationProvisionVMAgent

Anger om agenten för virtuella datorer ska etableras på de virtuella datorerna i VMSS.

Parameteregenskaper

Typ:

Nullable<T>[Boolean]

Standardvärde:None
Stöder jokertecken:False
DontShow:False

Parameteruppsättningar

(All)
Position:5
Obligatorisk:False
Värde från pipeline:False
Värde från pipeline efter egenskapsnamn:True
Värde från återstående argument:False

CommonParameters

Den här cmdleten stöder vanliga parametrar: -Debug, -ErrorAction, -ErrorVariable, -InformationAction, -InformationVariable, -OutBuffer, -OutVariable, -PipelineVariable, -ProgressAction, -Verbose, -WarningAction och -WarningVariable. Mer information finns i about_CommonParameters.

Indata

PSVirtualMachineScaleSet

String

Nullable<T>

AdditionalUnattendContent

WinRMListener

SshPublicKey

VaultSecretGroup

Utdata

PSVirtualMachineScaleSet