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.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ComputerName
Określa nazwę komputera.
Typ: | String |
Position: | 2 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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
.
Typ: | PSCredential |
Position: | 3 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String |
Position: | 4 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-DefaultProfile
Poświadczenia, konto, dzierżawa i subskrypcja używane do komunikacji z platformą Azure.
Typ: | IAzureContextContainer |
Aliasy: | AzContext, AzureRmContext, AzureCredential |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-DisablePasswordAuthentication
Wskazuje, że to polecenie cmdlet wyłącza uwierzytelnianie haseł.
Typ: | SwitchParameter |
Position: | 5 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-DisableVMAgent
Wyłącz aprowizację agenta maszyny wirtualnej.
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | False |
Akceptowanie symboli wieloznacznych: | False |
-EnableAutoUpdate
Wskazuje, że to polecenie cmdlet włącza automatyczną aktualizację.
Typ: | SwitchParameter |
Position: | 6 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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".
Typ: | SwitchParameter |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Linux
Wskazuje, że typ systemu operacyjnego to Linux.
Typ: | SwitchParameter |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String |
Position: | Named |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-ProvisionVMAgent
Wskazuje, że ustawienia wymagają zainstalowania agenta maszyny wirtualnej na maszynie wirtualnej.
Typ: | SwitchParameter |
Position: | 5 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | String |
Position: | 7 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | 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.
Typ: | PSVirtualMachine |
Aliasy: | VMProfile |
Position: | 0 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-Windows
Wskazuje, że typ systemu operacyjnego to Windows.
Typ: | SwitchParameter |
Position: | 1 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-WinRMCertificateUrl
Określa identyfikator URI certyfikatu usługi WinRM. Musi to być przechowywane w usłudze Key Vault.
Typ: | Uri |
Position: | 10 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-WinRMHttp
Wskazuje, że ten system operacyjny używa protokołu HTTP WinRM.
Typ: | SwitchParameter |
Position: | 8 |
Domyślna wartość: | None |
Wymagane: | False |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |
-WinRMHttps
Wskazuje, że ten system operacyjny korzysta z usługi WinRM HTTPS.
Typ: | SwitchParameter |
Position: | 9 |
Domyślna wartość: | None |
Wymagane: | True |
Akceptowanie danych wejściowych potoku: | True |
Akceptowanie symboli wieloznacznych: | False |