Preparación de la imagen de Azure Marketplace de Red Hat Enterprise para máquinas virtuales locales de Azure

En este artículo se explica cómo preparar una imagen de Azure Marketplace de Red Hat Enterprise Linux (RHEL) para su uso con máquinas virtuales (VM) locales de Azure. Al seguir estos pasos, asegúrese de que la máquina virtual tiene las últimas actualizaciones de seguridad, soporte técnico y características de integración.

Prerrequisitos

Antes de comenzar, asegúrese de que tiene:

Inicio de sesión y establecimiento de la suscripción

  1. Conéctese a una máquina en la instancia local de Azure.

  2. Inicie sesión y escriba el siguiente comando:

    az login --use-device-code
    
  3. Establezca la suscripción.

    az account set --subscription <Subscription ID>
    

Configuración y preparación de una máquina virtual de Azure

Para configurar y preparar una máquina virtual de Azure, siga estos pasos:

  1. Inicie sesión en Azure Portal.

  2. En el menú de la izquierda, seleccione Máquinas virtuales. A continuación, seleccione Crear y, a continuación, seleccione Máquina virtual.

  3. Examine las imágenes disponibles y elija su versión preferida de RHEL LVM Gen2.

    Captura de pantalla de la página de selección de imágenes de Azure Portal.

  4. Escriba los detalles necesarios en el asistente y termine de configurar la máquina virtual de Azure.

    Nota:

    Evite conflictos de nombre de usuario mediante la creación de la máquina virtual de Azure con un nombre de usuario que no use en Azure Local. Si usa el mismo nombre de usuario (por ejemplo, "usernameA") tanto en la máquina virtual de Azure como en Azure Local y, a continuación, reutiliza el disco duro virtual, la máquina virtual mantiene la información de inicio de sesión original. Para obtener los mejores resultados, configure máquinas virtuales locales de Azure con credenciales diferentes (como "usernameB").

  5. Una vez implementada la máquina virtual, vaya a la página de información general de la máquina virtual , seleccione la opción Conectar y, a continuación, seleccione Consola serie.

    Captura de pantalla de la opción de inicio de sesión de la consola serie en Azure Portal.

  6. Conéctese a la máquina virtual con sus credenciales y siga estos pasos:

    1. Inicie sesión en la máquina virtual como usuario raíz.

      sudo su
      
    2. Limpie la cloud-init configuración predeterminada porque no es relevante para las máquinas virtuales locales de Azure.

      sudo yum clean all
      sudo cloud-init clean
      

      Ejemplo de resultado:

      [contosotest@localhost ~]$ sudo yum clean all
      Updating Subscription Management repositories.
      17 files removed
      [contosotest@localhost ~]$ sudo cloud-init clean
      
    3. Quite los registros y los cloud-init archivos temporales.

      sudo rm -rf /var/lib/cloud/ /var/log/* /tmp/*
      
    4. Limpiar detalles específicos de la máquina virtual.

      sudo rm -f /etc/sysconfig/network-scripts/*
      sudo rm -f /etc/ssh/ssh_host*
      sudo rm /etc/lvm/devices/system.devices
      

Cambio del origen de datos de la imagen de máquina virtual

Para cambiar el origen de datos de la imagen de máquina virtual, siga estos pasos:

  1. Cambie el directorio a la siguiente ruta de acceso y enumere los archivos para buscar el archivo de origen de datos 91-azure_datasource.cfg

    cd /etc/cloud/cloud.cfg.d/
    ls
    

    Ejemplo de resultado:

    [root@rhelsysprep cloud.cfg.d]# ls 
    05_logging.cfg  10-azure-kvp.cfg  91-azure_datasource.cfg  README
    
  2. Abra el archivo 91-azure_datasource.cfg.

    cat 91-azure_datasource.cfg
    

    Ejemplo de resultado:

    datasource_list: [ Azure ]
    datasource:
      Azure:
        apply network config: False
    
  3. Abra y actualice el datasource_list de Azure a NoCloud.

    vi 91-azure_datasource.cfg
    
    1. Para editar el archivo, presione i.

    2. Quite el origen de datos y actualice los detalles de datasource_list: [Azure] a datasource_list: [NoCloud].

    3. Guarde el archivo presionando la tecla Esc seguida de :x y presione Entrar.

      Ejemplo de resultado:

      datasource_list: [NoCloud]
      ~??
      ~
      
  4. Compruebe que el archivo se actualizó.

    cat 91-azure_datasource.cfg
    
  5. Quite el historial de Bash.

    sudo rm -f ~/.bash_history
    export HISTSIZE=0
    exit
    
  6. Detenga la máquina virtual de Azure a medida que se completen los cambios de configuración.

Exportación de un disco del sistema operativo de máquina virtual de Azure a un disco duro virtual en el clúster local de Azure

Para exportar un disco del sistema operativo de máquina virtual de Azure a un VHD en el clúster de Azure Local, siga estos pasos:

  1. En el portal de Azure, para tu recurso local de Azure, ve a la información general de la máquina virtual. En Configuración, seleccione Discos y, a continuación, seleccione el vínculo Nombre de discos .

    Captura de pantalla de la página de detalles del disco del sistema operativo.

  2. En Configuración, seleccione Exportación de disco y, a continuación, seleccione Generar dirección URL para generar una dirección URL segura para el disco.

    Captura de pantalla de la opción de exportación de disco con generación segura de direcciones URL.

  3. Copie el vínculo de dirección URL segura generado para el paso siguiente.

Creación de una imagen local de Azure

Antes de crear una imagen local de Azure a partir de una máquina virtual de Azure Marketplace de Red Hat Enterprise Linux (RHEL), asegúrese de que los términos de imagen de Azure Marketplace para la oferta de Red Hat se aceptan en la suscripción de Azure conectada a la instancia local de Azure. Aceptar los términos de imagen es una acción única a nivel de suscripción en Azure Marketplace.

Nota:

Ejecute los comandos de la CLI de Azure que se usan para aceptar términos de imagen de un entorno de administración conectado a Azure (como Azure Cloud Shell, Linux o Subsistema de Windows para Linux). No ejecute estos comandos en hosts de clúster local de Azure ni dentro de la máquina virtual.

Para crear una imagen local de Azure, use el token de SAS.

$rg="<resource-group>"
$cl="/subscriptions/<sub>/resourcegroups/$rg/providers/microsoft.extendedlocation/customlocations/<customlocation-name>"
$sas='"https://EXAMPLE.blob.storage.azure.net/EXAMPLE/abcd<sas-token>"'

az stack-hci-vm image create -g $rg --custom-location $cl --name "<IMAGE-NAME>" --os-type "Linux" --image-path $sas

Creación de una máquina virtual local de Azure

Cree una máquina virtual local de Azure mediante la imagen de máquina virtual local de Azure que creó. Para más información, consulte Creación de máquinas virtuales locales de Azure habilitadas por Azure Arc.