Set-AzVmssOsProfile
VMSS işletim sistemi profili özelliklerini ayarlar.
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
Set-AzVmssOsProfile cmdlet'i, Sanal Makine Ölçek Kümesi işletim sistemi profili özelliklerini ayarlar.
Örnekler
Örnek 1: VMSS için işletim sistemi profili özelliklerini ayarlama
$vmss = New-AzVmssConfig -Location $Loc -SkuCapacity 2 -SkuName "Standard_A0" -UpgradePolicyMode "Automatic" -NetworkInterfaceConfiguration $NetCfg
Set-AzVmssOsProfile -VirtualMachineScaleSet $vmss -ComputerNamePrefix "Test" -AdminUsername $AdminUsername -AdminPassword $AdminPassword
Bu komut, $vmss nesnesi için işletim sistemi profili özelliklerini ayarlar. komutu, VMSS'deki tüm sanal makine örnekleri için bilgisayar adı ön ekini Test olarak ayarlar ve yönetici kullanıcı adını ve parolasını sağlar.
Örnek 2: Vmss'nin işletim sistemi profili özelliklerini Çalışırken Düzeltme Eki etkinleştirilmiş esnek modda ayarlayın.
# 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;
Vmss için işletim sistemi profili özelliklerini Esnek modda, Çalışırken Düzeltme Eki etkinleştirilmiş olarak ayarlama
Parametreler
-AdditionalUnattendContent
Katılımsız içerik nesnesini belirtir. Nesneyi oluşturmak için Add-AzVMAdditionalUnattendContent kullanabilirsiniz.
Tür: | AdditionalUnattendContent[] |
Position: | 8 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-AdminPassword
VMSS'deki tüm sanal makine örnekleri için kullanılacak yönetici parolasını belirtir.
Tür: | String |
Position: | 3 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-AdminUsername
VMSS'deki tüm sanal makine örnekleri için kullanılacak yönetici hesabı adını belirtir.
Kısıtlama:
Windows: Özel karakterler içeremez /""[]:|<>+=;,?*@& veya "." ile bitirin.
Linux: Kullanıcı adı yalnızca harf, sayı, kısa çizgi ve alt çizgi içermelidir ve kısa çizgi veya sayıyla başlanmayabilir.
İzin verilmeyen değerler: "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".
En az uzunluk: 1 karakter
Maksimum uzunluk: Windows için 20 karakter, Linux için 64 karakter
Linux'ta bu alanda kullanılmaması gereken yerleşik sistem kullanıcılarının listesi için bkz . Azure'da Linux için Kullanıcı Adlarını Seçme.
Tür: | String |
Position: | 2 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ComputerNamePrefix
VMSS'deki tüm sanal makine örnekleri için bilgisayar adı ön ekini belirtir. Bilgisayar adları 1 ile 15 karakter uzunluğunda olmalıdır.
Tür: | String |
Position: | 1 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Confirm
Cmdlet'i çalıştırmadan önce sizden onay ister.
Tür: | SwitchParameter |
Aliases: | cf |
Position: | Named |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CustomData
Özel verilerin 64 tabanında kodlanmış dizesini belirtir.
Bu kod, sanal makinede dosya olarak kaydedilen bir ikili diziyle çözülecek.
İkili dizinin uzunluk üst sınırı 65535 bayttır.
VM'niz için cloud-init kullanmak için bkz . Oluşturma sırasında Linux VM'sini özelleştirmek için cloud-init kullanma.
Tür: | String |
Position: | 4 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-DefaultProfile
Azure ile iletişim için kullanılan kimlik bilgileri, hesap, kiracı ve abonelik.
Tür: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableHotpatching
Müşterilerin yeniden başlatma gerektirmeden Azure Vmss'lerine düzeltme eki uygulamalarına olanak tanır. enableHotpatching için 'provisionVMAgent' true ve 'patchMode' değeri 'AutomaticByPlatform' olarak ayarlanmalıdır.
Tür: | SwitchParameter |
Position: | Named |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LinuxConfigurationDisablePasswordAuthentication
Bu cmdlet'in parola kimlik doğrulamasını devre dışı bırakdığını gösterir.
Tür: | Nullable<T>[Boolean] |
Position: | 10 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LinuxConfigurationPatchMode
IaaS sanal makinesine veya OrchestrationMode ile sanal makine ölçek kümesiyle ilişkilendirilmiş sanal makinelere VM Konuk Düzeltme Eki Uygulama modunu Esnek olarak belirtir.
Olası değerler şunlardır:
ImageDefault - Sanal makinenin varsayılan düzeltme eki uygulama yapılandırması kullanılır.
AutomaticByPlatform - Sanal makine platform tarafından otomatik olarak güncelleştirilir. provisionVMAgent özelliği true olmalıdır
Tür: | String |
Position: | Named |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-LinuxConfigurationProvisionVMAgent
Sanal makine aracısının sanal makinede sağlanıp sağlanmayacağını gösterir.
Bu özellik istek gövdesinde belirtilmediğinde, varsayılan davranış bunu true olarak ayarlamaktır. Bu, VM'ye uzantıların daha sonra eklenebilmesi için VM'ye VM Aracısı'nın yüklenmesini sağlar
Tür: | Nullable<T>[Boolean] |
Position: | Named |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Listener
Windows Uzaktan Yönetimi (WinRM) dinleyicilerini belirtir. Bu, uzak Windows PowerShell'i etkinleştirir. Dinleyiciyi oluşturmak için Add-AzVmssWinRMListener cmdlet'ini kullanabilirsiniz.
Tür: | WinRMListener[] |
Position: | 9 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-PublicKey
Secure Shell (SSH) ortak anahtar nesnesini belirtir. Nesneyi oluşturmak için Add-AzVMSshPublicKey cmdlet'ini kullanabilirsiniz.
Tür: | SshPublicKey[] |
Position: | 11 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Secret
Sanal makineye yerleştirecek sertifika başvurularını içeren gizli dizi nesnesini belirtir. Gizli dizi nesnesini oluşturmak için Add-AzVmssSecret cmdlet'ini kullanabilirsiniz.
Tür: | VaultSecretGroup[] |
Position: | 12 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-TimeZone
Sanal makinenin saat dilimini belirtir. Örneğin, "Pasifik Standart Saati".
Olası değerler TimeZoneInfo.GetSystemTimeZones tarafından döndürülen saat dilimlerinden TimeZoneInfo.Id değer olabilir.
Tür: | String |
Position: | 7 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-VirtualMachineScaleSet
VMSS nesnesini belirtir. Nesneyi oluşturmak için New-AzVmssConfig cmdlet'ini kullanabilirsiniz.
Tür: | PSVirtualMachineScaleSet |
Position: | 0 |
varsayılan değer: | None |
Gerekli: | True |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WhatIf
Cmdlet çalıştırılıyorsa ne olacağını gösterir. Cmdlet çalıştırılmaz.
Tür: | SwitchParameter |
Aliases: | wi |
Position: | Named |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WindowsConfigurationEnableAutomaticUpdate
VMSS'deki sanal makinelerin otomatik güncelleştirmeler için etkinleştirilip etkinleştirilmediğini gösterir.
Tür: | Nullable<T>[Boolean] |
Position: | 6 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WindowsConfigurationPatchMode
IaaS sanal makinesine veya OrchestrationMode ile sanal makine ölçek kümesiyle ilişkilendirilmiş sanal makinelere VM Konuk Düzeltme Eki Uygulama modunu Esnek olarak belirtir.
Olası değerler şunlardır:
El ile - Bir sanal makineye düzeltme eki uygulanmasını denetlersiniz. Bunu yapmak için VM'nin içine el ile düzeltme eki uygularsınız. Bu modda otomatik güncelleştirmeler devre dışı bırakılır; WindowsConfiguration.enableAutomatic Güncelleştirmeler özelliği false olmalıdır
AutomaticByOS - Sanal makine işletim sistemi tarafından otomatik olarak güncelleştirilir. WindowsConfiguration.enableAutomatic Güncelleştirmeler özelliği true olmalıdır.
AutomaticByPlatform - Sanal makine platform tarafından otomatik olarak güncelleştirilir. provisionVMAgent ve WindowsConfiguration.enableAutomatic Güncelleştirmeler özellikleri doğru olmalıdır
Tür: | String |
Position: | Named |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-WindowsConfigurationProvisionVMAgent
Sanal makine aracısının VMSS'deki sanal makinelerde sağlanıp sağlanmayacağını gösterir.
Tür: | Nullable<T>[Boolean] |
Position: | 5 |
varsayılan değer: | None |
Gerekli: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
Girişler
Nullable<T>[[System.Boolean, System.Private.CoreLib, Version=4.0.0.0, Culture=neutral, PublicKeyToken=7cec85d7bea7798e]]