Set-AzVMOperatingSystem
Define as propriedades do sistema operacional durante a criação de uma nova máquina virtual ou a atualização de uma máquina virtual.
Sintaxe
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>]
Description
O cmdlet Set-AzVMOperatingSystem define as propriedades do sistema operacional durante a criação de uma nova máquina virtual. Você pode especificar credenciais de logon, nome do computador e tipo de sistema operacional.
Exemplos
Exemplo 1: Definir propriedades do sistema operacional para uma nova máquina virtual
$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"
O primeiro comando converte uma senha em uma string segura e, em seguida, armazena-a na variável $SecurePassword.
Para obter mais informações, digite Get-Help ConvertTo-SecureString
.
O segundo comando cria uma credencial para o usuário FullerP e a senha armazenada no $SecurePassword e, em seguida, armazena a credencial na variável $Credential.
Para obter mais informações, digite Get-Help New-Object
.
O terceiro comando obtém o conjunto de disponibilidade chamado AvailabilitySet03 no grupo de recursos chamado ResourceGroup11 e, em seguida, armazena esse objeto na variável $AvailabilitySet.
O quarto comando cria um objeto de máquina virtual e o armazena na variável $VirtualMachine.
O comando atribui um nome e tamanho à máquina virtual.
A máquina virtual pertence ao conjunto de disponibilidade armazenado no $AvailabilitySet.
Os próximos quatro comandos atribuem valores a variáveis a serem usadas no comando a seguir.
Como você pode especificar essas cadeias de caracteres diretamente no comando Set-AzVMOperatingSystem , essa abordagem é usada apenas para legibilidade.
No entanto, você pode usar uma abordagem como essa em scripts.
O comando final define as propriedades do sistema operacional para a máquina virtual armazenada no $VirtualMachine.
O comando usa as credenciais armazenadas no $Credential.
O comando usa variáveis atribuídas em comandos anteriores para alguns parâmetros.
Exemplo 2: Definir propriedades do sistema operacional para uma nova máquina virtual com hot patching habilitado
$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
O primeiro comando converte uma senha em uma string segura e, em seguida, armazena-a na variável $SecurePassword.
Para obter mais informações, digite Get-Help ConvertTo-SecureString
.
O segundo comando cria uma credencial para o usuário FullerP e a senha armazenada no $SecurePassword e, em seguida, armazena a credencial na variável $Credential.
Para obter mais informações, digite Get-Help New-Object
.
O terceiro comando obtém o conjunto de disponibilidade chamado AvailabilitySet03 no grupo de recursos chamado ResourceGroup11 e, em seguida, armazena esse objeto na variável $AvailabilitySet.
O quarto comando cria um objeto de máquina virtual e o armazena na variável $VirtualMachine.
O comando atribui um nome e tamanho à máquina virtual.
A máquina virtual pertence ao conjunto de disponibilidade armazenado no $AvailabilitySet.
Os próximos quatro comandos atribuem valores a variáveis a serem usadas no comando a seguir.
Como você pode especificar essas cadeias de caracteres diretamente no comando Set-AzVMOperatingSystem , essa abordagem é usada apenas para legibilidade.
No entanto, você pode usar uma abordagem como essa em scripts.
O comando final define as propriedades do sistema operacional para a máquina virtual armazenada no $VirtualMachine.
O comando usa as credenciais armazenadas no $Credential.
O comando usa variáveis atribuídas em comandos anteriores para alguns parâmetros.
O comando habilita o Hotpatching na máquina virtual.
Exemplo 3: Definir propriedades do sistema operacional para uma nova máquina virtual 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"
O primeiro comando converte uma senha em uma string segura e, em seguida, armazena-a na variável $SecurePassword.
Para obter mais informações, digite Get-Help ConvertTo-SecureString
.
O segundo comando cria uma credencial para o usuário FullerP e a senha armazenada no $SecurePassword e, em seguida, armazena a credencial na variável $Credential.
Para obter mais informações, digite Get-Help New-Object
.
O terceiro comando obtém o conjunto de disponibilidade chamado AvailabilitySet03 no grupo de recursos chamado ResourceGroup11 e, em seguida, armazena esse objeto na variável $AvailabilitySet.
O quarto comando cria um objeto de máquina virtual e o armazena na variável $VirtualMachine.
O comando atribui um nome e tamanho à máquina virtual.
A máquina virtual pertence ao conjunto de disponibilidade armazenado no $AvailabilitySet.
Os próximos dois comandos atribuem valores a variáveis a serem usadas no comando a seguir.
O comando final define as propriedades do sistema operacional para a máquina virtual armazenada no $VirtualMachine.
O comando usa as credenciais armazenadas no $Credential.
O comando usa variáveis atribuídas em comandos anteriores para alguns parâmetros.
O comando define o valor do modo de patch na máquina virtual como "AutomaticByPlatform".
Parâmetros
-AssessmentMode
Valor do modo de avaliação automática para a máquina virtual. Os valores possíveis são ImageDefault e AutomaticByPlatform.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-ComputerName
Especifica o nome do computador.
Tipo: | String |
Cargo: | 2 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Credential
Especifica o nome de usuário e a senha da máquina virtual como um objeto PSCredential .
Para obter uma credencial, use o cmdlet Get-Credential.
Para obter mais informações, digite Get-Help Get-Credential
.
Tipo: | PSCredential |
Cargo: | 3 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-CustomData
Especifica uma cadeia de caracteres a ser passada para a máquina virtual. Para obter mais informações, consulte Dados personalizados em VMs do Azure. Observação: não é recomendável armazenar informações confidenciais em dados personalizados.
Tipo: | String |
Cargo: | 4 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-DefaultProfile
As credenciais, a conta, o locatário e a assinatura usados para comunicação com o Azure.
Tipo: | IAzureContextContainer |
Aliases: | AzContext, AzureRmContext, AzureCredential |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-DisablePasswordAuthentication
Indica que esse cmdlet desabilita a autenticação de senha.
Tipo: | SwitchParameter |
Cargo: | 5 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-DisableVMAgent
Desative o Agente de VM de Provisionamento.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | False |
Aceitar caracteres curinga: | False |
-EnableAutoUpdate
Indica que esse cmdlet habilita a atualização automática.
Tipo: | SwitchParameter |
Cargo: | 6 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-EnableHotpatching
Permite que os clientes corrijam suas VMs do Azure sem exigir uma reinicialização. Para enableHotpatching, o 'provisionVMAgent' deve ser definido como true e 'patchMode' deve ser definido como 'AutomaticByPlatform'.
Tipo: | SwitchParameter |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Linux
Indica que o tipo de sistema operacional é Linux.
Tipo: | SwitchParameter |
Cargo: | 1 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-PatchMode
Especifica o modo de aplicação de patch no convidado para a máquina virtual IaaS.
Os valores possíveis são:
AutomaticByPlatform – a instalação do patch para a máquina virtual será gerenciada pelo Azure. Use com -Windows ou -Linux. Requer -ProvisionVMAgent. Requer -EnableAutoUpdate quando usado com -Windows.
AutomaticByOS - A instalação do patch para a máquina virtual será gerenciada pelo sistema operacional. Use com -Windows. Requer -ProvisionVMAgent e -EnableAutoUpdate.
Manual - Você controla a aplicação de patches em uma máquina virtual. Use com -Windows. Requer -ProvisionVMAgent.
ImageDefault - Instalação de patch gerenciada pelas configurações padrão na imagem do sistema operacional. Use com -Linux.
Tipo: | String |
Cargo: | Named |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-ProvisionVMAgent
Indica que as configurações exigem que o agente da máquina virtual seja instalado na máquina virtual.
Tipo: | SwitchParameter |
Cargo: | 5 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-TimeZone
Especifica o fuso horário da máquina virtual. por exemplo, "Horário Padrão do Pacífico".
Os valores possíveis podem ser TimeZoneInfo.Id valor de fusos horários retornados por TimeZoneInfo.GetSystemTimeZones.
Tipo: | String |
Cargo: | 7 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-VM
Especifica o objeto de máquina virtual local no qual definir as propriedades do sistema operacional. Para obter um objeto de máquina virtual, use o cmdlet Get-AzVM. Crie um objeto de máquina virtual usando o cmdlet New-AzVMConfig.
Tipo: | PSVirtualMachine |
Aliases: | VMProfile |
Cargo: | 0 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-Windows
Indica que o tipo de sistema operacional é Windows.
Tipo: | SwitchParameter |
Cargo: | 1 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-WinRMCertificateUrl
Especifica o URI de um certificado WinRM. Isso precisa ser armazenado em um Key Vault.
Tipo: | Uri |
Cargo: | 10 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-WinRMHttp
Indica que esse sistema operacional usa HTTP WinRM.
Tipo: | SwitchParameter |
Cargo: | 8 |
Valor padrão: | None |
Obrigatório: | False |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |
-WinRMHttps
Indica que esse sistema operacional usa HTTPS WinRM.
Tipo: | SwitchParameter |
Cargo: | 9 |
Valor padrão: | None |
Obrigatório: | True |
Aceitar a entrada de pipeline: | True |
Aceitar caracteres curinga: | False |