Set-AzVMOperatingSystem

Ustawia właściwości systemu operacyjnego podczas tworzenia nowej maszyny wirtualnej lub aktualizowania maszyny wirtualnej.

Składnia

Set-AzVMOperatingSystem
   [-VM] <PSVirtualMachine>
   [-Windows]
   [[-ComputerName] <String>]
   [[-Credential] <PSCredential>]
   [[-CustomData] <String>]
   [-ProvisionVMAgent]
   [-EnableAutoUpdate]
   [[-TimeZone] <String>]
   [-WinRMHttp]
   [-PatchMode <String>]
   [-EnableHotpatching]
   [-AssessmentMode <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzVMOperatingSystem
   [-VM] <PSVirtualMachine>
   [-Windows]
   [[-ComputerName] <String>]
   [[-Credential] <PSCredential>]
   [[-CustomData] <String>]
   [-ProvisionVMAgent]
   [-EnableAutoUpdate]
   [[-TimeZone] <String>]
   [-WinRMHttp]
   [-WinRMHttps]
   [-WinRMCertificateUrl] <Uri>
   [-PatchMode <String>]
   [-EnableHotpatching]
   [-AssessmentMode <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzVMOperatingSystem
   [-VM] <PSVirtualMachine>
   [-Windows]
   [[-ComputerName] <String>]
   [[-Credential] <PSCredential>]
   [[-CustomData] <String>]
   [-DisableVMAgent]
   [-EnableAutoUpdate]
   [[-TimeZone] <String>]
   [-WinRMHttp]
   [-PatchMode <String>]
   [-EnableHotpatching]
   [-AssessmentMode <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzVMOperatingSystem
   [-VM] <PSVirtualMachine>
   [-Windows]
   [[-ComputerName] <String>]
   [[-Credential] <PSCredential>]
   [[-CustomData] <String>]
   [-DisableVMAgent]
   [-EnableAutoUpdate]
   [[-TimeZone] <String>]
   [-WinRMHttp]
   [-WinRMHttps]
   [-WinRMCertificateUrl] <Uri>
   [-PatchMode <String>]
   [-EnableHotpatching]
   [-AssessmentMode <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]
Set-AzVMOperatingSystem
   [-VM] <PSVirtualMachine>
   [-Linux]
   [[-ComputerName] <String>]
   [[-Credential] <PSCredential>]
   [[-CustomData] <String>]
   [-PatchMode <String>]
   [-DisablePasswordAuthentication]
   [-AssessmentMode <String>]
   [-DefaultProfile <IAzureContextContainer>]
   [<CommonParameters>]

Opis

Polecenie cmdlet Set-AzVMOperatingSystem ustawia właściwości systemu operacyjnego podczas tworzenia nowej maszyny wirtualnej. Można określić poświadczenia logowania, nazwę komputera i typ systemu operacyjnego.

Przykłady

Przykład 1. Ustawianie właściwości systemu operacyjnego dla nowej maszyny wirtualnej

$SecurePassword = ConvertTo-SecureString "Password" -AsPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential ("FullerP", $SecurePassword); 
$AvailabilitySet = Get-AzAvailabilitySet -ResourceGroupName "ResourceGroup11" -Name "AvailabilitySet03" 
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1" -AvailabilitySetID $AvailabilitySet.Id
$ComputerName = "ContosoVM122"
$WinRMCertUrl = "http://keyVaultName.vault.azure.net/secrets/secretName/secretVersion"
$TimeZone = "Pacific Standard Time"
$CustomData = "echo 'Hello World'"
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -CustomData $CustomData -WinRMHttp -WinRMHttps -WinRMCertificateUrl $WinRMCertUrl -ProvisionVMAgent -EnableAutoUpdate -TimeZone $TimeZone -PatchMode "AutomaticByPlatform"

Pierwsze polecenie konwertuje hasło na bezpieczny ciąg, a następnie zapisuje je w zmiennej $SecurePassword. Aby uzyskać więcej informacji, wpisz Get-Help ConvertTo-SecureString. Drugie polecenie tworzy poświadczenia dla użytkownika FullerP i hasło przechowywane w $SecurePassword, a następnie przechowuje poświadczenia w zmiennej $Credential. Aby uzyskać więcej informacji, wpisz Get-Help New-Object. Trzecie polecenie pobiera zestaw dostępności o nazwie AvailabilitySet03 w grupie zasobów o nazwie ResourceGroup11, a następnie przechowuje ten obiekt w zmiennej $AvailabilitySet. Czwarte polecenie tworzy obiekt maszyny wirtualnej, a następnie przechowuje go w zmiennej $VirtualMachine. Polecenie przypisuje nazwę i rozmiar do maszyny wirtualnej. Maszyna wirtualna należy do zestawu dostępności przechowywanego w $AvailabilitySet. Następne cztery polecenia przypisują wartości do zmiennych do użycia w poniższym poleceniu. Ponieważ te ciągi można określić bezpośrednio w poleceniu Set-AzVMOperatingSystem , to podejście jest używane tylko do czytelności. Można jednak użyć takiego podejścia w skryptach. Ostatnie polecenie ustawia właściwości systemu operacyjnego dla maszyny wirtualnej przechowywanej w $VirtualMachine. Polecenie używa poświadczeń przechowywanych w $Credential. Polecenie używa zmiennych przypisanych w poprzednich poleceniach dla niektórych parametrów.

Przykład 2. Ustawianie właściwości systemu operacyjnego dla nowej maszyny wirtualnej z włączonym stosowaniem poprawek na gorąco

$SecurePassword = ConvertTo-SecureString "Password" -AsPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential ("FullerP", $SecurePassword); 
$AvailabilitySet = Get-AzAvailabilitySet -ResourceGroupName "ResourceGroup11" -Name "AvailabilitySet03" 
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1" -AvailabilitySetID $AvailabilitySet.Id
$ComputerName = "ContosoVM122"
$WinRMCertUrl = "http://keyVaultName.vault.azure.net/secrets/secretName/secretVersion"
$TimeZone = "Pacific Standard Time"
$CustomData = "echo 'Hello World'"
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Windows -ComputerName $ComputerName -Credential $Credential -CustomData $CustomData -WinRMHttp -WinRMHttps -WinRMCertificateUrl $WinRMCertUrl -ProvisionVMAgent -EnableAutoUpdate -TimeZone $TimeZone -PatchMode "AutomaticByPlatform" -EnableHotPatching

Pierwsze polecenie konwertuje hasło na bezpieczny ciąg, a następnie zapisuje je w zmiennej $SecurePassword. Aby uzyskać więcej informacji, wpisz Get-Help ConvertTo-SecureString. Drugie polecenie tworzy poświadczenia dla użytkownika FullerP i hasło przechowywane w $SecurePassword, a następnie przechowuje poświadczenia w zmiennej $Credential. Aby uzyskać więcej informacji, wpisz Get-Help New-Object. Trzecie polecenie pobiera zestaw dostępności o nazwie AvailabilitySet03 w grupie zasobów o nazwie ResourceGroup11, a następnie przechowuje ten obiekt w zmiennej $AvailabilitySet. Czwarte polecenie tworzy obiekt maszyny wirtualnej, a następnie przechowuje go w zmiennej $VirtualMachine. Polecenie przypisuje nazwę i rozmiar do maszyny wirtualnej. Maszyna wirtualna należy do zestawu dostępności przechowywanego w $AvailabilitySet. Następne cztery polecenia przypisują wartości do zmiennych do użycia w poniższym poleceniu. Ponieważ te ciągi można określić bezpośrednio w poleceniu Set-AzVMOperatingSystem , to podejście jest używane tylko do czytelności. Można jednak użyć takiego podejścia w skryptach. Ostatnie polecenie ustawia właściwości systemu operacyjnego dla maszyny wirtualnej przechowywanej w $VirtualMachine. Polecenie używa poświadczeń przechowywanych w $Credential. Polecenie używa zmiennych przypisanych w poprzednich poleceniach dla niektórych parametrów. Polecenie włącza funkcję Hotpatching na maszynie wirtualnej.

Przykład 3. Ustawianie właściwości systemu operacyjnego dla nowej maszyny wirtualnej z systemem Linux

$SecurePassword = ConvertTo-SecureString "Password" -AsPlainText -Force
$Credential = New-Object System.Management.Automation.PSCredential ("FullerP", $SecurePassword); 
$AvailabilitySet = Get-AzAvailabilitySet -ResourceGroupName "ResourceGroup11" -Name "AvailabilitySet03" 
$VirtualMachine = New-AzVMConfig -VMName "VirtualMachine07" -VMSize "Standard_A1" -AvailabilitySetID $AvailabilitySet.Id
$ComputerName = "ContosoVM122"
$CustomData = "echo 'Hello World'"
$VirtualMachine = Set-AzVMOperatingSystem -VM $VirtualMachine -Linux -ComputerName $ComputerName -Credential $Credential -CustomData $CustomData -PatchMode "AutomaticByPlatform"

Pierwsze polecenie konwertuje hasło na bezpieczny ciąg, a następnie zapisuje je w zmiennej $SecurePassword. Aby uzyskać więcej informacji, wpisz Get-Help ConvertTo-SecureString. Drugie polecenie tworzy poświadczenia dla użytkownika FullerP i hasło przechowywane w $SecurePassword, a następnie przechowuje poświadczenia w zmiennej $Credential. Aby uzyskać więcej informacji, wpisz Get-Help New-Object. Trzecie polecenie pobiera zestaw dostępności o nazwie AvailabilitySet03 w grupie zasobów o nazwie ResourceGroup11, a następnie przechowuje ten obiekt w zmiennej $AvailabilitySet. Czwarte polecenie tworzy obiekt maszyny wirtualnej, a następnie przechowuje go w zmiennej $VirtualMachine. Polecenie przypisuje nazwę i rozmiar do maszyny wirtualnej. Maszyna wirtualna należy do zestawu dostępności przechowywanego w $AvailabilitySet. Następne dwa polecenia przypisują wartości do zmiennych do użycia w poniższym poleceniu. Ostatnie polecenie ustawia właściwości systemu operacyjnego dla maszyny wirtualnej przechowywanej w $VirtualMachine. Polecenie używa poświadczeń przechowywanych w $Credential. Polecenie używa zmiennych przypisanych w poprzednich poleceniach dla niektórych parametrów. Polecenie ustawia wartość trybu poprawki na maszynie wirtualnej na wartość "AutomaticByPlatform".

Parametry

-AssessmentMode

Wartość trybu oceny automatycznej dla maszyny wirtualnej. Możliwe wartości to ImageDefault i AutomaticByPlatform.

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

-ComputerName

Określa nazwę komputera.

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

-Credential

Określa nazwę użytkownika i hasło dla maszyny wirtualnej jako obiekt PSCredential . Aby uzyskać poświadczenia, użyj polecenia cmdlet Get-Credential. Aby uzyskać więcej informacji, wpisz Get-Help Get-Credential.

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

-CustomData

Określa ciąg, który ma zostać przekazany do maszyny wirtualnej. Aby uzyskać więcej informacji, zobacz Custom Data on Azure VMs (Dane niestandardowe na maszynach wirtualnych platformy Azure). Uwaga: nie zaleca się przechowywania poufnych informacji w danych niestandardowych.

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

-DefaultProfile

Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.

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

-DisablePasswordAuthentication

Wskazuje, że to polecenie cmdlet wyłącza uwierzytelnianie haseł.

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

-DisableVMAgent

Wyłącz aprowizację agenta maszyny wirtualnej.

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

-EnableAutoUpdate

Wskazuje, że to polecenie cmdlet włącza automatyczną aktualizację.

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

-EnableHotpatching

Umożliwia klientom stosowanie poprawek maszyn wirtualnych platformy Azure bez konieczności ponownego uruchamiania. W przypadku funkcji enableHotpatching parametr "provisionVMAgent" musi być ustawiony na wartość true, a parametr "patchMode" musi być ustawiony na wartość "AutomaticByPlatform".

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

-Linux

Wskazuje, że typ systemu operacyjnego to Linux.

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

-PatchMode

Określa tryb stosowania poprawek gościa do maszyny wirtualnej IaaS.

Dopuszczalne wartości:
AutomaticByPlatform — instalacja poprawek dla maszyny wirtualnej będzie zarządzana przez platformę Azure. Użyj z -Windows lub -Linux. Wymaga -ProvisionVMAgent. Wymaga -EnableAutoUpdate w przypadku użycia z -Windows.
AutomaticByOS — instalacja poprawek dla maszyny wirtualnej będzie zarządzana przez system operacyjny. Użyj z -Windows. Wymaga -ProvisionVMAgent i -EnableAutoUpdate.
Ręczne — kontrolujesz stosowanie poprawek do maszyny wirtualnej. Użyj z -Windows. Wymaga -ProvisionVMAgent.
ImageDefault — instalacja poprawek zarządzana przez ustawienia domyślne na obrazie systemu operacyjnego. Użyj z -Linux.

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

-ProvisionVMAgent

Wskazuje, że ustawienia wymagają zainstalowania agenta maszyny wirtualnej na maszynie wirtualnej.

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

-TimeZone

Określa strefę czasową maszyny wirtualnej. np. "Pacyfik (czas standardowy).
Możliwe wartości mogą być TimeZoneInfo.Id wartości ze stref czasowych zwracanych przez timeZoneInfo.GetSystemTimeZones.

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

-VM

Określa lokalny obiekt maszyny wirtualnej, na którym mają być ustawiane właściwości systemu operacyjnego. Aby uzyskać obiekt maszyny wirtualnej, użyj polecenia cmdlet Get-AzVM. Utwórz obiekt maszyny wirtualnej przy użyciu polecenia cmdlet New-AzVMConfig.

Type:PSVirtualMachine
Aliases:VMProfile
Position:0
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-Windows

Wskazuje, że typ systemu operacyjnego to Windows.

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

-WinRMCertificateUrl

Określa identyfikator URI certyfikatu usługi WinRM. Musi to być przechowywane w usłudze Key Vault.

Type:Uri
Position:10
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-WinRMHttp

Wskazuje, że ten system operacyjny używa protokołu HTTP WinRM.

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

-WinRMHttps

Wskazuje, że ten system operacyjny korzysta z usługi WinRM HTTPS.

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

Dane wejściowe

PSVirtualMachine

SwitchParameter

String

PSCredential

Uri

Dane wyjściowe

PSVirtualMachine