Evaluación de servidores habilitados para Azure Arc en una máquina virtual de Azure

Precaución

En este artículo se hace referencia a CentOS, una distribución de Linux que está cerca de su estado Final de ciclo vida (EOL). Tenga en cuenta su uso y planeación en consecuencia. Para más información, consulte la Guía de fin de ciclo de vida de CentOS.

Los servidores habilitados para Azure Arc están diseñados para ayudarle a conectar a Azure los servidores que se ejecutan en el entorno local o en otras nubes. Normalmente, no conectaría una máquina virtual de Azure a Azure Arc porque todas las mismas funcionalidades están disponibles de forma nativa para estas máquinas virtuales. Las máquinas virtuales de Azure ya tienen una representación en Azure Resource Manager, extensiones de máquina virtual, identidades administradas y Azure Policy. Si intenta instalar servidores habilitados para Azure Arc en una máquina virtual de Azure, recibirá un mensaje de error que indica que no se admite.

Aunque no puede instalar servidores habilitados para Azure Arc en una máquina virtual de Azure en escenarios de producción, es posible configurar servidores habilitados para Azure Arc que se ejecuten en una máquina virtual de Azure solo con fines de evaluación y prueba. En este artículo se explica cómo preparar una máquina virtual de Azure para que tenga un aspecto similar a un servidor local con fines de prueba.

Nota:

Los pasos de este artículo están destinados a máquinas virtuales hospedadas en la nube de Azure. Los servidores habilitados para Azure Arc no se admiten en máquinas virtuales que se ejecutan en Azure Stack Hub o Azure Stack Edge.

Requisitos previos

Plan

Para empezar a administrar la VM de Azure como un servidor habilitado para Azure Arc, debe realizar los siguientes cambios en la VM de Azure para poder instalar y configurar servidores habilitados para Azure Arc.

  1. Quite las extensiones de máquina virtual implementadas en la máquina virtual de Azure, como el agente de Log Analytics. Aunque los servidores habilitados para Azure Arc admiten muchas de las mismas extensiones que las máquinas virtuales de Azure, el agente de Azure Connected Machine no puede administrar las extensiones de la máquina virtual ya implementadas en la máquina virtual.

  2. Deshabilite el agente invitado de Windows o Linux de Azure. El agente invitado de VM de Azure tiene un propósito similar al del agente de Azure Connected Machine. Para evitar conflictos entre los dos, es necesario deshabilitar el agente de máquina virtual de Azure. Una vez deshabilitado, no puede usar extensiones de máquina virtual ni algunos servicios de Azure.

  3. Cree una regla de seguridad para denegar el acceso a Azure Instance Metadata Service (IMDS). IMDS es una API REST a la que las aplicaciones pueden llamar para obtener información sobre la representación de la máquina virtual en Azure, lo que incluye su ubicación e identificador de recurso. IMDS también proporciona acceso a las identidades administradas asignadas a la máquina. Los servidores habilitados para Azure Arc proporcionan su propia implementación de IMDS y devuelven información sobre la representación de Azure Arc de la máquina virtual. Para evitar situaciones en las que ambos puntos de conexión de IMDS están disponibles y las aplicaciones tienen que elegir entre los dos, debe bloquear el acceso al IMDS de la máquina virtual de Azure para que la implementación de IMDS del servidor habilitado para Azure Arc sea la única disponible.

Después de realizar estos cambios, la máquina virtual de Azure se comporta como cualquier máquina o servidor fuera de Azure y es el punto de partida necesario para instalar y evaluar los servidores habilitados para Azure Arc.

Cuando los servidores habilitados para Azure Arc estén configurados en la VM, verá dos representaciones de ella en Azure. Una es el recurso de máquina virtual de Azure, con un tipo de recurso Microsoft.Compute/virtualMachines, y la otra es un recurso de Azure Arc, con un tipo de recurso Microsoft.HybridCompute/machines. Dado que se impide la administración del sistema operativo invitado desde el servidor host físico compartido, la mejor manera de considerar los dos recursos es que el recurso de máquina virtual de Azure es el hardware virtual de la máquina virtual y vamos a controlar el estado de energía y ver información sobre sus configuraciones de SKU, red y almacenamiento. El recurso de Azure Arc administra el sistema operativo invitado de esa VM y se puede usar para instalar extensiones, ver los datos de cumplimiento de Azure Policy y completar cualquier otra tarea compatible con servidores habilitados para Azure Arc.

Reconfiguración de la máquina virtual de Azure

Nota:

En Windows, establezca la variable de entorno para invalidar ARC en una instalación de máquina virtual de Azure.

[System.Environment]::SetEnvironmentVariable("MSFT_ARC_TEST",'true', [System.EnvironmentVariableTarget]::Machine)
  1. Quite las extensiones de máquina virtual de la máquina virtual de Azure.

    En Azure Portal, vaya al recurso de máquina virtual de Azure y, en el panel de la izquierda, seleccione Extensiones. Si hay extensiones instaladas en la máquina virtual, seleccione cada extensión individualmente y, luego, elija Desinstalar. Espere a que todas las extensiones terminen de desinstalarse antes de continuar con el paso 2.

  2. Deshabilite el agente invitado de máquina virtual de Azure.

    Para deshabilitar el agente invitado de máquina virtual de Azure, conéctese a la máquina virtual mediante una conexión a Escritorio remoto (Windows) o SSH (Linux) y ejecute los siguientes comandos para deshabilitar el agente invitado.

    Puede ejecutar los siguientes comandos de PowerShell:

    Set-Service WindowsAzureGuestAgent -StartupType Disabled -Verbose
    Stop-Service WindowsAzureGuestAgent -Force -Verbose
    

    En Linux, ejecute los siguientes comandos:

    sudo systemctl stop walinuxagent
    sudo systemctl disable walinuxagent
    
  3. Bloquee el acceso al punto de conexión IMDS de Azure.

    Nota:

    Las siguientes configuraciones deben aplicarse para 169.254.169.254 y 169.254.169.253. Estos son puntos de conexión que se usan para IMDS en Azure y Azure Stack HCI, respectivamente.

    Mientras sigue conectado al servidor, ejecute los siguientes comandos para bloquear el acceso al punto de conexión IMDS de Azure. En Windows, ejecute el siguiente comando de PowerShell:

    New-NetFirewallRule -Name BlockAzureIMDS -DisplayName "Block access to Azure IMDS" -Enabled True -Profile Any -Direction Outbound -Action Block -RemoteAddress 169.254.169.254
    

    En Linux, consulte la documentación de su distribución para saber la mejor manera de bloquear el acceso saliente a 169.254.169.254/32 a través del puerto TCP 80. Normalmente bloqueará el acceso saliente con el firewall integrado, pero también puede hacerlo temporalmente con iptables o nftables.

    Si la máquina virtual de Azure ejecuta Ubuntu, realice los pasos siguientes para configurar su firewall sin complicaciones (UFW):

    sudo ufw --force enable
    sudo ufw deny out from any to 169.254.169.254
    sudo ufw default allow incoming
    

    Si la máquina virtual de Azure ejecuta CentOS, Red Hat o SUSE Linux Enterprise Server (SLES), realice los pasos siguientes para configurar firewalld:

    sudo firewall-cmd --permanent --direct --add-rule ipv4 filter OUTPUT 1 -p tcp -d 169.254.169.254 -j REJECT
    sudo firewall-cmd --reload
    

    Para otras distribuciones, consulte los documentos de firewall o configure una regla genérica de tipo "iptables" con el siguiente comando:

    sudo iptables -I OUTPUT 1 -d 169.254.169.254 -j REJECT
    

    Nota:

    La configuración de tipo "iptables" debe establecerse después de cada reinicio, a menos que se utilice una solución iptables persistente.

  4. Instale y configure el agente de Azure Connected Machine.

    La VM ya está lista para empezar a evaluar los servidores habilitados para Azure Arc. Para instalar y configurar el agente de Azure Connected Machine, consulte Conexión de máquinas híbridas mediante Azure Portal y siga los pasos para generar un script de instalación e instalarlo mediante el método generado por script.

    Nota:

    Si la conectividad saliente a Internet está restringida desde la máquina virtual de Azure, puede descargar el paquete del agente manualmente. Copie el paquete del agente en la VM de Azure y modifique el script de instalación de servidores habilitados para Azure Arc para hacer referencia a la carpeta de origen.

Si se perdió uno de los pasos, el script de instalación detecta que se está ejecutando en una máquina virtual de Azure y finaliza con un error. Compruebe que ha completado los pasos 1 a 3 y, luego, vuelva a ejecutar el script.

Comprobación de la conexión con Azure Arc

Después de instalar y configurar el agente para que se registre en los servidores habilitados para Azure Arc, vaya a Azure Portal a fin de comprobar que el servidor se ha conectado correctamente. Vea la máquina en Azure Portal.

Una conexión de servidor correcta

Pasos siguientes