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.

Syntax

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 cadeia de caracteres 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, em seguida, armazena-o na variável $VirtualMachine. O comando atribui um nome e um 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 esta 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 cadeia de caracteres 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, em seguida, armazena-o na variável $VirtualMachine. O comando atribui um nome e um 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 esta 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 cadeia de caracteres 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, em seguida, armazena-o na variável $VirtualMachine. O comando atribui um nome e um 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.

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

-ComputerName

Especifica o nome do computador.

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

-Credential

Especifica o nome de usuário e a senha para a 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.

Type:PSCredential
Position:3
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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. Nota: Não é recomendado armazenar informações confidenciais em dados personalizados.

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

-DefaultProfile

As credenciais, a conta, o locatário e a assinatura usados para comunicação com o azure.

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

-DisablePasswordAuthentication

Indica que esse cmdlet desabilita a autenticação de senha.

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

-DisableVMAgent

Desative o Provisionamento do Agente de VM.

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

-EnableAutoUpdate

Indica que esse cmdlet habilita a atualização automática.

Type:SwitchParameter
Position:6
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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'.

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

-Linux

Indica que o tipo de sistema operacional é Linux.

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

-PatchMode

Especifica o modo de aplicação de patches 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 do patch gerenciada pelas configurações padrão na imagem do sistema operacional. Use com -Linux.

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

-ProvisionVMAgent

Indica que as configurações exigem que o agente de máquina virtual seja instalado na máquina virtual.

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

-TimeZone

Especifica o fuso horário da máquina virtual. por exemplo, "Hora Padrão do Pacífico".
Os valores possíveis podem ser TimeZoneInfo.Id valor de fusos horários retornados por TimeZoneInfo.GetSystemTimeZones.

Type:String
Position:7
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters: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.

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

-Windows

Indica que o tipo de sistema operacional é Windows.

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

-WinRMCertificateUrl

Especifica o URI de um certificado WinRM. Isso precisa ser armazenado em um Cofre de Chaves.

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

-WinRMHttp

Indica que este sistema operacional usa HTTP WinRM.

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

-WinRMHttps

Indica que este sistema operacional usa HTTPS WinRM.

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

Entradas

PSVirtualMachine

SwitchParameter

String

PSCredential

Uri

Saídas

PSVirtualMachine