Set-AzVMOperatingSystem

Définit les propriétés du système d’exploitation pendant la création d’une machine virtuelle ou la mise à jour d’une machine virtuelle.

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

L’applet de commande Set-AzVMOperatingSystem définit les propriétés du système d’exploitation lors de la création d’une nouvelle machine virtuelle. Vous pouvez spécifier les informations d’identification d’ouverture de session, le nom de l’ordinateur et le type de système d’exploitation.

Exemples

Exemple 1 : Définir les propriétés du système d’exploitation pour une nouvelle machine virtuelle

$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"

La première commande convertit un mot de passe en chaîne sécurisée, puis la stocke dans la variable $SecurePassword. Pour plus d'informations, voir Get-Help ConvertTo-SecureString. La deuxième commande crée des informations d’identification pour l’utilisateur FullerP et le mot de passe stockés dans $SecurePassword, puis stocke les informations d’identification dans la variable $Credential. Pour plus d'informations, voir Get-Help New-Object. La troisième commande obtient le groupe à haute disponibilité nommé AvailabilitySet03 dans le groupe de ressources nommé ResourceGroup11, puis stocke cet objet dans la variable $AvailabilitySet. La quatrième commande crée un objet de machine virtuelle, puis la stocke dans la variable $VirtualMachine. La commande attribue un nom et une taille à la machine virtuelle. La machine virtuelle appartient au groupe à haute disponibilité stocké dans $AvailabilitySet. Les quatre commandes suivantes attribuent des valeurs aux variables à utiliser dans la commande suivante. Étant donné que vous pouvez spécifier ces chaînes directement dans la commande Set-AzVMOperatingSystem , cette approche est utilisée uniquement pour la lisibilité. Toutefois, vous pouvez utiliser une approche telle que celle-ci dans les scripts. La commande finale définit les propriétés du système d’exploitation de la machine virtuelle stockée dans $VirtualMachine. La commande utilise les informations d’identification stockées dans $Credential. La commande utilise des variables affectées dans les commandes précédentes pour certains paramètres.

Exemple 2 : Définir les propriétés du système d’exploitation pour une nouvelle machine virtuelle avec mise à jour corrective à chaud activée

$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

La première commande convertit un mot de passe en chaîne sécurisée, puis la stocke dans la variable $SecurePassword. Pour plus d'informations, voir Get-Help ConvertTo-SecureString. La deuxième commande crée des informations d’identification pour l’utilisateur FullerP et le mot de passe stockés dans $SecurePassword, puis stocke les informations d’identification dans la variable $Credential. Pour plus d'informations, voir Get-Help New-Object. La troisième commande obtient le groupe à haute disponibilité nommé AvailabilitySet03 dans le groupe de ressources nommé ResourceGroup11, puis stocke cet objet dans la variable $AvailabilitySet. La quatrième commande crée un objet de machine virtuelle, puis la stocke dans la variable $VirtualMachine. La commande attribue un nom et une taille à la machine virtuelle. La machine virtuelle appartient au groupe à haute disponibilité stocké dans $AvailabilitySet. Les quatre commandes suivantes attribuent des valeurs aux variables à utiliser dans la commande suivante. Étant donné que vous pouvez spécifier ces chaînes directement dans la commande Set-AzVMOperatingSystem , cette approche est utilisée uniquement pour la lisibilité. Toutefois, vous pouvez utiliser une approche telle que celle-ci dans les scripts. La commande finale définit les propriétés du système d’exploitation de la machine virtuelle stockée dans $VirtualMachine. La commande utilise les informations d’identification stockées dans $Credential. La commande utilise des variables affectées dans les commandes précédentes pour certains paramètres. La commande active hotpatching sur la machine virtuelle.

Exemple 3 : Définir les propriétés du système d’exploitation pour une nouvelle machine virtuelle 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"

La première commande convertit un mot de passe en chaîne sécurisée, puis la stocke dans la variable $SecurePassword. Pour plus d'informations, voir Get-Help ConvertTo-SecureString. La deuxième commande crée des informations d’identification pour l’utilisateur FullerP et le mot de passe stockés dans $SecurePassword, puis stocke les informations d’identification dans la variable $Credential. Pour plus d'informations, voir Get-Help New-Object. La troisième commande obtient le groupe à haute disponibilité nommé AvailabilitySet03 dans le groupe de ressources nommé ResourceGroup11, puis stocke cet objet dans la variable $AvailabilitySet. La quatrième commande crée un objet de machine virtuelle, puis la stocke dans la variable $VirtualMachine. La commande attribue un nom et une taille à la machine virtuelle. La machine virtuelle appartient au groupe à haute disponibilité stocké dans $AvailabilitySet. Les deux commandes suivantes attribuent des valeurs aux variables à utiliser dans la commande suivante. La commande finale définit les propriétés du système d’exploitation de la machine virtuelle stockée dans $VirtualMachine. La commande utilise les informations d’identification stockées dans $Credential. La commande utilise des variables affectées dans les commandes précédentes pour certains paramètres. La commande définit la valeur du mode correctif sur la machine virtuelle sur « AutomaticByPlatform ».

Paramètres

-AssessmentMode

Valeur du mode d’évaluation automatique pour la machine virtuelle. Les valeurs possibles sont ImageDefault et AutomaticByPlatform.

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

-ComputerName

Spécifie le nom de l'ordinateur.

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

-Credential

Spécifie le nom d’utilisateur et le mot de passe de la machine virtuelle en tant qu’objet PSCredential . Pour obtenir des informations d’identification, utilisez l’applet de commande Get-Credential. Pour plus d'informations, voir Get-Help Get-Credential.

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

-CustomData

Spécifie une chaîne à passer à la machine virtuelle. Pour plus d’informations, consultez Données personnalisées sur des machines virtuelles Azure. Remarque : il n’est pas recommandé de stocker des informations sensibles dans des données personnalisées.

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

-DefaultProfile

Informations d’identification, compte, locataire et abonnement utilisés pour la communication avec Azure.

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

-DisablePasswordAuthentication

Indique que cette applet de commande désactive l’authentification par mot de passe.

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

-DisableVMAgent

Désactivez l’agent de machine virtuelle de provisionnement.

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

-EnableAutoUpdate

Indique que cette applet de commande active la mise à jour automatique.

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

-EnableHotpatching

Permet aux clients de corriger leurs machines virtuelles Azure sans nécessiter de redémarrage. Pour enableHotpatching, le paramètre « provisionVMAgent » doit être défini sur true et « patchMode » doit être défini sur « AutomaticByPlatform ».

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

-Linux

Indique que le type de système d’exploitation est Linux.

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

-PatchMode

Spécifie le mode de mise à jour corrective dans l’invité sur une machine virtuelle IaaS.

Les valeurs possibles sont les suivantes :
AutomaticByPlatform - L’installation de correctifs pour la machine virtuelle sera gérée par Azure. Utilisez -Windows ou -Linux. Nécessite -ProvisionVMAgent. Nécessite -EnableAutoUpdate lorsqu’il est utilisé avec -Windows.
AutomaticByOS - L’installation des correctifs pour la machine virtuelle sera gérée par le système d’exploitation. Utiliser avec -Windows. Nécessite -ProvisionVMAgent et -EnableAutoUpdate.
Manuel : vous contrôlez l’application de correctifs sur une machine virtuelle. Utiliser avec -Windows. Nécessite -ProvisionVMAgent.
ImageDefault : installation corrective gérée par les paramètres par défaut sur l’image du système d’exploitation. Utiliser avec -Linux.

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

-ProvisionVMAgent

Indique que les paramètres nécessitent l’installation de l’agent de machine virtuelle sur la machine virtuelle.

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

-TimeZone

Spécifie le fuseau horaire de la machine virtuelle. par exemple « Heure standard du Pacifique ».
Les valeurs possibles peuvent être TimeZoneInfo.Id valeur des fuseaux horaires retournés par TimeZoneInfo.GetSystemTimeZones.

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

-VM

Spécifie l’objet de machine virtuelle locale sur lequel définir les propriétés du système d’exploitation. Pour obtenir un objet de machine virtuelle, utilisez l’applet de commande Get-AzVM. Créez un objet de machine virtuelle à l’aide de l’applet de commande New-AzVMConfig.

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

-Windows

Indique que le type de système d’exploitation est Windows.

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

-WinRMCertificateUrl

Spécifie l’URI d’un certificat WinRM. Cela doit être stocké dans un coffre de clés.

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

-WinRMHttp

Indique que ce système d’exploitation utilise HTTP WinRM.

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

-WinRMHttps

Indique que ce système d’exploitation utilise HTTPS WinRM.

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

Entrées

PSVirtualMachine

SwitchParameter

String

PSCredential

Uri

Sorties

PSVirtualMachine