Cet article explique comment installer, mettre à niveau et gérer des extensions Azure Arc sur Azure Local.
Extensions Azure Arc gérées par le client sur Azure Local
Vous pouvez installer, désinstaller et mettre à jour des extensions Azure Arc sur votre instance Azure Local. Azure Arc vous permet d’exécuter des services hybrides tels que la surveillance et Windows Admin Center dans le Portail Azure.
Voici les extensions individuelles que vous pouvez installer et gérer.
Une fois que vous avez correctement inscrit votre nouveau local Azure auprès d’Azure, les extensions gérées par Azure sont automatiquement installées sur votre système. Ces extensions sont essentielles pour les fonctionnalités et la qualité de votre système et ne peuvent pas être désinstallées. Vous pouvez gérer le comportement de ces extensions dans le Portail Azure en accédant à la page Extensions et en sélectionnant le menu Paramètres.
Si vous disposez d’un local Azure existant inscrit auprès d’Azure sans ces extensions, une bannière s’affiche dans la page Vue d’ensemble ou Extensions de la Portail Azure. Vous pouvez utiliser les informations de la bannière pour vous guider dans l’installation de ces extensions.
Vous pouvez installer des extensions à partir de l’onglet Fonctionnalités de vos serveurs avec Azure Local Arc, comme illustré dans la capture d’écran. Vous pouvez utiliser l’onglet Fonctionnalités pour installer la plupart des extensions.
Lorsque vous installez une extension dans le Portail Azure, il s’agit d’une opération prenant en charge le cluster. L’extension est installée sur tous les nœuds du système. Si vous ajoutez d’autres nœuds à votre système, toutes les extensions installées sur votre système sont automatiquement ajoutées aux nouveaux serveurs.
Azure CLI est disponible pour l’installation dans les environnements Windows, macOS et Linux. Il peut également être exécuté dans Azure Cloud Shell. Pour plus d’informations, consultez démarrage rapide pour Azure Cloud Shell.
Lancez Azure Cloud Shell et utilisez Bash pour installer une extension en procédant comme suit :
Configurer des paramètres à partir de votre abonnement, groupe de ressources et clusters
subscription="00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
resourceGroup="hcicluster-rg" # Replace with your resource group name
az account set --subscription "${subscription}"
clusters=($(az graph query -q "resources | where type == 'microsoft.azurestackhci/clusters'| where resourceGroup =~ '${resourceGroup}' | project name" | jq -r '.data[].name'))
Pour installer l’extension Windows Admin Center sur tous les systèmes sous le groupe de ressources, exécutez la commande suivante :
extensionName="AdminCenter"
extensionType="AdminCenter"
extensionPublisher="Microsoft.AdminCenter"
settingsConfig="{'port':'6516'}"
connectivityProps="{enabled:true}"
for cluster in ${clusters}; do
echo "Enabling Connectivity for cluster $currentCluster"
az stack-hci arc-setting update \
--resource-group ${resourceGroup} \
--cluster-name ${cluster} \
--name "default" \
--connectivity-properties ${connectivityProps}
echo "Installing extension: ${extensionName} on cluster: ${cluster}"
az stack-hci extension create \
--arc-setting-name "default" \
--cluster-name "${cluster}" \
--resource-group "${resourceGroup}" \
--name "${extensionName}" \
--auto-upgrade "true" \
--publisher "${extensionPublisher}" \
--type "${extensionType}" \
--settings "${settingsConfig}"
done
Pour installer l’extension Agent Azure Monitor sur tous les systèmes sous le groupe de ressources, exécutez la commande suivante :
extensionName="AzureMonitorWindowsAgent"
extensionType="AzureMonitorWindowsAgent"
extensionPublisher="Microsoft.Azure.Monitor"
for cluster in ${clusters}; do
echo "Installing extension: ${extensionName} on cluster: ${cluster}"
az stack-hci extension create \
--arc-setting-name "default" \
--cluster-name "${cluster}" \
--resource-group "${resourceGroup}" \
--name "${extensionName}" \
--auto-upgrade "true" \
--publisher "${extensionPublisher}" \
--type "${extensionType}"
done
Pour installer l’extension Azure Site Recovery sur tous les systèmes sous le groupe de ressources, exécutez la commande suivante :
asrSubscription="00000000-0000-0000-0000-000000000000" # Replace with your ASR subscription ID
asrResourceGroup="asr-rg" # Replace with your ASR resource group
asrVaultName="asr-vault" # Replace with your ASR vault name
asrLocation="East US" # Replace with your ASR Location
asrSiteId="00000000-0000-0000-0000-000000000000" # Replace with your ASR Site ID
asrSiteName="asr-site" # Replace with your Site Name
asrSitePolicyId="/subscriptions/${asrSubscription}/resourceGroups/${asrResourceGroup}/providers/Microsoft.RecoveryServices/vaults/${asrVaultName}/replicationPolicies/s-cluster-policy" # Replace with your Site Policy name
extensionName="ASRExtension"
extensionType="Windows"
extensionPublisher="Microsoft.SiteRecovery.Dra"
jsonFile="./tmp-asr.json" #Temp JSON file
echo "{\"SubscriptionId\": \"${asrSubscription}\", \"Environment\": \"AzureCloud\",\"ResourceGroup\": \"${asrResourceGroup}\",\"Location\": \"${asrLocation}\",\"SiteId\": \"${asrSiteId}\", \"SiteName\": \"${asrSiteName}\", \"PolicyId\": \"${asrSitePolicyId}\", \"PrivateEndpointStateForSiteRecovery\": \"None\" }" > ${jsonFile}
for cluster in ${clusters}; do
echo "Installing extension: ${extensionName} on cluster: ${cluster}"
az stack-hci extension create \
--arc-setting-name "default" \
--cluster-name "${cluster}" \
--resource-group "${resourceGroup}" \
--name "${extensionName}" \
--auto-upgrade "true" \
--publisher "${extensionPublisher}" \
--type "${extensionType}" \
--settings "${jsonFile}"
done
Azure PowerShell peut être exécuté dans Azure Cloud Shell. Ce document explique comment utiliser PowerShell dans Azure Cloud Shell. Pour plus d’informations, consultez démarrage rapide pour Azure Cloud Shell.
Lancez Azure Cloud Shell et utilisez PowerShell pour installer une extension en procédant comme suit :
Configurez les paramètres à partir de votre abonnement, groupe de ressources et clusters :
$subscription = "00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
Set-AzContext -Subscription "${subscription}"
$clusters = Get-AzResource -ResourceType "Microsoft.AzureStackHCI/clusters" -ResourceGroupName ${resourceGroup} | Select-Object -Property Name
Pour installer l’extension Windows Admin Center sur tous les systèmes sous le groupe de ressources, exécutez la commande suivante :
Pour installer l’extension Azure Site Recovery sur tous les systèmes sous le groupe de ressources, créez un fichier de paramètres JSON, puis exécutez la commande suivante :
$settings = @{
SubscriptionId = "<Replace with your Subscription Id>"
Environment = "<Replace with the cloud environment type. For example: AzureCloud>"
ResourceGroup = "<Replace with your Site Recovery Vault resource group>"
ResourceName = "<Replace with your Site Recovery Vault Name>"
Location = "<Replace with your Site Recovery Azure Region>"
SiteId = "<Replace with the ID of your recovery site>"
SiteName = "<Replace with your recovery site name>"
PolicyId = "<Replace with resource ID of your recovery site policy>"
PrivateEndpointStateForSiteRecovery = "None"
}
$extensionName = "ASRExtension"
$extensionType = "Windows"
$extensionPublisher = "Microsoft.SiteRecovery.Dra"
foreach ($cluster in $clusters) {
$clusterName = ${cluster}.Name
Write-Output ("Installing Extension '${extensionType}/${extensionPublisher}' on cluster ${clusterName}")
New-AzStackHciExtension `
-ClusterName "${clusterName}" `
-ResourceGroupName "${resourceGroup}" `
-ArcSettingName "default" `
-Name "${extensionName}" `
-ExtensionParameterPublisher "${extensionPublisher}" `
-ExtensionParameterType "${extensionType}" `
-ExtensionParameterSetting ${settings} `
-NoWait
}
Vous pouvez vérifier l’état d’une extension sur chaque serveur à partir de la page Extensions en affichant la colonne d’état de la grille.
Azure CLI est disponible pour l’installation dans les environnements Windows, macOS et Linux. Il peut également être exécuté dans Azure Cloud Shell. Pour plus d’informations, consultez démarrage rapide pour Azure Cloud Shell.
Lancez Azure Cloud Shell et utilisez Bash pour vérifier l’état d’une extension en procédant comme suit :
Configurer des paramètres à partir de votre abonnement, groupe de ressources, nom de cluster et nom d’extension
subscription="00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
resourceGroup="hcicluster-rg" # Replace with your resource group name
clusterName="HCICluster" # Replace with your cluster name
extensionName="AzureMonitorWindowsAgent" # Replace with the extension name
az account set --subscription "${subscription}"
Pour répertorier toutes les extensions sur un système, exécutez la commande suivante :
az stack-hci extension list \
--arc-setting-name "default" \
--cluster-name "${clusterName}" \
--resource-group "${resourceGroup}" \
-o table
Pour filtrer une extension spécifique, AzureMonitorWindowsAgentexécutez la commande suivante :
Azure PowerShell peut être exécuté dans Azure Cloud Shell. Ce document explique comment utiliser PowerShell dans Azure Cloud Shell. Pour plus d’informations, consultez démarrage rapide pour Azure Cloud Shell.
Lancez Azure Cloud Shell et utilisez PowerShell pour vérifier l’état d’une extension en procédant comme suit :
Configurer des paramètres à partir de votre abonnement, groupe de ressources et nom de cluster
$subscription = "00000000-0000-0000-0000-000000000000" # Replace with your subscription ID
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
Set-AzContext -Subscription "${subscription}"
$clusters = Get-AzResource -ResourceType "Microsoft.AzureStackHCI/clusters" -ResourceGroupName ${resourceGroup} | Select-Object -Property Name
Pour répertorier toutes les extensions sur un système, exécutez la commande suivante :
Lorsqu’elle est publiée par l’équipe éditeur d’extension, le processus de mise à niveau de l’extension remplace la version d’extension existante par une nouvelle version prise en charge. Par défaut, la fonctionnalité de mise à niveau automatique d’extension est activée pour toutes les extensions déployées sur des clusters avec Azure Local Arc, sauf si vous désactivez explicitement les mises à niveau automatiques.
Actuellement, les mises à niveau automatiques d’extension ne sont prises en charge que dans l’extension Windows Admin Center, mais d’autres extensions seront ajoutées ultérieurement.
Remarque
Par défaut, toutes les extensions sont configurées pour activer les mises à niveau automatiques, même si une extension ne prend pas en charge la mise à niveau automatique de l’extension. Toutefois, ce paramètre par défaut n’a aucun effet tant que l’éditeur d’extension ne choisit pas de prendre en charge la mise à niveau automatique de l’extension.
Activer la mise à niveau automatique des extensions
Pour certaines extensions, vous pouvez activer les mises à niveau automatiques par le biais de la gestion des extensions.
Pour activer une mise à niveau automatique, accédez à la page Extensions et effectuez les étapes suivantes :
Choisissez l’extension sur laquelle vous souhaitez activer la mise à niveau automatique.
Sélectionnez Activer la mise à niveau automatique dans le menu supérieur
Lorsque vous êtes invité à confirmer votre intention, sélectionnez OK.
Pour installer et activer la mise à niveau automatique pour une extension spécifique, exécutez AzureMonitorWindowsAgent la commande suivante :
clusterName="HCICluster" # Replace with your cluster name
resourceGroup="hcicluster-rg" # Replace with your resource group name
extensionName="AzureMonitorWindowsAgent"
extensionPublisher="Microsoft.Azure.Monitor"
extensionType="AzureMonitorWindowsAgent"
az stack-hci extension create \
--name "${extensionName}" \
--arc-setting-name "default" \
--cluster-name "${clusterName}" \
--resource-group "${resourceGroup}" \
--publisher ${extensionPublisher} \
--type ${extensionType} \
--auto-upgrade "true"
Pour installer et activer la mise à niveau automatique pour une extension spécifique, exécutez AzureMonitorWindowsAgent la commande suivante :
$clusterName = "HCICluster" # Replace with your cluster name
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
$extensionName = "AzureMonitorWindowsAgent"
$extensionType = "AzureMonitorWindowsAgent"
$extensionPublisher = "Microsoft.Azure.Monitor"
New-AzStackHciExtension `
-ClusterName "${clusterName}" `
-ResourceGroupName "${resourceGroup}" `
-ArcSettingName "default" `
-Name "${extensionName}" `
-ExtensionParameterPublisher "${extensionPublisher}" `
-ExtensionParameterType "${extensionType}" `
-ExtensionParameterEnableAutomaticUpgrade
Mise à niveau manuelle de l’extension via le Portail Azure
La mise à niveau manuelle de l’extension fonctionne comme la mise à niveau automatique de l’extension. Sur un cluster avec Azure Local Arc, lorsque vous mettez à niveau manuellement une extension, Azure enregistre la version que vous avez sélectionnée. Azure tente ensuite de mettre à niveau l’extension sur tous les nœuds du cluster vers cette version.
Sur certains serveurs, si la mise à niveau de l’extension échoue, la plateforme tente de mettre à niveau vers la version sélectionnée lors de la prochaine synchronisation du cloud local Azure.
Utilisez le flux de travail manuel dans ces scénarios :
Une nouvelle version de l’extension est disponible et vous souhaitez la mettre à niveau manuellement.
L’option de mise à niveau automatique de l’extension est désactivée et il existe une incompatibilité de version entre différents nœuds d’Azure Local.
Pour mettre à niveau manuellement une extension, procédez comme suit :
Accédez à la page Extensions .
Choisissez l’extension que vous souhaitez mettre à niveau et sélectionnez Paramètres dans le menu supérieur.
Choisissez la dernière version, puis sélectionnez Enregistrer.
Désactiver la Mise à niveau automatique des extensions
Vous pouvez désactiver les mises à niveau automatiques pour certaines extensions dans le Portail Azure. Pour désactiver les mises à niveau automatiques, accédez à la page Extensions et effectuez les étapes suivantes :
Choisissez l’extension sur laquelle vous souhaitez désactiver la mise à niveau automatique.
Sélectionnez Désactiver la mise à niveau automatique dans le menu supérieur.
Lorsque vous êtes invité à confirmer votre intention, sélectionnez OK.
Vérifier l’historique de mise à niveau de l’extension
Vous pouvez afficher l’onglet Journal d’activité sur les ressources de serveur, les groupes de ressources et les abonnements avec Azure Arc individuels pour vérifier l’historique des mises à niveau automatiques des extensions pour des nœuds individuels. Pour plus d’informations, consultez Vérifier l’historique de mise à niveau automatique de l’extension.
Minutage des mises à niveau automatiques des extensions
Lorsqu’une nouvelle version d’une extension prise en charge est publiée, elle devient disponible pour l’installation et la mise à niveau manuelle sur les serveurs avec Azure Arc. Les mises à niveau sont émises par lots dans les régions et abonnements Azure. Vous pouvez donc voir une mise à niveau d’extension se produire sur certains serveurs avant d’autres. Pour plus d’informations, consultez Minutage des mises à niveau automatiques des extensions.
En cas d’échec de la mise à niveau d’une extension, Azure effectue les actions associées à la restauration automatique et réessaye lors d’une tentative de réparation de l’extension.
Si vous continuez à rencontrer des problèmes avec une mise à niveau d’extension, vous pouvez désactiver la mise à niveau automatique de l’extension. Lorsque vous désactivez la mise à niveau automatique, cela empêche les nouvelles tentatives système pendant que vous résolvez le problème. Vous pouvez réactiver la mise à niveau automatique de l’extension lorsque vous êtes prêt.
Mises à niveau avec plusieurs extensions
Si plusieurs mises à niveau d’extension sont disponibles pour un nœud, elles peuvent être regroupées par lots. Toutefois, chaque mise à niveau d’extension est appliquée individuellement sur le nœud. Pour plus d’informations, consultez Mises à niveau d’extension avec plusieurs extensions.
Si vous le souhaitez, vous pouvez désinstaller certaines extensions de votre local Azure dans le Portail Azure. Pour désinstaller une extension, procédez comme suit :
Accédez à la page Extensions.
Choisissez l’extension à désinstaller. Le bouton de désinstallation n’est pas disponible pour les extensions gérées par Azure.
Sélectionnez Désinstaller dans le menu supérieur.
Confirmez l’intention et sélectionnez Oui.
Pour supprimer une extension spécifique comme AzureMonitorWindowsAgent exécuter la commande suivante :
extensionName="AzureMonitorWindowsAgent" # Replace with the extension name
resourceGroup="hcicluster-rg" # Replace with your resource group name
clusterName="HCICluster" # Replace with your cluster name
az stack-hci extension delete \
--arc-setting-name "default" \
--name "${extensionName}" \
--cluster-name "${clusterName}" \
--resource-group "${resourceGroup}"
Pour supprimer une extension spécifique comme AzureMonitorWindowsAgent exécuter la commande suivante :
$clusterName = "HCICluster" # Replace with your cluster name
$resourceGroup = "hcicluster-rg" # Replace with your resource group name
$extensionName = "AzureMonitorWindowsAgent"
Remove-AzStackHciExtension `
-ClusterName "${clusterName}" `
-ResourceGroupName "${resourceGroup}" `
-ArcSettingName "default" `
-Name "${extensionName}"
Résolution des problèmes liés aux erreurs d’extension
État de l’extension : Échec
Recommandation : Pour une extension avec un état ayant échoué, sélectionnez le lien Échec (Afficher les détails). Affichez toutes les informations sur l’échec et appliquez les conseils de dépannage.