Activer les extensions de machine virtuelle Azure à l’aide d’Azure PowerShell
Cet article explique comment déployer, mettre à jour et désinstaller des extensions de machine virtuelle Azure prises en charge par les serveurs avec Azure Arc. Il vous explique comment effectuer ces tâches sur une machine hybride Linux ou Windows à l’aide d’Azure PowerShell.
Remarque
Les serveurs avec Azure Arc ne prennent pas en charge le déploiement et la gestion des extensions de machine virtuelle sur les machines virtuelles Azure. Pour les machines virtuelles Azure, consultez l’article Présentation des extensions de machine virtuelle.
Prérequis
Un ordinateur sur lequel est installé Azure PowerShell. Pour obtenir des instructions, consultez la rubrique Installation et configuration d'Azure PowerShell.
Le module
Az.ConnectedMachine
. Avant d’utiliser Azure PowerShell pour gérer les extensions de machine virtuelle sur votre serveur hybride géré par des serveurs Azure Arc, vous devez installer ce module.Vous pouvez effectuer ces opérations de gestion à partir de votre station de travail. Vous n’avez pas besoin de les exécuter sur le serveur avec Azure Arc.
Exécutez la commande suivante sur votre serveur Azure Arc :
Install-Module -Name Az.ConnectedMachine
.Une fois l’installation terminée, le message suivant apparaît :
The installed extension 'Az.ConnectedMachine' is experimental and not covered by customer support. Please use with discretion.
Activation d’une extension
Pour activer une extension de machine virtuelle sur votre serveur avec Azure Arc, utilisez New-AzConnectedMachineExtension
avec les paramètres -Name
, -ResourceGroupName
, -MachineName
, -Location
, -Publisher
, -ExtensionType
, et -Settings
.
L'exemple suivant active l'extension de script personnalisé sur un serveur avec Azure Arc :
$Setting = @{ "commandToExecute" = "powershell.exe -c Get-Process" }
New-AzConnectedMachineExtension -Name "custom" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Compute" -Settings $Setting -ExtensionType CustomScriptExtension
L’exemple suivant active l’extension Microsoft Antimalware sur un serveur Windows Azure Arc :
$Setting = @{ "AntimalwareEnabled" = $true }
New-AzConnectedMachineExtension -Name "IaaSAntimalware" -ResourceGroupName "myResourceGroup" -MachineName "myMachineName" -Location "regionName" -Publisher "Microsoft.Azure.Security" -Settings $Setting -ExtensionType "IaaSAntimalware"
Extension de machine virtuelle Key Vault
Avertissement
Ajouter \
à "
dans le fichier settings.json entraîne l’échec de akvvm_service
avec l’erreur suivante : [CertificateManagementConfiguration] Failed to parse the configuration settings with:not an object.
Bien que les utilisateurs de PowerShell utilisent couramment la séquence \"
en tant que séquence d’échappement des guillemets dans d’autres blocs de code, vous devez éviter cette mise en forme dans le fichier settings.json.
L'exemple suivant active l'extension de machine virtuelle Key Vault sur un serveur avec Azure Arc :
# Build settings
$settings = @{
secretsManagementSettings = @{
observedCertificates = @(
"observedCert1"
)
certificateStoreLocation = "myMachineName" # For Linux use "/var/lib/waagent/Microsoft.Azure.KeyVault.Store/"
certificateStore = "myCertificateStoreName"
pollingIntervalInS = "pollingInterval"
}
authenticationSettings = @{
msiEndpoint = "http://localhost:40342/metadata/identity"
}
}
$resourceGroup = "resourceGroupName"
$machineName = "myMachineName"
$location = "regionName"
# Start the deployment
New-AzConnectedMachineExtension -ResourceGroupName $resourceGroup -Location $location -MachineName $machineName -Name "KeyVaultForWindows or KeyVaultforLinux" -Publisher "Microsoft.Azure.KeyVault" -ExtensionType "KeyVaultforWindows or KeyVaultforLinux" -Setting $settings
Extension de machine virtuelle Datadog
L'exemple suivant active l'extension de machine virtuelle Datadog sur un serveur avec Azure Arc :
$resourceGroup = "resourceGroupName"
$machineName = "machineName"
$location = "machineRegion"
$osType = "Windows" # change to Linux if appropriate
$settings = @{
# change to your preferred Datadog site
site = "us3.datadoghq.com"
}
$protectedSettings = @{
# change to your Datadog API key
api_key = "APIKEY"
}
New-AzConnectedMachineExtension -ResourceGroupName $resourceGroup -Location $location -MachineName $machineName -Name "Datadog$($osType)Agent" -Publisher "Datadog.Agent" -ExtensionType "Datadog$($osType)Agent" -Setting $settings -ProtectedSetting $protectedSettings
Lister les extensions installées
Pour obtenir la liste des extensions de machine virtuelle sur votre serveur avec Azure Arc, utilisez Get-AzConnectedMachineExtension
avec les paramètres -MachineName
et -ResourceGroupName
.
Voici un exemple :
Get-AzConnectedMachineExtension -ResourceGroupName myResourceGroup -MachineName myMachineName
Name Location PropertiesType ProvisioningState
---- -------- -------------- -----------------
custom westus2 CustomScriptExtension Succeeded
Mettre à jour une configuration de l’extension
Pour reconfigurer une extension installée, vous pouvez utiliser la cmdlet Update-AzConnectedMachineExtension
avec les paramètres -Name
, -MachineName
, -ResourceGroupName
et -Settings
.
Pour comprendre les méthodes permettant de fournir les modifications que vous souhaitez apporter à l’extension, reportez-vous à l’article de référence de l’applet de commande.
Mettre à niveau les extensions
Quand une nouvelle version d’une extension de machine virtuelle prise en charge est publiée, vous pouvez mettre à niveau vers cette dernière version. Pour mettre à niveau une extension de machine virtuelle, utilisez Update-AzConnectedExtension
avec les paramètres -MachineName
, -ResourceGroupName
et -ExtensionTarget
.
Pour le paramètre -ExtensionTarget
, vous devez spécifier l’extension et la dernière version disponible. Pour déterminer la dernière version disponible d’une extension, consultez la page Extensions du serveur avec Arc sélectionné dans le portail Azure, ou exécutez Get-AzVMExtensionImage
. Vous pouvez spécifier plusieurs extensions dans une seule demande de mise à niveau en fournissant les deux :
- Liste séparée par des virgules d’extensions, définie par leur éditeur et leur type (séparés par un point)
- Version cible de chaque extension
Vous pouvez vérifier la version des extensions de machine virtuelle installées à tout moment en exécutant la commande Get-AzConnectedMachineExtension
. La valeur de la propriété TypeHandlerVersion
représente la version de l’extension.
Suppression d’extensions
Pour supprimer une extension de machine virtuelle installée sur votre serveur avec Azure Arc, utilisez Remove-AzConnectedMachineExtension
avec les paramètres -Name
, -MachineName
et -ResourceGroupName
.
Contenu connexe
- Vous pouvez déployer, gérer et supprimer des extensions de machine virtuelle à l’aide d’Azure CLI, du portail Azure ou de modèles Azure Resource Manager.
- Vous trouverez des informations de résolution des problèmes dans le guide pour résoudre les problèmes liés aux extensions de machine virtuelle.