Compartir a través de


Preparación de una imagen de Ubuntu para máquinas virtuales locales de Azure

Se aplica a: Azure Local, versión 23H2

En este artículo se describe cómo preparar una imagen de Ubuntu para crear una máquina virtual (VM) en Azure Local. La CLI de Azure se usa para la creación de imágenes de máquina virtual.

Requisitos previos

Antes de comenzar, cumpla los siguientes requisitos previos:

  • Tener acceso a una instancia local de Azure. Este sistema se implementa, registra y conecta a Azure Arc. Vaya a la página Información general del recurso local de Azure. En la pestaña Servidor del panel derecho, Azure Arc debe aparecer como Conectado.
  • Descargue la imagen de servidor Ubuntu compatible más reciente en el sistema local de Azure. Las versiones admitidas del sistema operativo son Ubuntu 18.04, 20.04 y 22.04 LTS. Esta imagen se prepara para crear una imagen de máquina virtual.

Flujo de trabajo

Para preparar una imagen de Ubuntu y crear una imagen de máquina virtual a partir de esa imagen:

  1. Creación de una máquina virtual Ubuntu
  2. Configuración de la máquina virtual
  3. Limpieza de la configuración residual
  4. Creación de una imagen de máquina virtual Ubuntu

En las secciones siguientes se proporcionan instrucciones detalladas para cada paso del flujo de trabajo.

Creación de una imagen de máquina virtual a partir de una imagen de Ubuntu

Importante

  • No use un disco VHD de máquina virtual de Azure para preparar la imagen de máquina virtual para Azure Local.
  • Se recomienda preparar una imagen de Ubuntu si tiene previsto habilitar la administración de invitados en las máquinas virtuales.

Siga estos pasos en Azure Local para crear una imagen de máquina virtual mediante la CLI de Azure.

Paso 1: Creación de una máquina virtual Ubuntu

Para usar la imagen de Ubuntu descargada para aprovisionar una máquina virtual:

  1. Use la imagen descargada para crear una máquina virtual con las siguientes especificaciones:

    1. Proporcione un nombre descriptivo para la máquina virtual.

      Captura de pantalla que muestra el Asistente para nueva máquina virtual en la página Especificar nombre y ubicación.

    2. Especifique la generación 2 de la máquina virtual a medida que trabaje con una imagen VHDX aquí.

      Captura de pantalla que muestra el Asistente para nueva máquina virtual en la página Especificar generación.

    3. Seleccione Instalar sistema operativo en una imagen de arranque. Apunte a la iso que descargó anteriormente.

      Captura de pantalla que muestra el Asistente para nueva máquina virtual en la página Opciones de instalación.

    Para obtener instrucciones paso a paso, consulte Aprovisionamiento de una máquina virtual mediante el Administrador de Hyper-V.

  2. Use el certificado UEFI para proteger el arranque de la máquina virtual.

    1. Una vez creada la máquina virtual, se muestra en el Administrador de Hyper-V. Seleccione la máquina virtual, haga clic con el botón derecho en ella y, a continuación, seleccione Configuración.
    2. En el panel izquierdo, seleccione la pestaña Seguridad . A continuación, en Arranque seguro, en la lista desplegable Plantilla , seleccione Entidad de certificación ueFI de Microsoft.
    3. Seleccione Aceptar para guardar los cambios.

    Captura de pantalla que muestra las opciones de arranque seguro de la máquina virtual en la página Configuración.

Paso 2: Configuración de la máquina virtual

Siga estos pasos en Azure Local para configurar la máquina virtual que aprovisionó anteriormente:

  1. Inicie sesión en la máquina virtual. Consulte los pasos descritos en Conexión a una máquina virtual Linux.

  2. Para descargar todas las listas de paquetes más recientes de los repositorios, ejecute el siguiente comando:

    sudo apt update
    
  3. Instale el kernel personalizado de Azure. Este paso es necesario para que la máquina virtual obtenga una dirección IP para la interfaz de red.

    sudo apt install linux-azure -y
    
  4. Instale el servidor SSH. Ejecute el siguiente comando:

    sudo apt install openssh-server openssh-client -y
    
  5. Configure sudo sin contraseña. Agregue el siguiente comando al final del /etc/sudoers archivo mediante visudo:

    ALL ALL=(ALL) NOPASSWD:ALL
    

Paso 3: Limpieza de la configuración residual

Elimine archivos y datos específicos de la máquina virtual para que pueda crear una imagen de máquina virtual limpia sin ningún historial ni configuraciones predeterminadas. Siga estos pasos en Azure Local para limpiar la configuración residual.

Nota:

En función de la versión de Ubuntu que use, es posible que algunos de estos archivos no existan.

  1. Limpie cloud-init las configuraciones predeterminadas.

    sudo rm -f /etc/cloud/cloud.cfg.d/50-curtin-networking.cfg /etc/cloud/cloud.cfg.d/curtin-preserve-sources.cfg /etc/cloud/cloud.cfg.d/99-installer.cfg /etc/cloud/cloud.cfg.d/subiquity-disable-cloudinit-networking.cfg
    sudo rm -f /etc/cloud/ds-identify.cfg
    sudo rm -f /etc/netplan/*.yaml
    
  2. Limpie los registros y la memoria caché.

    sudo cloud-init clean --logs --seed
    sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
    sudo apt-get clean
    
  3. Quite el historial de Bash.

    rm -f ~/.bash_history 
    export HISTSIZE=0 
    logout
    
  4. Apague la máquina virtual. En el Administrador de Hyper-V, vaya a Acción>apagada.

Paso 4: Creación de la imagen de máquina virtual

Siga estos pasos en Azure Local para crear la imagen de máquina virtual a partir del VHDX que creó anteriormente.

Use la CLI de Azure para crear la imagen de máquina virtual:

  1. Ejecute PowerShell como administrador.

  2. Inicia sesión. Ejecute el siguiente cmdlet:

    az login
    
  3. Establezca la suscripción. Ejecute el siguiente cmdlet:

    az account set --subscription <Subscription ID>
    
  4. Establezca parámetros para la suscripción, el grupo de recursos, la ubicación personalizada, la ubicación, el tipo de sistema operativo para la imagen, el nombre de la imagen y la ruta de acceso donde se encuentra la imagen. Reemplace los parámetros de < > por los valores adecuados.

    $subscription = "<Subscription ID>"
    $resource_group = "<Resource group>"
    $customLocation = "<Custom location>"
    $location = "<Location for your Azure Local>"
    $osType = "<OS of source image>"
    

    Los parámetros se describen en la tabla siguiente.

    Parámetro Descripción
    subscription Suscripción asociada a la instancia local de Azure.
    resource_group Grupo de recursos de la instancia local de Azure que asocia a esta imagen.
    location Ubicación de la instancia local de Azure. Por ejemplo, la ubicación podría ser eastus o westreurope.
    os-type Sistema operativo asociado a la imagen de origen. Este sistema puede ser Windows o Linux.
  5. Use el VHDX de la máquina virtual para crear una imagen de la galería. Use esta imagen de máquina virtual para crear máquinas virtuales de Azure Arc en Azure Local.

    Asegúrese de copiar el VHDX en el almacenamiento de usuario en el volumen compartido del clúster de Azure Local. Por ejemplo, la ruta de acceso podría ser similar C:\ClusterStorage\UserStorage_1\linuxvhdxa .

    $imagePath = "Path to user storage in CSV" 
    $imageName = "mylinuxvmimg" 
    $osType = "Linux"
    
    az stack-hci-vm image create --subscription $subscription -g $resource_group --custom-location $customLocation --location $location --image-path $imagePath --name $imageName --debug --os-type $osType 
    
  6. Compruebe que se crea la imagen.