Administración de la extensión de Azure Arc en Azure Stack HCI
Artículo
Se aplica a: Azure Stack HCI, versiones 23H2 y 22H2
En este artículo se describe cómo instalar, actualizar y administrar extensiones de Azure Arc en máquinas de servidor de Azure Stack HCI.
Extensiones de Azure Arc administradas por el cliente en Azure Stack HCI
Con Azure Stack HCI, puede instalar, desinstalar y actualizar extensiones de Azure Arc en los sistemas de Azure Stack HCI. Azure Arc permite ejecutar servicios híbridos como la supervisión y Windows Admin Center en el Azure Portal.
Estas son las extensiones individuales que puede instalar y administrar.
Extensiones administradas por Azure en Azure Stack HCI
Una vez que haya registrado correctamente el nuevo clúster de Azure Stack HCI con Azure, las extensiones administradas por Azure se instalan automáticamente en el clúster. Estas extensiones son esenciales para la funcionalidad y la calidad del sistema y no se pueden desinstalar. Para administrar el comportamiento de estas extensiones en el Azure Portal, vaya a la página Extensiones y seleccione el menú Configuración.
Si tiene un clúster de Azure Stack HCI existente registrado en Azure sin estas extensiones, se muestra un banner en la página Información general o Extensiones de la Azure Portal. Puede usar la información del banner para guiarle a través de la instalación de estas extensiones.
Estas son las extensiones administradas por Azure:
Puede instalar extensiones desde la pestaña Funcionalidades de los servidores habilitados para Azure Stack HCI Arc, tal como se muestra en la captura de pantalla. Puede usar la pestaña funcionalidades para instalar la mayoría de las extensiones.
Al instalar una extensión en el Azure Portal, se trata de una operación compatible con clústeres. La extensión se instala en todos los servidores del clúster. Si agrega más servidores al clúster, todas las extensiones instaladas en el clúster se agregan automáticamente a los nuevos servidores.
La CLI de Azure está disponible para instalarse en entornos Windows, macOS y Linux. También se puede ejecutar en Azure Cloud Shell. Para más información, consulte Inicio rápido para Azure Cloud Shell.
Inicie Azure Cloud Shell y use Bash para instalar una extensión siguiendo estos pasos:
Configuración de parámetros desde la suscripción, el grupo de recursos y los clústeres
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'))
Para instalar la extensión Windows Admin Center en todos los clústeres del grupo de recursos, ejecute el siguiente comando:
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
Para instalar la extensión del agente de Azure Monitor en todos los clústeres del grupo de recursos, ejecute el siguiente comando:
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
Para instalar la extensión de Azure Site Recovery en todos los clústeres del grupo de recursos, ejecute el siguiente comando:
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 se puede ejecutar en Azure Cloud Shell. En este documento se detalla cómo usar PowerShell en Azure Cloud Shell. Para más información, consulte Inicio rápido para Azure Cloud Shell.
Inicie Azure Cloud Shell y use PowerShell para instalar una extensión siguiendo estos pasos:
Configure los parámetros de la suscripción, el grupo de recursos y los clústeres:
$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
Para instalar la extensión Windows Admin Center en todos los clústeres del grupo de recursos, ejecute el siguiente comando:
Para instalar la extensión de Azure Site Recovery en todos los clústeres del grupo de recursos, cree un archivo de parámetros JSON y ejecute el siguiente comando:
$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
}
Puede comprobar el estado de una extensión en cada servidor desde la página Extensiones viendo la columna de estado de la cuadrícula.
La CLI de Azure está disponible para instalarse en entornos Windows, macOS y Linux. También se puede ejecutar en Azure Cloud Shell. Para más información, consulte Inicio rápido para Azure Cloud Shell.
Inicie Azure Cloud Shell y use Bash para comprobar el estado de una extensión siguiendo estos pasos:
Configuración de parámetros de la suscripción, el grupo de recursos, el nombre del clúster y el nombre de la extensión
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}"
Para enumerar todas las extensiones de un clúster, ejecute el siguiente comando:
az stack-hci extension list \
--arc-setting-name "default" \
--cluster-name "${clusterName}" \
--resource-group "${resourceGroup}" \
-o table
Para filtrar una extensión específica como AzureMonitorWindowsAgent, ejecute el siguiente comando:
Azure PowerShell se puede ejecutar en Azure Cloud Shell. En este documento se detalla cómo usar PowerShell en Azure Cloud Shell. Para más información, consulte Inicio rápido para Azure Cloud Shell.
Inicie Azure Cloud Shell y use PowerShell para comprobar el estado de una extensión siguiendo estos pasos:
Configuración de parámetros desde la suscripción, el grupo de recursos y el nombre del clúster
$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
Para enumerar todas las extensiones de un clúster, ejecute el siguiente comando:
Funcionamiento de la actualización de la extensión
Cuando lo publica el equipo del publicador de extensiones, el proceso de actualización de la extensión reemplaza la versión de extensión existente por una recién admitida. De forma predeterminada, la característica de actualización automática de extensiones está habilitada para todas las extensiones implementadas en clústeres habilitados para Azure Stack HCI Arc a menos que opte explícitamente por no participar en actualizaciones automáticas.
Actualmente, las actualizaciones automáticas de extensiones solo se admiten en la extensión Windows Admin Center, pero se agregarán más extensiones en el futuro.
Nota
De forma predeterminada, todas las extensiones están configuradas para habilitar las actualizaciones automáticas, incluso si una extensión no admite la actualización automática de la extensión. Sin embargo, esta configuración predeterminada no tiene ningún efecto hasta que el publicador de extensiones elige admitir la actualización automática de la extensión.
Habilitación de la actualización automática de extensiones
Para algunas extensiones, puede habilitar las actualizaciones automáticas a través de la administración de extensiones.
Para habilitar una actualización automática, vaya a la página Extensiones y realice estos pasos:
Elija la extensión en la que desea habilitar la actualización automática.
Seleccione Habilitar actualización automática en el menú superior.
Cuando se le pida que confirme la intención, seleccione Aceptar.
Para instalar y habilitar la actualización automática para una extensión específica, como AzureMonitorWindowsAgent ejecute el siguiente comando:
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"
Para instalar y habilitar la actualización automática para una extensión específica, como AzureMonitorWindowsAgent ejecute el siguiente comando:
$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
Actualización manual de la extensión a través del Azure Portal
La actualización manual de la extensión funciona como la actualización automática de la extensión. En un clúster habilitado para Azure Stack HCI Arc, al actualizar manualmente una extensión, Azure guarda la versión que ha seleccionado. Después, Azure intenta actualizar la extensión en todos los servidores del clúster a esa versión.
En algunos servidores, si se produce un error en la actualización de la extensión, la plataforma intenta actualizar a la versión seleccionada durante la siguiente sincronización en la nube de Azure Stack HCI.
Use el flujo de trabajo manual en estos escenarios:
Hay disponible una nueva versión de la extensión y quiere actualizarla manualmente.
La opción de actualización automática de la extensión está deshabilitada y hay una falta de coincidencia de versiones en distintos servidores del clúster de Azure Stack HCI.
Para actualizar manualmente una extensión, siga estos pasos:
Vaya a la página Extensiones .
Elija la extensión que desea actualizar y seleccione Configuración en el menú superior.
Elija la versión más reciente y seleccione Guardar.
Deshabilitación de la actualización automática de extensiones
Puede deshabilitar las actualizaciones automáticas para determinadas extensiones en el Azure Portal. Para deshabilitar las actualizaciones automáticas, vaya a la página Extensiones y realice estos pasos:
Elija la extensión en la que desea deshabilitar la actualización automática.
Seleccione Deshabilitar actualización automática en el menú superior.
Cuando se le pida que confirme la intención, seleccione Aceptar.
Comprobación del historial de actualización de la extensión
Puede ver la pestaña Registro de actividad en recursos de servidor, grupos de recursos y suscripciones habilitados para Azure Arc individuales para comprobar el historial de actualizaciones automáticas de extensiones para servidores de clúster individuales. Para obtener más información, consulte Comprobación del historial de actualizaciones automáticas de extensiones.
Actualizaciones por orden de disponibilidad
Para un grupo de clústeres habilitados para Azure Stack HCI Arc sometidos a una actualización, la plataforma Azure usó el modelo de actualización automática de extensiones para orquestar las actualizaciones.
Tiempo de actualizaciones automáticas de extensiones
Cuando se publica una nueva versión de una extensión compatible, estará disponible para la instalación y la actualización manual en servidores habilitados para Azure Arc. Las actualizaciones se emiten en lotes entre regiones y suscripciones de Azure, por lo que es posible que vea que se produce una actualización de extensión en algunos servidores antes que en otros. Para obtener más información, consulte Tiempo de actualizaciones automáticas de extensiones.
Si se produce un error en una actualización de extensión, Azure realiza las acciones asociadas a la reversión automática y vuelve a intentar reparar la extensión.
Si hay varias actualizaciones de extensión disponibles para una máquina, podrían procesarse por lotes juntas. Sin embargo, cada actualización de extensión se aplica individualmente en el equipo. Para obtener más información, consulte Actualizaciones de extensiones con varias extensiones.
Si lo desea, puede desinstalar algunas extensiones de los clústeres de Azure Stack HCI en el Azure Portal. Para desinstalar una extensión, siga estos pasos:
Vaya a la página Extensiones.
Elija la extensión que desea desinstalar. El botón desinstalar no está disponible para las extensiones administradas por Azure.
Seleccione Desinstalar en el menú superior.
Confirme la intención y seleccione Sí.
Para quitar una extensión específica como AzureMonitorWindowsAgent ejecute el siguiente comando:
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}"
Para quitar una extensión específica como AzureMonitorWindowsAgent ejecute el siguiente comando:
$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}"
Solución de errores de la extensión
Estado de la extensión: Error
Recomendación: Para una extensión con un estado de error, seleccione el vínculo Failed (Ver detalles). Vea toda la información sobre el error y aplique las sugerencias de solución de problemas.