Características y extensiones de las máquinas virtuales para Windows

Las extensiones de máquina virtual (VM) de Azure son aplicaciones pequeñas que realizan tareas de automatización y configuración posterior a la implementación en máquinas virtuales de Azure. Por ejemplo, si una máquina virtual necesita que se instale software, protección antivirus o la capacidad para ejecutar un script en la máquina virtual, se puede usar una extensión de máquina virtual.

Puede ejecutar las extensiones de máquina virtual de Azure con la CLI de Azure, PowerShell, plantillas de Azure Resource Manager (ARM) y Azure Portal. Puede empaquetar extensiones implementando una máquina virtual nueva o ejecutándolas en cualquier sistema existente.

Este artículo proporciona una descripción general de las extensiones de máquina virtual de Azure, incluidos los requisitos previos y las instrucciones sobre cómo detectar, administrar y quitar extensiones. En este artículo se proporciona información generalizada porque hay muchas extensiones de máquina virtual disponibles. Cada una tiene una configuración potencialmente única y su propia documentación.

Casos de uso y ejemplos

Cada extensión de máquina virtual de Azure tiene un caso de uso específico. Estos son algunos ejemplos:

Además de las extensiones específicas de proceso, una extensión de script personalizado está disponible tanto para máquinas virtuales Windows como para máquinas virtuales Linux. La extensión de script personalizado para Windows permite que se ejecute cualquier script de PowerShell en una máquina virtual. Los scripts personalizados resultan útiles para diseñar implementaciones de Azure que requieren una configuración más allá de lo que las herramientas de Azure nativas pueden proporcionar.

Requisitos previos

Revise los siguientes requisitos previos para trabajar con extensiones de máquina virtual de Azure.

Agente de máquina virtual de Azure

Para administrar las extensiones en la máquina virtual, necesitará tener instalado el agente de máquina virtual de Azure para Windows. Este agente también se conoce como agente de máquina virtual de Azure o agente invitado de Windows. A medida que se prepare para instalar extensiones, tenga en cuenta que algunas extensiones tienen requisitos previos individuales, como el acceso a recursos o dependencias.

El agente de máquina virtual de Azure administra las interacciones entre una máquina virtual de Azure y el controlador de tejido de Azure. El agente es responsable de muchos aspectos funcionales de la implementación y administración de las máquinas virtuales de Azure, incluida la ejecución de extensiones de máquina virtual.

El agente de máquina virtual de Azure está preinstalado en imágenes de Azure Marketplace. También se puede instalar manualmente el agente en sistemas operativos compatibles.

El agente se ejecuta en varios sistemas operativos. Sin embargo, el marco de extensiones tiene un límite para los sistemas operativos que las extensiones usan. Algunas extensiones no son compatibles con todos los sistemas operativos y puede aparecer el código de error 51 ("Sistema operativo no compatible"). Revise la documentación de cada una de las extensiones para información sobre la compatibilidad.

Acceso de red

Los paquetes de extensión se descargan desde el repositorio de extensiones de Azure Storage. Las cargas de estado de extensión se publican en Azure Storage.

Si usa una versión compatible del agente de máquina virtual de Azure, no es necesario permitir el acceso a Azure Storage en la región de máquina virtual. Puede usar el agente de máquina virtual para redirigir la comunicación al controlador de tejido de Azure para las comunicaciones del agente (mediante la característica HostGAPlugin a través del canal con privilegios en la dirección IP privada 168.63.129.16). Si usa una versión no compatible del agente de máquina virtual, deberá autorizar el acceso saliente a Azure Storage en esa región desde la máquina virtual.

Importante

Si bloquea el acceso a la dirección IP 168.63.129.16 mediante el firewall invitado o a través de un proxy, se producirá un error en las extensiones. Se produce un error incluso si usa una versión compatible del agente de máquina virtual o configura el acceso saliente. Se requieren los puertos 80 y 32526.

Los agentes solo se pueden usar para descargar los paquetes de extensiones e informar el estado. Por ejemplo, si la instalación de una extensión requiere descargar un script de GitHub (extensión de script personalizado) o requiere acceso a Azure Storage (Azure Backup), deberá abrir otros puertos del firewall o del grupo de seguridad de red (NSG). Cada extensión posee requisitos distintos porque son aplicaciones por sí mismas. En el caso de las extensiones que requieren acceso a Azure Storage o Microsoft Entra ID, puede permitir el acceso mediante las etiquetas de servicio del grupo de seguridad de red de Azure.

El agente de máquina virtual de Azure no proporciona compatibilidad con el servidor proxy para habilitar el redireccionamiento de las solicitudes de tráfico del agente. El agente de máquina virtual de Azure depende del proxy personalizado (si tiene uno) para acceder a los recursos en Internet o en el host a través de la dirección IP 168.63.129.16.

Detección de extensiones de máquina virtual

Hay muchas extensiones de máquina virtual diferentes disponibles para su uso con máquinas virtuales de Azure. Para ver una lista completa, use el cmdlet Get-AzVMExtensionImage de PowerShell.

El siguiente comando muestra todas las extensiones de máquina virtual disponibles en la ubicación de la región Oeste de EE. UU.:

Get-AzVmImagePublisher -Location "West US" |
Get-AzVMExtensionImageType |
Get-AzVMExtensionImage | Select Type, Version

Este comando proporciona una salida similar al siguiente ejemplo:

Type                Version
----                -------
AcronisBackup       1.0.33
AcronisBackup       1.0.51
AcronisBackupLinux  1.0.33
AlertLogicLM        1.3.0.1
AlertLogicLM        1.3.0.0
AlertLogicLM        1.4.0.1

Ejecución de extensiones de máquina virtual

Las extensiones de máquinas virtuales de Azure se ejecutan en máquinas virtuales existentes, lo que resulta útil si es preciso realizar cambios de configuración o recuperar la conectividad en una máquina virtual ya implementada. Las extensiones de máquina virtual también se pueden agrupar con implementaciones de plantillas de ARM. Mediante el uso de extensiones con plantillas de ARM, puede implementar y configurar máquinas virtuales de Azure sin intervención posterior a la implementación.

Puede usar los métodos siguientes para ejecutar una extensión en una máquina virtual existente.

Nota:

Algunos de los ejemplos siguientes usan valores de parámetro "<placeholder>" en los comandos. Antes de ejecutar cada comando, asegúrese de reemplazar los valores "<placeholder>" por valores específicos de la configuración.

PowerShell

Existen varios comandos de PowerShell para ejecutar extensiones individuales. Para ver una lista, use el comando Get-Command y filtre por Extensión:

Get-Command Set-Az*Extension* -Module Az.Compute

Este comando proporciona una salida similar al siguiente ejemplo:

CommandType     Name                                          Version    Source
-----------     ----                                          -------    ------
Cmdlet          Set-AzVMAccessExtension                       4.5.0      Az.Compute
Cmdlet          Set-AzVMADDomainExtension                     4.5.0      Az.Compute
Cmdlet          Set-AzVMAEMExtension                          4.5.0      Az.Compute
Cmdlet          Set-AzVMBackupExtension                       4.5.0      Az.Compute
Cmdlet          Set-AzVMBginfoExtension                       4.5.0      Az.Compute
Cmdlet          Set-AzVMChefExtension                         4.5.0      Az.Compute
Cmdlet          Set-AzVMCustomScriptExtension                 4.5.0      Az.Compute
Cmdlet          Set-AzVMDiagnosticsExtension                  4.5.0      Az.Compute
Cmdlet          Set-AzVMDiskEncryptionExtension               4.5.0      Az.Compute
Cmdlet          Set-AzVMDscExtension                          4.5.0      Az.Compute
Cmdlet          Set-AzVMExtension                             4.5.0      Az.Compute
Cmdlet          Set-AzVMSqlServerExtension                    4.5.0      Az.Compute
Cmdlet          Set-AzVmssDiskEncryptionExtension             4.5.0      Az.Compute

En el ejemplo siguiente se usa la extensión de script personalizado para descargar un script desde un repositorio de GitHub en la máquina virtual de destino y, a continuación, ejecutar el script.

Set-AzVMCustomScriptExtension -ResourceGroupName "<myResourceGroup>" `
    -VMName "<myVM>" -Name "<myCustomScript>" `
    -FileUri "https://raw.githubusercontent.com/neilpeterson/nepeters-azure-templates/master/windows-custom-script-simple/support-scripts/Create-File.ps1" `
    -Run "Create-File.ps1" -Location "<myVMregion>"

En el ejemplo siguiente se usa la extensión de VMAccess para restablecer la contraseña administrativa de una máquina virtual Windows como una contraseña temporal. Una vez que ejecute este código, deberá restablecer la contraseña en el primer inicio de sesión.

$cred=Get-Credential

Set-AzVMAccessExtension -ResourceGroupName "myResourceGroup" -VMName "myVM" -Name "myVMAccess" `
    -Location "myVMregion" -UserName $cred.GetNetworkCredential().Username `
    -Password $cred.GetNetworkCredential().Password -typeHandlerVersion "2.0"

Puede usar el comando Set-AzVMExtension para iniciar cualquier extensión de máquina virtual.

Azure Portal

Puede aplicar las extensiones de máquina virtual a una máquina virtual existente a través de Azure Portal. Seleccione la máquina virtual en el portal, seleccione Extensiones y aplicaciones y, después, + Agregar. Elija la extensión que quiera en la lista de extensiones disponibles y siga las instrucciones del asistente.

En el ejemplo siguiente se muestra la instalación de la extensión de Microsoft Antimalware desde Azure Portal:

Screenshot of the dialog for installing the Microsoft Antimalware extension.

Plantillas del Administrador de recursos de Azure

Puede agregar extensiones de máquina virtual a una plantilla de ARM y ejecutarlas con la implementación de la plantilla. Al implementar una extensión con una plantilla, puede crear implementaciones de Azure completamente configuradas.

El siguiente ejemplo de JSON es de una plantilla de ARM que implementa un conjunto de máquinas virtuales de carga equilibrada y una base de datos de Azure SQL y, a continuación, instala una aplicación .NET Core en cada máquina virtual. La extensión de máquina virtual se encarga de la instalación de software.

{
    "apiVersion": "2015-06-15",
    "type": "extensions",
    "name": "config-app",
    "location": "[resourceGroup().location]",
    "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'),copyindex())]",
    "[variables('musicstoresqlName')]"
    ],
    "tags": {
    "displayName": "config-app"
    },
    "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "typeHandlerVersion": "1.9",
    "autoUpgradeMinorVersion": true,
    "settings": {
        "fileUris": [
        "https://raw.githubusercontent.com/Microsoft/dotnet-core-sample-templates/master/dotnet-core-music-windows/scripts/configure-music-app.ps1"
        ]
    },
    "protectedSettings": {
        "commandToExecute": "[concat('powershell -ExecutionPolicy Unrestricted -File configure-music-app.ps1 -user ',parameters('adminUsername'),' -password ',parameters('adminPassword'),' -sqlserver ',variables('musicstoresqlName'),'.database.windows.net')]"
    }
    }
}

Para más información sobre como crear plantillas de ARM, vea Máquinas virtuales de una plantilla de ARM.

Protección de datos de extensión de máquina virtual

Cuando ejecuta una extensión de máquina virtual, puede que sea necesario incluir información confidencial como credenciales, nombres de cuenta de almacenamiento y claves de acceso. Muchas extensiones de máquina virtual incluyen una configuración protegida que cifra datos y los descifra solo dentro de la máquina virtual de destino. Cada extensión tiene un esquema específico de configuración protegida, y cada esquema se detalla de forma individual en la documentación específica de extensión.

En el ejemplo de JSON siguiente se muestra una instancia de la extensión de script personalizado para Windows. El comando que se ejecuta incluye un conjunto de credenciales. En este ejemplo, el comando que se ejecutará no está cifrado.

{
    "apiVersion": "2015-06-15",
    "type": "extensions",
    "name": "config-app",
    "location": "[resourceGroup().location]",
    "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'),copyindex())]",
    "[variables('musicstoresqlName')]"
    ],
    "tags": {
    "displayName": "config-app"
    },
    "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "typeHandlerVersion": "1.9",
    "autoUpgradeMinorVersion": true,
    "settings": {
        "fileUris": [
        "https://raw.githubusercontent.com/Microsoft/dotnet-core-sample-templates/master/dotnet-core-music-windows/scripts/configure-music-app.ps1"
        ],
        "commandToExecute": "[concat('powershell -ExecutionPolicy Unrestricted -File configure-music-app.ps1 -user ',parameters('adminUsername'),' -password ',parameters('adminPassword'),' -sqlserver ',variables('musicstoresqlName'),'.database.windows.net')]"
    }
    }
}

Mover la propiedad commandToExecute a la configuración protected ayuda a proteger la cadena de ejecución, tal como se muestra en el ejemplo siguiente:

{
    "apiVersion": "2015-06-15",
    "type": "extensions",
    "name": "config-app",
    "location": "[resourceGroup().location]",
    "dependsOn": [
    "[concat('Microsoft.Compute/virtualMachines/', variables('vmName'),copyindex())]",
    "[variables('musicstoresqlName')]"
    ],
    "tags": {
    "displayName": "config-app"
    },
    "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "typeHandlerVersion": "1.9",
    "autoUpgradeMinorVersion": true,
    "settings": {
        "fileUris": [
        "https://raw.githubusercontent.com/Microsoft/dotnet-core-sample-templates/master/dotnet-core-music-windows/scripts/configure-music-app.ps1"
        ]
    },
    "protectedSettings": {
        "commandToExecute": "[concat('powershell -ExecutionPolicy Unrestricted -File configure-music-app.ps1 -user ',parameters('adminUsername'),' -password ',parameters('adminPassword'),' -sqlserver ',variables('musicstoresqlName'),'.database.windows.net')]"
    }
    }
}

En una máquina virtual de infraestructura como servicio (IaaS) de Azure que usa extensiones, en la consola de certificados, es posible que vea certificados que tienen el asunto Generador de certificados CRP de Windows Azure. En una máquina virtual de RedDog Front End (RDFE) clásica, estos certificados tienen el nombre de asunto Administración de servicios de Windows Azure para extensiones.

Estos certificados protegen la comunicación entre la máquina virtual y su host durante la transferencia de los valores protegidos (contraseña y otras credenciales) que las extensiones usan. El controlador de tejido de Azure compila los certificados y los pasa al agente de máquina virtual de Azure. Si detiene e inicia la máquina virtual cada día, el controlador de tejido puede crear un certificado. El certificado se almacena en el almacén de certificados personales del equipo. Estos certificados se pueden eliminar. El agente de máquina virtual de Azure puede volver a crear certificados si es necesario.

Cómo se actualizan los agentes y las extensiones

Los agentes y las extensiones comparten el mismo mecanismo de actualización.

Cuando haya una actualización disponible y las actualizaciones automáticas estén habilitadas, la actualización se instalará en la máquina virtual solo después de que una extensión u otro modelo de máquina virtual cambie. Los cambios pueden incluir:

  • Discos de datos.
  • Extensiones
  • Etiquetas de extensión
  • Contenedor de diagnósticos de arranque
  • Secretos del sistema operativo invitado
  • Tamaño de VM
  • Perfil de red

Los publicadores hacen que las actualizaciones estén disponibles para las regiones en varias ocasiones. Es posible que pueda tener máquinas virtuales en diferentes regiones en diferentes versiones.

Nota

Es posible que algunas actualizaciones necesiten reglas de firewall adicionales. Para obtener más información, consulte Acceso de red.

Lista de extensiones implementadas en una máquina virtual

Puede usar el siguiente comando para enumerar las extensiones implementadas en una máquina virtual:

$vm = Get-AzVM -ResourceGroupName "<myResourceGroup>" -VMName "<myVM>"
$vm.Extensions | select Publisher, VirtualMachineExtensionType, TypeHandlerVersion

Esto genera una salida similar a la del siguiente ejemplo:

Publisher             VirtualMachineExtensionType          TypeHandlerVersion
---------             ---------------------------          ------------------
Microsoft.Compute     CustomScriptExtension                1.9

Actualizaciones del agente

El agente de máquina virtual de Azure solo contiene código de control de extensiones. El código de aprovisionamiento de Windows es independiente. Puede desinstalar el agente de máquina virtual de Azure. No se puede deshabilitar la actualización automática del agente de máquina virtual de Azure.

El código de control de extensiones es responsable de las siguientes tareas:

  • Comunicación con el tejido de Azure.
  • Control de las operaciones de extensión de máquina virtual, como instalaciones, informes de estado, actualización de las extensiones individuales y eliminación de extensiones. Las actualizaciones contienen revisiones de seguridad, correcciones de errores y mejoras en el código de control de extensiones.

Para comprobar qué versión está ejecutando, consulte Detección del agente de máquina virtual de Azure.

Actualizaciones de extensiones

Cuando hay una actualización de extensión disponible y las actualizaciones automáticas están habilitadas, si un modelo de máquina virtual cambia, el agente de máquina virtual de Azure descarga y actualiza la extensión.

Las actualizaciones de extensiones automáticas son secundarias o revisiones. Puede optar por recibir, o no, las actualizaciones secundarias cuando aprovisiona la extensión. En el ejemplo siguiente se muestra cómo actualizar automáticamente versiones secundarias en una plantilla de ARM mediante el parámetro "autoUpgradeMinorVersion": true,:

    "properties": {
    "publisher": "Microsoft.Compute",
    "type": "CustomScriptExtension",
    "typeHandlerVersion": "1.9",
    "autoUpgradeMinorVersion": true,
    "settings": {
        "fileUris": [
        "https://raw.githubusercontent.com/Microsoft/dotnet-core-sample-templates/master/dotnet-core-music-windows/scripts/configure-music-app.ps1"
        ]
    },

Para obtener las correcciones de errores secundarias más recientes, se recomienda encarecidamente que siempre seleccione la actualización automática en las implementaciones de sus extensiones. No es posible optar por no recibir actualizaciones de revisiones que incluyen correcciones de errores clave o de seguridad.

Si deshabilita las actualizaciones automáticas o necesita actualizar una versión principal, utilice el comando Set-AzVMExtension y especifique la versión de destino.

Identificación de las actualizaciones de extensiones

Hay varias maneras de identificar las actualizaciones de una extensión.

Identificación de si la extensión tiene establecida la opción autoUpgradeMinorVersion en una máquina virtual

Es posible ver el modelo de máquina virtual para determinar si la extensión se aprovisiona con el parámetro autoUpgradeMinorVersion. Para comprobar el modelo de máquina virtual, use el comando Get-AzVm y proporcione el nombre de la VM y el grupo de recursos como se indica a continuación:

 $vm = Get-AzVm -ResourceGroupName "myResourceGroup" -VMName "myVM"
 $vm.Extensions

En la siguiente salida de ejemplo se muestra el parámetro autoUpgradeMinorVersion establecido en true:

ForceUpdateTag              :
Publisher                   : Microsoft.Compute
VirtualMachineExtensionType : CustomScriptExtension
TypeHandlerVersion          : 1.9
AutoUpgradeMinorVersion     : True

Identificación de cuándo se produce un evento autoUpgradeMinorVersion

Para ver cuándo se produce una actualización de la extensión, revise los registros del agente de la máquina virtual en C:\WindowsAzure\Logs\WaAppAgent.log.

En el ejemplo siguiente, se muestra la máquina virtual con la Microsoft.Compute.CustomScriptExtension versión 1.8 instalada y una revisión disponible para la versión 1.9.

[INFO]  Getting plugin locations for plugin 'Microsoft.Compute.CustomScriptExtension'. Current Version: '1.8', Requested Version: '1.9'
[INFO]  Auto-Upgrade mode. Highest public version for plugin 'Microsoft.Compute.CustomScriptExtension' with requested version: '1.9', is: '1.9'

Permisos del agente

Para realizar sus tareas, el agente de máquina virtual de Azure se deberá ejecutar como sistema local.

Solución de problemas de extensiones de máquina virtual

Cada extensión de máquina virtual puede tener unos pasos de solución de problemas específicos. Por ejemplo, cuando use la extensión de script personalizado, podrá encontrar los detalles de ejecución de script localmente en la máquina virtual donde se ejecute la extensión.

Las acciones de solución de problemas siguientes se aplican a todas las extensiones de máquina virtual:

  • Para comprobar el registro del agente de máquina virtual de Azure, consulte la actividad cuando la extensión se aprovisionaba en C:\WindowsAzure\Logs\WaAppAgent.log.

  • Revise los registros de la extensión para ver más detalles en C:\WindowsAzure\Logs\Plugins<NombreDeLaExtensión>.

  • Consulte las secciones de solución de problemas de la documentación específica de la extensión para obtener códigos de error, problemas conocidos y otra información específica de la extensión.

  • Examine los registros del sistema. Compruebe si hay otras operaciones que puedan haber interferido con la extensión, como una instalación de ejecución prolongada de otra aplicación que requería acceso exclusivo al administrador de paquetes.

  • En una máquina virtual, si hay una extensión existente con un estado de aprovisionamiento con errores, no se podrá instalar ninguna extensión nueva.

Motivos comunes para los errores de extensiones

Estos son algunos de los motivos comunes por los que se puede producir un error en una extensión:

  • Las extensiones tienen 20 minutos para ejecutarse. (Las excepciones son Script personalizado, Chef y DSC, que tienen 90 minutos). Si la implementación supera este tiempo, se marca como tiempo de espera. La causa de esta incidencia podría ser que las máquinas virtuales con pocos recursos u otras configuraciones de máquina virtual o tareas de inicio consumen grandes cantidades de recursos mientras la extensión intenta aprovisionarse.

  • No se cumplen los requisitos previos mínimos. Algunas extensiones tienen dependencias de las SKU de la máquina virtual, como las imágenes de HPC. Las extensiones pueden tener ciertos requisitos de acceso de red, como comunicaciones con Azure Storage o servicios públicos. Otros ejemplos podrían ser el acceso a repositorios de paquetes, quedarse sin espacio en disco o restricciones de seguridad.

  • El acceso al administrador de paquetes es exclusivo. En algunos casos, la configuración de máquina virtual de ejecución prolongada y la instalación de la extensión podrían entrar en conflicto, puesto que ambas necesitan acceso exclusivo al administrador de paquetes.

Consulta del estado de la extensión

Después de que una extensión de máquina virtual se ejecute en una máquina virtual, use el comando Get-AzVM para devolver el estado de la extensión. El resultado Substatuses[0] muestra que el aprovisionamiento de la extensión se ha realizado correctamente, lo que significa que se implementó correctamente en la máquina virtual. Si viera el resultado Substatuses[1], querrá decir que se produjo un error en la ejecución de la extensión dentro de la máquina virtual.

Get-AzVM -ResourceGroupName "myResourceGroup" -VMName "myVM" -Status

La salida es similar a la del ejemplo siguiente:

Extensions[0]           :
  Name                  : CustomScriptExtension
  Type                  : Microsoft.Compute.CustomScriptExtension
  TypeHandlerVersion    : 1.9
  Substatuses[0]        :
    Code                : ComponentStatus/StdOut/succeeded
    Level               : Info
    DisplayStatus       : Provisioning succeeded
    Message             : Windows PowerShell \nCopyright (C) Microsoft Corporation. All rights reserved.\n
  Substatuses[1]        :
    Code                : ComponentStatus/StdErr/succeeded
    Level               : Info
    DisplayStatus       : Provisioning succeeded
    Message             : The argument 'cseTest%20Scriptparam1.ps1' to the -File parameter does not exist. Provide the path to an existing '.ps1' file as an argument to the

-File parameter.
  Statuses[0]           :
    Code                : ProvisioningState/failed/-196608
    Level               : Error
    DisplayStatus       : Provisioning failed
    Message             : Finished executing command

También puede encontrar el estado de ejecución de la extensión en Azure Portal. Seleccione la máquina virtual, seleccione Extensiones y, a continuación, seleccione la extensión deseada.

Repetición de ejecución de una extensión de máquina virtual

En algunos casos, es posible que tenga que volver a ejecutar una extensión de máquina virtual. Es posible volver ejecutar una extensión si la quita y la vuelve a ejecutar con un método de ejecución de su elección. Para quitar una extensión, use el comando Remove-AzVMExtension, tal y como se indica a continuación:

Remove-AzVMExtension -ResourceGroupName "myResourceGroup" -VMName "myVM" -Name "myExtensionName"

También es posible quitar una extensión en Azure Portal. Seleccione una máquina virtual, seleccione Extensiones y, a continuación, seleccione la extensión deseada. Seleccione Desinstalar.

Referencia de extensión de máquina virtual común

En la tabla siguiente, se proporcionan algunas referencias comunes de extensiones de máquina virtual.

Nombre de la extensión Descripción
Extensión de la secuencia de comandos personalizada para Windows Ejecución de scripts en una máquina virtual de Azure
Extensión DSC para Windows Aplicación de las configuraciones de estado deseadas de PowerShell a una máquina virtual
Extensión de Diagnósticos de Azure Administración de Azure Diagnostics
Extensión VMAccess Administración de usuarios y credenciales

Pasos siguientes

Para más información sobre las extensiones de máquina virtual, consulte Características y extensiones de las máquinas virtuales de Azure.