Importa discos virtuales de forma manual

Para importar imágenes de disco de arranque a Compute Engine desde tus centros de datos físicos, máquinas virtuales (VM) en tu estación de trabajo local o VM que se ejecutan en otra plataforma en la nube, se recomienda usar la herramienta de importación de discos virtuales, que automatiza todos los pasos de esta guía.

Si prefieres no usar la herramienta automatizada, puedes seguir las instrucciones manuales paso a paso de esta guía.

Este proceso de importación de imágenes solo puede importar un disco a la vez y en esta guía se indica cómo importar imágenes de disco de arranque.

Importa tus discos de arranque existentes solo si no puedes compilar o migrar tus apps para que se ejecuten sobre las imágenes públicas de Compute Engine. Las imágenes públicas ya están configuradas para ejecutarse en el entorno de Compute Engine, por lo que puedes ejecutar apps en esas imágenes sin tener que preocuparte por las configuraciones del sistema operativo y el bootloader. Sin embargo, es posible que debas importar tus propias imágenes de disco de arranque en las siguientes situaciones:

  • Si tus apps requieren un sistema operativo que no se proporciona como imagen pública.
  • Si ya tienes un conjunto de imágenes básicas que puedes usar para crear VM en otra plataforma en la nube.
  • Si el trabajo requerido a fin de migrar el código de la app a una de las imágenes públicas es mayor que el que se necesita para completar el proceso de importación de la imagen de disco de arranque.

Como alternativa, puedes obtener ayuda con la migración de tus VM mediante los servicios de socios. Para obtener más información, consulta la migración de VM a Compute Engine.

Descripción general

Para importar una imagen de disco de arranque a Compute Engine, usa el siguiente proceso:

  1. Planifica tu ruta de importación. Debes identificar dónde vas a preparar tu imagen de disco de arranque antes de subirla y cómo se conectará con esa imagen una vez iniciada en el entorno de Compute Engine.
  2. Prepara tu disco de arranque a fin de que puedas arrancar dentro del entorno de Compute Engine y para que puedas acceder a él después de que arranque.
  3. Crea y comprime el archivo de imagen de disco de arranque.
  4. Sube el archivo de imagen a Cloud Storage y, luego, importa la imagen a Compute Engine como una nueva imagen personalizada.
  5. Usa la imagen importada para crear una instancia de VM y asegúrate de que se inicie de forma correcta.
  6. Si la imagen no se inicia de forma correcta, puedes solucionar el problema si adjuntas la imagen de disco de arranque a otra instancia y la vuelves a configurar.
  7. Optimiza la imagen y, luego, instala el entorno invitado para que la imagen importada del sistema operativo pueda comunicarse con el servidor de metadatos y usar funciones adicionales de Compute Engine.

Requisitos

Requisitos para el disco de arranque

Para importar discos de arranque a Compute Engine, estos deben satisfacer los siguientes requisitos:

  • Si creaste un kernel de sistema operativo personalizado, debe satisfacer los requisitos de configuración de kernel y hardware. La mayoría de las distribuciones de Linux ya satisfacen estos requisitos, por lo que este requisito es solo para usuarios avanzados que compilan sus propios sistemas operativos personalizados a fin de ejecutarlos en Compute Engine.
  • El disco de arranque no debe superar los 2,048 GB (2 TB).
  • El disco de arranque que importas debe tener una tabla particionada de MBR funcional o una configuración híbrida de una tabla particionada de GPT con un bootloader de MBR.
  • La partición principal en el disco de arranque puede tener el formato que prefieras, siempre que se inicie de forma correcta desde el bootloader de MBR.
  • El bootloader en el disco de arranque no debe tener los argumentos de línea de comandos de kernel quiet, rhgb o splashimage=. Compute Engine no admite pantallas de presentación durante el inicio. Puedes quitar estos valores de la configuración de GRUB durante el paso de configuración del bootloader.
  • El sistema operativo en el disco de arranque debe admitir ACPI.

Requisitos para el archivo de imagen

El archivo de imagen que importes debe satisfacer los siguientes requisitos:

  • El nombre de archivo de la imagen de disco debe ser disk.raw.
  • El archivo de imagen RAW debe tener un tamaño múltiplo de 1 GB. Por ejemplo, el archivo puede tener 11 GB o 10 GB, pero no 10.5 GB.
  • El archivo comprimido debe ser un archivo .tar.gz que use la compresión gzip y la opción --format=oldgnu para la utilidad tar (manual).

Puedes importar imágenes de disco de arranque para cualquier sistema operativo que desees, pero algunos sistemas son más fáciles de configurar en el entorno de Compute Engine que otros. Los siguientes sistemas operativos se prueban para esta guía:

  • Debian 7 y Debian 8
  • RHEL/CentOS 6
  • openSUSE 13.x
  • Ubuntu 12.04, 14.04 y 16.04

Los siguientes sistemas operativos pueden requerir pasos de configuración adicionales que no se incluyen en esta guía:

  • Debian 6 y versiones anteriores
  • RHEL/CentOS 7
  • RHEL/CentOS 5 y versiones anteriores
  • Ubuntu 10.04 y versiones anteriores

Requisitos para tu proyecto

Cuando creas una instancia de VM a partir de una imagen importada, la instancia debe poder acceder al repositorio de paquetes externo del sistema operativo que está configurado en el disco de arranque.

Se puede acceder a este repositorio de forma directa desde el proveedor del sistema operativo o mediante una conexión de red a la infraestructura local que aloja estos repositorios.

Para configurar el acceso al repositorio externo, completa uno de los siguientes pasos en tu proyecto:

Costos de importación de imágenes

Antes de comenzar, debes comprender los costos del proceso de importación. La entrada de red necesaria para subir tu archivo de imagen de disco de arranque a Cloud Storage y la importación de esa imagen como una imagen personalizada de Compute Engine no generan costos. Sin embargo, hay costos para algunos pasos específicos del proceso de importación:

  • El costo de almacenar de forma temporal tus archivos de imagen comprimidos en un depósito estándar de Cloud Storage. Debes usar un depósito temporal de Cloud Storage para guardar tus archivos antes de poder importarlos como imágenes personalizadas de Compute Engine. Puedes quitar el depósito después de completar el proceso de importación.
  • El costo por almacenar imágenes personalizadas después de que termines de importarlas a Compute Engine.
  • El costo potencial de salida de datos en tu centro de datos existente, proveedor de red o servicio en la nube actual. Los archivos de imagen pueden ser muy grandes incluso después de comprimirlos, por lo que copiarlos en Compute Engine podría generar cargos de salida significativos en algunas plataformas.
  • El costo de los discos persistentes y las instancias de VM de Compute Engine en las que puedes configurar tu imagen después de importarla a Compute Engine.

Planifica y prepara tu ruta de importación

Tu método para importar el disco depende de la configuración actual del sistema que deseas mover a Compute Engine. Necesitas un sistema en el que se pueda crear y comprimir el archivo de imagen de disco de arranque, además de un sistema en el que se pueda subir el archivo de imagen Cloud Storage. Ten en cuenta los siguientes elementos cuando planifiques tu ruta de importación:

  • La ruta de importación de imágenes requiere que configures tu disco de arranque en un entorno de sistema operativo que funcione. Este proceso puede hacer que el disco de arranque no se inicie en ningún lugar fuera del entorno de Compute Engine. Es tu responsabilidad asegurarte de no perder datos en tus discos o interrumpir tus apps empresariales funcionales mientras importas tu sistema a Compute Engine.
  • Identifica cuál es tu configuración de acceso al sistema existente y planifica cómo deseas acceder al sistema después de importarlo a Compute Engine.
    • Si tu sistema tiene configuraciones de acceso de usuario o SSH existentes, puedes configurar solo el bootloader y, luego, configurar la imagen para que se ejecute de manera óptima en Compute Engine. Puedes acceder a la instancia mediante tu configuración de SSH existente o a través de un acceso directo de usuario en la consola en serie interactiva.
    • Si tu sistema no tiene acceso de usuario existente o configuración SSH, debes configurar el disco de arranque para que puedas acceder a él después de que se inicie en Compute Engine.
  • La duración del proceso de importación puede llevar varias horas o días, dependiendo del tamaño de tu disco de arranque y la velocidad de tu conexión de red.
  • El sistema en el que creas y comprimes la imagen de tu disco de arranque debe tener suficiente espacio de almacenamiento para crear los archivos de imagen en un dispositivo de almacenamiento que no sea el disco de arranque. Por lo general, tus archivos de imagen y tar.gz usan entre 2 y 3 veces más espacio que el disco de arranque.
  • Comprende la estructura del sistema de archivos para el sistema existente que deseas importar.
    • Si el sistema operativo y los archivos de la app están distribuidos en varios discos, importa cada uno de ellos de forma individual y usa cada imagen a fin de crear un único disco persistente para tu instancia de VM de Compute Engine.
    • Si tus sistemas tienen volúmenes de arranque en una configuración RAID en la que varios discos actúan como un solo volumen lógico, crea una imagen única de todo el arreglo en lugar de una para cada disco. Los discos persistentes de Compute Engine no necesitan configuraciones RAID.
  • Si el sistema encripta el contenido de tu disco de arranque con un módulo de plataforma de confianza o con una encriptación a nivel de software, desencríptalo antes de crear el archivo de imagen de disco de arranque. Google no puede leer tus imágenes si están encriptadas. Encriptamos tus imágenes después de que las subes y te permitimos proporcionar tus propias claves de encriptación para tus discos persistentes y depósitos de Cloud Storage.

Después de identificar o crear un sistema en el que puedas completar el proceso de importación, conéctate a ese sistema y configura el bootloader.

Prepara la imagen de disco de arranque

En un sistema en ejecución, prepara la imagen de disco de arranque para que pueda funcionar en un entorno de Compute Engine.

  • Configura el bootloader en el disco de arranque para que la imagen se inicie en Compute Engine.
  • Configura el acceso de usuario o SSH en el disco de arranque a fin de que puedas acceder a él después de importarlo a Compute Engine para iniciarlo como una instancia de VM.

Este proceso puede hacer que el sistema no se pueda iniciar fuera de Compute Engine, por lo que se recomienda completar este paso en un sistema aislado con una copia del disco de arranque que deseas importar.

Configura el bootloader

Configura el bootloader en el sistema para que pueda iniciarse en Compute Engine.

  1. Conéctate a la terminal del sistema con el disco de arranque que planeas importar.

  2. Edita el archivo de configuración de GRUB. Por lo general, este archivo está en /etc/default/grub, pero, en algunas distribuciones anteriores, podría estar ubicado en un directorio no estándar.

  3. Realiza los siguientes cambios en el archivo de configuración de GRUB:

    • Quita cualquier línea que tenga splashimage=. Compute Engine no admite pantallas de presentación durante el inicio.
    • Quita los argumentos de línea de comandos de kernelrhgb y quiet.
    • Agrega console=ttyS0,38400n8d a los argumentos de línea de comandos de kernel para que la instancia pueda interactuar con la consola en serie interactiva.
  4. Vuelve a generar el archivo grub.cfg. Usa uno de los siguientes comandos según la distribución que uses.

    • Debian y Ubuntu: sudo update-grub
    • RHEL y CentOS: sudo grub-mkconfig -o /boot/grub/grub.cfg
    • SUSE y openSUSE: sudo grub2-mkconfig -o /boot/grub/grub.cfg
  5. Edita el archivo /etc/fstab y quita las referencias a todos los discos y particiones que no sean el disco de arranque en sí y las particiones de ese disco de arranque. Si /etc/fstab contiene entradas no válidas, es posible que se detenga el proceso de inicio del sistema.

Después de configurar el bootloader, crea y comprime el archivo de imagen de disco.

Configura el acceso de usuario o SSH en la imagen

Después de que tu imagen se ejecute en Compute Engine como una instancia de VM, debes tener una forma de acceder a ella. Puedes conectarte a la instancia con una configuración SSH existente o acceder a la consola en serie con un nombre de usuario y una contraseña.

Completa la configuración de acceso de usuario o SSH antes de crear y comprimir el archivo de imagen de disco.

Crea y comprime el archivo de imagen de disco

Crea y comprime el archivo de imagen de disco de arranque para el sistema que deseas importar a Compute Engine. El proceso para crear y comprimir el archivo de imagen es diferente dependiendo de la plataforma en la que operan tus sistemas.

Genérico

En casi cualquier sistema, puedes usar este proceso para crear un archivo de imagen RAW que puedes importar a Compute Engine. Puedes completar este proceso en el sistema en ejecución que importas o adjuntar tu disco de arranque como disco secundario en otro sistema y crear la imagen de disco de arranque a partir del disco detenido. Asegúrate de tener suficiente espacio de almacenamiento disponible para almacenar de forma temporal los archivos de imagen de disco. Este ejemplo toma una imagen de un sistema en ejecución.

  1. Conéctate a la terminal en el sistema que tiene el disco de arranque que planeas importar.

  2. Usa el comando lsblk para identificar el disco de arranque de origen a partir del cual deseas crear una imagen y la ubicación en la que tienes suficiente espacio para escribir los archivos de imagen. En este ejemplo, /dev/sda es el disco de arranque de origen y /dev/sdb es un disco secundario grande activado en el directorio /tmp. Aunque /dev/sda está en ejecución, aún puedes crear una imagen a partir de él. Lo mejor es hacerlo en un sistema silencioso que no procese datos ni ejecute aplicaciones de forma activa.

    lsblk
    
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0  100G  0 disk
    ├─sda1   8:1    0   96G  0 part /
    ├─sda2   8:2    0    1K  0 part
    └─sda3   8:5    0    4G  0 part [SWAP]
    sdb      8:16   0  500G  0 disk /tmp
    sr0     11:0    1 1024M  0 rom
    
  3. Crea el archivo de imagen a partir de tu disco de arranque.

    sudo dd if=/dev/sda of=/tmp/disk.raw bs=4M conv=sparse
    
  4. Ve al directorio en el que se escribió el archivo disk.raw.

    cd /tmp
    
  5. Comprime el disco sin procesar en formato tar.gz. En este paso, se comprime el archivo de imagen para que puedas subirlo con mayor rapidez a Cloud Storage. En OSX, instala gtar y úsalo para este paso en lugar de tar.

    sudo tar --format=oldgnu -Sczf /tmp/compressed-image.tar.gz disk.raw
    

AWS EC2

Si deseas importar una instancia de Amazon EC2, empaqueta el volumen de Amazon EBS con las herramientas de AMI:

  1. Busca y anota el ID de tu cuenta de Amazon en la consola de configuración de la cuenta.

  2. En la instancia de Amazon EC2, descarga e instala las herramientas de AMI para EC2.

  3. Ejecuta ec2-bundle-vol con permisos de administrador.

    ec2-bundle-vol -c /tmp/build/cert-[hash].pem \
        -k /tmp/build/pk-[hash].pem -u aws-account-id \
        -r x86_64 --no-filter --exclude /tmp/build \
        --grub-config /tmp/build/menu.lst \
        --fstab /tmp/build/fstab
    

    Reemplaza los siguientes elementos:

    • cert-[hash].pem: Es el archivo del certificado.
    • pk-[hash].pem: Es la clave privada.
    • aws-account-id: Es el ID de tu cuenta de Amazon. Con este comando, se crea el archivo image.
  4. Comprime el disco sin procesar en formato tar.gz. En este paso, se comprime el archivo de imagen para que puedas subirlo con mayor rapidez a Cloud Storage. En OSX, instala gtar y úsalo para este paso en lugar de tar.

    sudo tar --format=oldgnu -Sczf /tmp/compressed-image.tar.gz disk.raw
    

VirtualBox

Si preparaste tu sistema en un entorno de VirtualBox, puedes usar la herramienta VBoxManage para convertir una imagen de disco .vdi o .qcow2 en el formato disk.raw.

  1. Apaga la máquina de invitado de VirtualBox que desees importar y reemplaza guest-name por el nombre de tu máquina de invitado. Puedes apagar la máquina de invitado con la interfaz de VirtualBox o la herramienta VBoxManage.

    VBoxManage controlvm guest-name acpipowerbutton
  2. Convierte la imagen del invitado al formato RAW con la herramienta VBoxManage y reemplaza guest-image por la ruta de la imagen del invitado. Puedes proporcionar esta imagen del invitado como un archivo vdi o qcow2:

    VBoxManage clonemedium guest-image ~/disk.raw --format RAW
  3. Comprime el disco sin procesar en formato tar.gz. En este paso, se comprime el archivo de imagen para que puedas subirlo con mayor rapidez a Cloud Storage. En OSX, instala gtar y úsalo para este paso en lugar de tar.

    sudo tar --format=oldgnu -Sczf /tmp/compressed-image.tar.gz disk.raw
    

El archivo de imagen está comprimido y listo para subirse a Cloud Storage.

Importa la imagen a tu lista de imágenes personalizadas

Sube el archivo a Cloud Storage y, luego, importa la imagen a tu lista de imágenes personalizadas. De manera opcional, puedes encriptar la imagen durante el paso de importación.

Importa la imagen con Console o las herramientas del SDK de Cloud:

Console

Copia el archivo compressed-image.tar.gz en tu estación de trabajo local y usa Cloud Console para crear un depósito y subir el archivo.

  1. En Cloud Console, ve a la página del navegador de Cloud Storage.

    Ir a la página del Navegador

  2. En la parte superior de la página, haz clic en Crear depósito.
  3. Especifica un nombre de depósito único, la clase de almacenamiento Estándar y una ubicación en la que desees almacenar tus archivos de imagen.
  4. Haz clic en Crear para crear el depósito. La página del navegador dirige al depósito nuevo.
  5. Haz clic en Subir archivos en la parte superior de la página.
  6. En el cuadro de diálogo de archivo, selecciona el archivo compressed-image.tar.gz que descargaste de tu sistema. El archivo se sube desde tu estación de trabajo local. Este paso puede llevar varias horas según el tamaño de tu archivo de imagen comprimido y la velocidad de tu conexión de red.

Después de subir la imagen a Cloud Storage, importa el archivo de imagen a tu lista de imágenes personalizadas.

  1. En Cloud Console, ve a la página Imágenes.

    Ir a la página Imágenes

  2. En la parte superior de la página, haz clic en Crear imagen.
  3. En el campo Nombre, especifica un nombre único para la imagen.
  4. Opcionalmente, especifica una familia de imágenes para tu imagen nueva o prepara la configuración de encriptación específica para la imagen.
  5. Haz clic en el menú Origen y selecciona el archivo de Cloud Storage.
  6. Ingresa la ruta del archivo compressed-image.tar.gz que subiste a Cloud Storage.

    bucket-name/compressed-image.tar.gz
  7. Haz clic en el botón Crear para importar la imagen. El proceso puede llevar varios minutos según el tamaño de la imagen de disco de arranque.

La imagen ahora se incluye en la página Imágenes, pero debes configurar el bootloader para poder usar la imagen a fin de crear una instancia de VM funcional.

gcloud y gsutil

Usa las herramientas gsutil y gcloud para subir el archivo de imagen de disco de arranque comprimido. Puedes completar este proceso en el sistema en el que creaste la imagen de disco de arranque o puedes copiar ese archivo en otro sistema y completar el proceso de carga desde allí.

  1. Instala e inicializa el SDK de Cloud en el sistema desde el cual planeas subir el archivo compressed-image.tar.gz.

  2. Usa la herramienta gsutil para crear un nuevo depósito de Cloud Storage.

    gsutil mb gs://bucket-name
  3. Sube el archivo compressed-image.tar.gz al nuevo depósito.

    gsutil cp compressed-image.tar.gz gs://bucket-name
  4. Importa el archivo de imagen como una nueva imagen personalizada.

    gcloud compute images create image-name --source-uri gs://bucket-name/compressed-image.tar.gz
    

    Reemplaza los siguientes elementos:

    • image-name: Es el nombre de la imagen que importaste.
    • bucket-name: Es el nombre del depósito en el que se encuentra la imagen importada.

La imagen ahora se incluye en la lista de imágenes personalizadas, pero debes configurar el bootloader para poder usar la imagen a fin de crear una instancia de VM funcional.

gcloud compute images list --no-standard-images
NAME                                            PROJECT                  FAMILY                    DEPRECATED  STATUS
[IMAGE_NAME]                                    [PROJECT_ID]                                                   READY

Prueba la imagen importada para asegurarte de que funciona

Confirma que la imagen importada funciona como se espera. Crea una instancia con un disco de arranque que use la imagen importada.

Console

  1. En Cloud Console, ve a la página Instancias de VM.

    Ir a la página Instancias

  2. Haz clic en el botón Crear.
  3. En Disco de arranque, haz clic en Cambiar para comenzar a configurar el disco de arranque.
  4. En la pestaña Imágenes personalizadas, haz clic en la imagen que importaste.
  5. Haz clic en Seleccionar para confirmar la configuración del disco de arranque.
  6. Haz clic en el botón Crear para generar la instancia.

gcloud

gcloud compute instances create instance-name --zone zone --image image-name

Reemplaza los siguientes elementos:

  • instance-name: Es un nombre único para la instancia.
  • zone: Es la zona en la que creaste el disco independiente.
  • image-name: Es el nombre de la imagen que importaste.

Después de crear la instancia, confirma que se inició correctamente. Verifica la salida del puerto en serie:

Console

  1. En Cloud Console, ve a la página Instancias de VM.

    Ir a la página Instancias

  2. En la lista de instancias, haz clic en el nombre de la instancia que creaste a partir de la imagen importada. Se abre la página de detalles de la instancia.
  3. En la sección Registros, haz clic en el puerto en serie correspondiente para expandir y ver la salida de ese puerto de la instancia.

Si la instancia se detuvo en Booting from Hard Disk 0..., debes solucionar los problemas desde el entorno de Compute Engine o puedes volver a configurar el disco de arranque en tu sistema original y repetir el proceso de importación.

gcloud

gcloud compute instances get-serial-port-output instance-name

Si la instancia se detuvo en Booting from Hard Disk 0..., debes solucionar los problemas desde el entorno de Compute Engine o puedes volver a configurar el disco de arranque en tu sistema original y repetir el proceso de importación.

También puedes probar la instancia si te conectas a ella. Conéctate a la instancia a través de una de las siguientes opciones:

  • SSH: si la instancia tenía una configuración SSH funcional, puedes conectarte a la instancia con SSH y tu clave privada. Puede encontrar la dirección IP de la instancia en la página de Instancias de VM.
  • Consola en serie: si necesitas acceder a la instancia directamente sin SSH, puedes habilitar la consola en serie y acceder con un nombre de usuario y una contraseña.

Solución de problemas del disco de arranque

Si tu instancia no se inicia y no puedes conectarte a ella o acceder a través de la consola en serie interactiva, identifica el motivo por el que el disco de arranque no completa el proceso de inicio y arranque.

Después de identificar dónde falla el proceso de inicio y arranque, puedes corregir el problema mediante una de estas dos opciones:

Soluciona los problemas de discos de arranque en Compute Engine

Activa tu imagen importada en un disco secundario que esté conectado a una instancia de VM temporal. Usa Cloud Console o la herramienta de gcloud para crear un disco independiente a partir de la imagen que subiste y crea una VM temporal con el disco independiente adjunto. Puedes usar esta instancia para modificar archivos en el disco independiente y solucionar problemas que causan que la imagen falle en el proceso de arranque.

Console

Crea un disco independiente a partir de la imagen de disco de arranque que importaste. Como alternativa, puedes separar un disco de arranque de una instancia y crear la instancia con ese disco de arranque separado.

  1. En GCP Console, ve a la página Discos.

    Ir a la página Discos

  2. Haz clic en Crear disco.
  3. En la página Crear un disco nuevo, especifica los siguientes atributos:
    • Zona: Selecciona una zona cercana. Debes usar esta misma zona cuando crees tu instancia temporal.
    • Tipo de fuente: Imagen
    • Imagen de origen: Especifica el nombre de la imagen de disco de arranque que importaste.
  4. Haz clic en Crear para crear el disco.

Crea una instancia temporal a la que puedas adjuntar el disco independiente y configura el bootloader para que funcione en un entorno de Cloud Console.

  1. En Google Cloud Console, ve a la página Instancias de VM.

    Ir a la página Instancias

  2. Haz clic en el botón Crear instancia.
  3. En la página Crear una instancia, especifica un nombre de instancia y una zona para ubicarla. La zona debe ser la misma en la que creaste el disco independiente.
  4. Expande la sección Administración, seguridad, discos, herramientas de redes, instancia única.
  5. En la pestaña Discos de la sección Discos adicionales, haz clic en Adjuntar disco existente. Aparecerá una nueva sección.
  6. En la sección Disco, selecciona el disco independiente que creaste en la lista desplegable. Esto adjunta el disco independiente a la instancia para que puedas activarlo y modificar su contenido más adelante.
  7. Haz clic en Listo para terminar de adjuntar el disco.
  8. Haz clic en el botón Crear para crear la instancia.

gcloud

Crea un disco independiente a partir de la imagen de disco de arranque que importaste. Como alternativa, puedes quitar un disco de arranque de una instancia y crear la instancia con ese disco de arranque separado.

gcloud compute disks create disk-name --zone zone --image image-name

Reemplaza los siguientes elementos:

  • disk-name: Es el nombre del disco independiente nuevo.
  • zone: Es una zona cercana a tu ubicación. Debes usar esta misma zona cuando crees la instancia temporal.
  • image-name: Es el nombre de la imagen del disco de arranque que importaste.

Crea una instancia temporal a la que puedas adjuntar el disco independiente y configura el bootloader para que funcione en un entorno de Cloud Console.

gcloud compute instances create instance-name --zone zone --disk name=disk-name

Reemplaza los siguientes elementos:

  • instance-name: Es un nombre único para la instancia.
  • zone: Es la zona en la que creaste el disco independiente.
  • disk-name: Es el nombre del disco independiente que creaste a partir de la imagen del disco de arranque importada.

Después de crear la instancia con el disco independiente adjunto, tendrás un entorno virtual en el que podrás modificar el bootloader de la imagen de disco de arranque original.

Conéctate a la instancia, activa el disco independiente y configura el bootloader para que se inicie de forma correcta en Compute Engine.

  1. Conéctate a la instancia temporal mediante SSH desde el navegador o el comando gcloud compute ssh.
  2. Usa el comando blkid para identificar el disco que deseas modificar y las particiones que necesitas activar. En este ejemplo, /dev/sdb es el disco que importaste.

    lsblk
    
    NAME   MAJ:MIN RM  SIZE RO TYPE MOUNTPOINT
    sda      8:0    0   10G  0 disk
    └─sda1   8:1    0   10G  0 part /
    sdb      8:16   0  100G  0 disk
    ├─sdb1   8:17   0   96G  0 part
    ├─sdb2   8:18   0    1K  0 part
    └─sdb5   8:21   0    4G  0 part
    
  3. Activa la partición raíz desde el disco independiente al directorio /tmp. En este ejemplo, /dev/sdb1 es la partición raíz y las demás no requieren ninguna modificación. Es posible que tu esquema de partición requiera que actives varias particiones para acceder a todos los archivos que debes cambiar.

    sudo mount /dev/sdb1 /tmp
    
  4. Edita los archivos que podrían causar que el disco falle en el proceso de arranque. Para obtener más información, consulta las instrucciones de configuración del bootloader.

  5. Desactiva el disco de arranque de la instancia temporal.

    sudo umount /tmp
    

Cuando termines de configurar este disco, desconéctalo y úsalo como disco de arranque para una nueva instancia.

Console

Quita el disco independiente de la instancia temporal.

  1. En Google Cloud Console, ve a la página Instancias de VM.

    Ir a la página Instancias

  2. En la lista de instancias, haz clic en el nombre de la instancia temporal donde modificaste el disco de arranque independiente. Se abre la página de detalles de la instancia.
  3. En la parte superior de esta página, haz clic en Editar.
  4. En la sección Discos adicionales, haz clic en la X al lado del disco independiente para indicar que deseas desconectarlo de la instancia temporal.
  5. En la parte inferior de la página de detalles de la instancia, haz clic en Guardar para guardar tus cambios.

Usa el disco independiente que quitaste para crear una instancia nueva.

  1. En Google Cloud Console, ve a la página Instancias de VM.

    Ir a la página Instancias

  2. Haz clic en el botón Crear instancia.
  3. En la página Crear una instancia, especifica un nombre de instancia y una zona para ubicarla. La zona debe ser la misma en la que creaste el disco independiente.
  4. En la sección Disco de arranque, haz clic en Cambiar para comenzar a configurar el disco de arranque.
  5. En la pestaña Discos existentes, elige el disco de arranque independiente para usarlo como el disco de arranque de esta nueva instancia.
  6. Haz clic en el botón Crear para crear la instancia.

gcloud

Quita el disco independiente de la instancia temporal.

gcloud compute instances detach-disk instance-name --disk disk-name

Reemplaza los siguientes elementos:

  • instance-name: Es un nombre único para la instancia.
  • disk-name: Es el nombre del disco independiente nuevo.

Usa el disco independiente que quitaste para crear una instancia nueva.

gcloud compute instances create instance-name --zone zone --disk name=disk-name,boot=yes

Reemplaza los siguientes elementos:

  • instance-name: Es un nombre único para la instancia.
  • zone: Es la zona en la que se encuentra el disco independiente.
  • disk-name: Es el nombre del disco independiente que creaste a partir de la imagen de disco de arranque importada.

Prueba la instancia que creaste con el disco de arranque modificado. Si aún no puedes conectarte a la instancia, vuelve a leer el resultado de la consola en serie para identificar dónde falla el proceso de inicio. Repite el proceso de solución de problemas hasta que corrijas los problemas de la imagen de disco de arranque.

Pasos siguientes

¿Te ha resultado útil esta página? Enviar comentarios:

Enviar comentarios sobre...

Documentación de Compute Engine