Set-AzVMOperatingSystem

Establece las propiedades del sistema operativo durante la creación de una nueva máquina virtual o la actualización de una 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

El cmdlet Set-AzVMOperatingSystem establece las propiedades del sistema operativo durante la creación de una nueva máquina virtual. Puede especificar las credenciales de inicio de sesión, el nombre del equipo y el tipo de sistema operativo.

Ejemplos

Ejemplo 1: Establecimiento de las propiedades del sistema operativo para una nueva 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"

El primer comando convierte una contraseña en una cadena segura y, a continuación, la almacena en la variable $SecurePassword. Para obtener más información, escriba Get-Help ConvertTo-SecureString. El segundo comando crea una credencial para el usuario FullerP y la contraseña almacenada en $SecurePassword y, a continuación, almacena la credencial en la variable $Credential. Para obtener más información, escriba Get-Help New-Object. El tercer comando obtiene el conjunto de disponibilidad denominado AvailabilitySet03 en el grupo de recursos denominado ResourceGroup11 y, a continuación, almacena ese objeto en la variable $AvailabilitySet. El cuarto comando crea un objeto de máquina virtual y, a continuación, lo almacena en la variable $VirtualMachine. El comando asigna un nombre y un tamaño a la máquina virtual. La máquina virtual pertenece al conjunto de disponibilidad almacenado en $AvailabilitySet. Los cuatro comandos siguientes asignan valores a variables que se usarán en el siguiente comando. Dado que podría especificar estas cadenas directamente en el comando Set-AzVMOperatingSystem , este enfoque solo se usa para mejorar la legibilidad. Sin embargo, puede usar un enfoque como este en scripts. El comando final establece las propiedades del sistema operativo para la máquina virtual almacenada en $VirtualMachine. El comando usa las credenciales almacenadas en $Credential. El comando usa variables asignadas en comandos anteriores para algunos parámetros.

Ejemplo 2: Establecimiento de las propiedades del sistema operativo para una nueva máquina virtual con la aplicación de revisiones activas habilitada

$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

El primer comando convierte una contraseña en una cadena segura y, a continuación, la almacena en la variable $SecurePassword. Para obtener más información, escriba Get-Help ConvertTo-SecureString. El segundo comando crea una credencial para el usuario FullerP y la contraseña almacenada en $SecurePassword y, a continuación, almacena la credencial en la variable $Credential. Para obtener más información, escriba Get-Help New-Object. El tercer comando obtiene el conjunto de disponibilidad denominado AvailabilitySet03 en el grupo de recursos denominado ResourceGroup11 y, a continuación, almacena ese objeto en la variable $AvailabilitySet. El cuarto comando crea un objeto de máquina virtual y, a continuación, lo almacena en la variable $VirtualMachine. El comando asigna un nombre y un tamaño a la máquina virtual. La máquina virtual pertenece al conjunto de disponibilidad almacenado en $AvailabilitySet. Los cuatro comandos siguientes asignan valores a variables que se usarán en el siguiente comando. Dado que podría especificar estas cadenas directamente en el comando Set-AzVMOperatingSystem , este enfoque solo se usa para mejorar la legibilidad. Sin embargo, puede usar un enfoque como este en scripts. El comando final establece las propiedades del sistema operativo para la máquina virtual almacenada en $VirtualMachine. El comando usa las credenciales almacenadas en $Credential. El comando usa variables asignadas en comandos anteriores para algunos parámetros. El comando habilita hotpatching en la máquina virtual.

Ejemplo 3: Establecimiento de las propiedades del sistema operativo para una nueva 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"

El primer comando convierte una contraseña en una cadena segura y, a continuación, la almacena en la variable $SecurePassword. Para obtener más información, escriba Get-Help ConvertTo-SecureString. El segundo comando crea una credencial para el usuario FullerP y la contraseña almacenada en $SecurePassword y, a continuación, almacena la credencial en la variable $Credential. Para obtener más información, escriba Get-Help New-Object. El tercer comando obtiene el conjunto de disponibilidad denominado AvailabilitySet03 en el grupo de recursos denominado ResourceGroup11 y, a continuación, almacena ese objeto en la variable $AvailabilitySet. El cuarto comando crea un objeto de máquina virtual y, a continuación, lo almacena en la variable $VirtualMachine. El comando asigna un nombre y un tamaño a la máquina virtual. La máquina virtual pertenece al conjunto de disponibilidad almacenado en $AvailabilitySet. Los dos comandos siguientes asignan valores a variables que se usarán en el siguiente comando. El comando final establece las propiedades del sistema operativo para la máquina virtual almacenada en $VirtualMachine. El comando usa las credenciales almacenadas en $Credential. El comando usa variables asignadas en comandos anteriores para algunos parámetros. El comando establece el valor del modo de revisión en la máquina virtual en "AutomaticByPlatform".

Parámetros

-AssessmentMode

Valor del modo de evaluación automática para la máquina virtual. Los valores posibles son ImageDefault y AutomaticByPlatform.

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

-ComputerName

Especifica el nombre del equipo.

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

-Credential

Especifica el nombre de usuario y la contraseña de la máquina virtual como un objeto PSCredential . Para obtener una credencial, use el cmdlet Get-Credential. Para obtener más información, escriba Get-Help Get-Credential.

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

-CustomData

Especifica una cadena que se va a pasar a la máquina virtual. Para más información, consulte Datos personalizados en máquinas virtuales de Azure. Nota: No se recomienda almacenar información confidencial en datos personalizados.

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

-DefaultProfile

Las credenciales, la cuenta, el inquilino y la suscripción que se usan para la comunicación con 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 este cmdlet deshabilita la autenticación con contraseña.

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

-DisableVMAgent

Deshabilite Aprovisionamiento del agente de máquina virtual.

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

-EnableAutoUpdate

Indica que este cmdlet habilita la actualización automática.

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

-EnableHotpatching

Permite a los clientes aplicar revisiones a sus máquinas virtuales de Azure sin necesidad de reiniciar. Para enableHotpatching, el "provisionVMAgent" debe establecerse en true y "patchMode" debe establecerse en "AutomaticByPlatform".

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

-Linux

Indica que el tipo de sistema operativo es Linux.

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

-PatchMode

Especifica el modo de aplicación de revisiones en invitado a la máquina virtual iaaS.

Los valores posibles son:
AutomaticByPlatform : Azure administrará la instalación de revisiones para la máquina virtual. Use con -Windows o -Linux. Requiere -ProvisionVMAgent. Requiere -EnableAutoUpdate cuando se usa con -Windows.
AutomaticByOS : el sistema operativo administrará la instalación de revisiones para la máquina virtual. Use con -Windows. Requiere -ProvisionVMAgent y -EnableAutoUpdate.
Manual : controla la aplicación de revisiones en una máquina virtual. Use con -Windows. Requiere -ProvisionVMAgent.
ImageDefault : la instalación de revisiones administrada por la configuración predeterminada en la imagen del sistema operativo. Use con -Linux.

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

-ProvisionVMAgent

Indica que la configuración requiere que el agente de máquina virtual esté instalado en la máquina virtual.

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

-TimeZone

Especifica la zona horaria de la máquina virtual. Por ejemplo, "Hora estándar del Pacífico".
Los valores posibles se pueden TimeZoneInfo.Id valor de las zonas horarias devueltas por TimeZoneInfo.GetSystemTimeZones.

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

-VM

Especifica el objeto de máquina virtual local en el que se van a establecer las propiedades del sistema operativo. Para obtener un objeto de máquina virtual, use el cmdlet Get-AzVM. Cree un objeto de máquina virtual mediante el 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 el tipo de sistema operativo es Windows.

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

-WinRMCertificateUrl

Especifica el URI de un certificado WinRM. Esto debe almacenarse en un almacén de claves.

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

-WinRMHttp

Indica que este sistema operativo 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 operativo 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

Salidas

PSVirtualMachine