Habilitación de las extensiones de máquina virtual de Azure mediante la CLI de Azure
En este artículo se explica cómo implementar, mejorar, actualizar y desinstalar extensiones de máquina virtual (VM), compatibles con servidores habilitados para Azure Arc. Muestra cómo realizar estas tareas en una máquina híbrida Linux o Windows mediante la CLI de Azure.
Nota:
Los servidores habilitados para Azure Arc no admiten la implementación y administración de extensiones de VM en máquinas virtuales de Azure. Para las máquinas virtuales de Azure, consulte el artículo de información general sobre la extensión de máquina virtual.
Requisitos previos
Use el entorno de Bash en Azure Cloud Shell. Para más información, consulte Inicio rápido para Bash en Azure Cloud Shell.
Si prefiere ejecutar comandos de referencia de la CLI localmente, instale la CLI de Azure. Si utiliza Windows o macOS, considere la posibilidad de ejecutar la CLI de Azure en un contenedor Docker. Para más información, vea Ejecución de la CLI de Azure en un contenedor de Docker.
Si usa una instalación local, inicie sesión en la CLI de Azure mediante el comando az login. Siga los pasos que se muestran en el terminal para completar el proceso de autenticación. Para ver otras opciones de inicio de sesión, consulte Inicio de sesión con la CLI de Azure.
En caso de que se le solicite, instale las extensiones de la CLI de Azure la primera vez que la use. Para más información sobre las extensiones, consulte Uso de extensiones con la CLI de Azure.
Ejecute az version para buscar cuál es la versión y las bibliotecas dependientes que están instaladas. Para realizar la actualización a la versión más reciente, ejecute az upgrade.
Instalación de la extensión de la CLI de Azure
Los comandos de ConnectedMachine no se incluyen como parte de la CLI de Azure. Antes de usar la CLI de Azure para conectarse a Azure y administrar extensiones de máquina virtual en el servidor híbrido administrado por los servidores habilitados para Azure Arc, debe cargar la extensión ConnectedMachine.
Puede realizar estas operaciones de administración desde su estación de trabajo. No es necesario ejecutarlas en el servidor habilitado para Azure Arc.
Ejecute el siguiente comando para instalar la interfaz de la línea de comandos de Azure y la extensión ConnectedMachine:
az extension add --name connectedmachine
Habilitación de extensiones
Para habilitar una extensión de máquina virtual en el servidor habilitado para Azure Arc, use az connectedmachine extension create
con los parámetros --machine-name
, --extension-name
, --location
, --type
, settings
y --publisher
.
En el ejemplo siguiente se habilita la extensión de script personalizado en un servidor habilitado para Azure Arc:
az connectedmachine extension create --machine-name "myMachineName" --name "CustomScriptExtension" --location "regionName" --type "CustomScriptExtension" --publisher "Microsoft.Compute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -gt 10000 }\\\"\"}" --type-handler-version "1.10" --resource-group "myResourceGroup"
En el ejemplo siguiente se habilita la extensión de máquina virtual de Azure Key Vault en un servidor habilitado para Azure Arc:
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.KeyVault" --type "KeyVaultForLinux or KeyVaultForWindows" --name "KeyVaultForLinux or KeyVaultForWindows" --settings '{"secretsManagementSettings": { "pollingIntervalInS": "60", "observedCertificates": ["observedCert1"] }, "authenticationSettings": { "msiEndpoint": "http://localhost:40342/metadata/identity" }}'
En el ejemplo anterior se habilita la extensión de Microsoft Antimalware en un servidor Windows habilitado para Azure Arc:
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Microsoft.Azure.Security" --type "IaaSAntimalware" --name "IaaSAntimalware" --settings '"{\"AntimalwareEnabled\": \"true\"}"'
En el ejemplo siguiente se habilita la extensión de Datadog en un servidor Windows habilitado para Azure Arc:
az connectedmachine extension create --resource-group "resourceGroupName" --machine-name "myMachineName" --location "regionName" --publisher "Datadog.Agent" --type "DatadogWindowsAgent" --settings '{"site": "us3.datadoghq.com"}' --protected-settings '{"api_key": "YourDatadogAPIKey" }'
Enumeración de extensiones instaladas
Para obtener una lista de las extensiones de máquina virtual en el servidor habilitado para Azure Arc, use az connectedmachine extension list
con los parámetros --machine-name
y --resource-group
.
Este es un ejemplo:
az connectedmachine extension list --machine-name "myMachineName" --resource-group "myResourceGroup"
De forma predeterminada, la salida de los comandos de la CLI de Azure está en JSON (notación de objetos JavaScript). Para cambiar la salida predeterminada a una lista o tabla, por ejemplo, use az config set core.output=table. También puede agregar --output
a cualquier comando para un cambio específico del formato de salida.
En el ejemplo siguiente se muestra la salida JSON parcial desde el comando az connectedmachine extension -list
:
[
{
"autoUpgradingMinorVersion": "false",
"forceUpdateTag": null,
"id": "/subscriptions/subscriptionId/resourceGroups/resourceGroupName/providers/Microsoft.HybridCompute/machines/SVR01/extensions/DependencyAgentWindows",
"location": "regionName",
"name": "DependencyAgentWindows",
"namePropertiesInstanceViewName": "DependencyAgentWindows",
Actualización de la configuración de la extensión
Algunas extensiones de máquina virtual requieren opciones de configuración para instalarlas en el servidor habilitado para Azure Arc (como la extensión de script personalizado). Para actualizar la configuración de una extensión, use az connectedmachine extension update
.
En el ejemplo siguiente se muestra cómo configurar la extensión de script personalizado:
az connectedmachine extension update --name "CustomScriptExtension" --type "CustomScriptExtension" --publisher "Microsoft.HybridCompute" --settings "{\"commandToExecute\":\"powershell.exe -c \\\"Get-Process | Where-Object { $_.CPU -lt 100 }\\\"\"}" --type-handler-version "1.10" --machine-name "myMachine" --resource-group "myResourceGroup"
Actualización de extensiones
Cuando se publica una nueva versión de una extensión de VM compatible, puede actualizarla a esa versión más reciente. Para actualizar una extensión de máquina virtual, use az connectedmachine upgrade-extension
con los parámetros --machine-name
, --resource-group
y --extension-targets
.
Para el parámetro --extension-targets
, debe especificar la extensión y la versión más reciente disponible. Para determinar la última versión disponible para una extensión, visite la página Extensiones del servidor habilitado para Azure Arc seleccionado en Azure Portal o ejecute az vm extension image list. Puede especificar varias extensiones en una única solicitud de actualización proporcionando:
- Una lista separada por comas de extensiones, definida por su publicador y tipo (separadas por un punto)
- La versión de destino de cada extensión
Puede revisar la versión de las extensiones de máquina virtual instaladas en cualquier momento ejecutando el comando az connectedmachine extension list
. El valor de propiedad typeHandlerVersion
representa la versión de la extensión.
Eliminación de extensiones
Para quitar una extensión de máquina virtual instalada en el servidor habilitado para Azure Arc, use az connectedmachine extension delete
con los parámetros --extension-name
, --machine-name
y --resource-group
.
Contenido relacionado
- Puede implementar, administrar y quitar extensiones de máquina virtual mediante Azure PowerShell, Azure Portal o plantillas de Azure Resource Manager.
- Puede encontrar información de solución de problemas en la guía de solución de problemas de extensiones de máquina virtual.
- Para más información sobre los comandos, consulte la información general de la extensión de máquina virtual de la CLI de Azure.