Set-AzVmssOsProfile

Anger egenskaperna för VMSS-operativsystemets profil.

Anteckning

Det här är den tidigare versionen av vår dokumentation. Se den senaste versionen för uppdaterad information.

Syntax

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 operativsystemets profilegenskaper för $vmss-objektet. Kommandot anger datornamnsprefixet för alla virtuella datorinstanser i VMSS till Testa och anger administratörens användarnamn och lösenord.

Exempel 2: Ange operativsystemets profilegenskaper för en vmss 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 = "<Password>" | ConvertTo-SecureString -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;

Parametrar

-AdditionalUnattendContent

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

Type:AdditionalUnattendContent[]
Position:8
Default value:None
Accept pipeline input:True
Accept wildcard characters:False
-AdminPassword

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

Type:String
Position:3
Default value:None
Accept pipeline input:True
Accept wildcard characters:False
-AdminUsername

Anger namnet på administratörskontot som ska användas för alla virtuella datorinstanser i VMSS.
Begränsning endast för Windows: Det går inte att sluta med ".".
Otillåtna värden: "administrator", "admin", "user", "user1", "test", "user2", "test1", "user3", "admin1", "1", "123", "a", "actuser", "adm", "admin2", "aspnet", "backup", "console", "david", "guest", "john", "owner", "root", "server", "sql", "support", "support_388945a0", "sys", "test2", "test3", "user4", "user5".
Minsta längd (Linux): 1 tecken
Maxlängd (Linux): 64 tecken
Maxlängd (Windows): 20 tecken

  • En lista över inbyggda systemanvändare i Linux som inte ska användas i det här fältet finns i [Välja användarnamn för Linux på Azure](https://docs.microsoft.com/azure/devops/organizations/settings/naming-restrictions).
    Type:String
    Position:2
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters:False
  • -ComputerNamePrefix

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

    Type:String
    Position:1
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters:False
    -Confirm

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

    Type:SwitchParameter
    Aliases:cf
    Position:Named
    Default value:None
    Accept pipeline input:False
    Accept wildcard characters: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 för 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.

    Type:String
    Position:4
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters:False
    -DefaultProfile

    Autentiseringsuppgifterna, kontot, klientorganisationen och prenumerationen som används för kommunikation med Azure.

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

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

    Type:SwitchParameter
    Position:Named
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters:False
    -LinuxConfigurationDisablePasswordAuthentication

    Anger att denna cmdlet inaktiverar lösenordsautentisering.

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

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

    Möjliga värden:

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

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

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

    Anger om agenten för virtuella datorer ska etableras på den virtuella datorn.

    Om den här egenskapen inte anges i begärandetexten är standardbeteendet att ställa in den på 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

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

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

    Type:WinRMListener[]
    Position:9
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters:False
    -PublicKey

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

    Type:SshPublicKey[]
    Position:11
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters: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 hemlighetsobjektet.

    Type:VaultSecretGroup[]
    Position:12
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters: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.

    Type:String
    Position:7
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters:False
    -VirtualMachineScaleSet

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

    Type:PSVirtualMachineScaleSet
    Position:0
    Default value:None
    Accept pipeline input:True
    Accept wildcard characters:False
    -WhatIf

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

    Type:SwitchParameter
    Aliases:wi
    Position:Named
    Default value:None
    Accept pipeline input:False
    Accept wildcard characters:False
    -WindowsConfigurationEnableAutomaticUpdate

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

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

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

    Möjliga värden:

    Manuell – Du styr tillämpningen av korrigeringar på en virtuell dator. Det gör du genom att tillämpa korrigeringar manuellt på 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 – den virtuella datorn uppdateras automatiskt av plattformen. Egenskaperna provisionVMAgent och WindowsConfiguration.enableAutomaticUpdates måste vara sanna

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

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

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

    Indata

    PSVirtualMachineScaleSet

    String

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

    AdditionalUnattendContent[]

    WinRMListener[]

    SshPublicKey[]

    VaultSecretGroup[]

    Utdata

    PSVirtualMachineScaleSet