arrow_back

Cómo trabajar con máquinas virtuales

Acceder Unirse
Pon a prueba tus conocimientos y compártelos con nuestra comunidad

Cómo trabajar con máquinas virtuales

Lab 1 hora 30 minutos universal_currency_alt 5 créditos show_chart Introductorio
info Es posible que este lab incorpore herramientas de IA para facilitar tu aprendizaje.
Pon a prueba tus conocimientos y compártelos con nuestra comunidad

Descripción general

En este lab, configurarás una aplicación de juego: un servidor de Minecraft.

El software del servidor de Minecraft se ejecutará en una instancia de Compute Engine.

Usarás un tipo de máquina e2-medium que incluye un disco de arranque de 10 GB, 2 CPU virtuales (CPU virtual) y 4 GB de RAM. Este tipo de máquina ejecuta Debian Linux de forma predeterminada.

Para asegurarte de que haya suficiente espacio para los datos de mundos del servidor de Minecraft, también adjuntarás a la instancia una unidad de estado sólido (SSD) persistente de 50 GB y de alto rendimiento. Este servidor específico de Minecraft puede admitir hasta 50 jugadores.

Objetivos

En este lab, aprenderás a realizar las siguientes tareas:

  • Personalizar un servidor de aplicaciones
  • Instalar y configurar el software necesario
  • Configurar el acceso a la red
  • Programar copias de seguridad periódicas

Configuración y requisitos

En cada lab, recibirás un proyecto de Google Cloud y un conjunto de recursos nuevos por tiempo limitado y sin costo adicional.

  1. Haz clic en el botón Comenzar lab. Si debes pagar por el lab, se abrirá una ventana emergente para que selecciones tu forma de pago. A la izquierda, se encuentra el panel Detalles del lab, que tiene estos elementos:

    • El botón Abrir la consola de Google Cloud
    • El tiempo restante
    • Las credenciales temporales que debes usar para el lab
    • Otra información para completar el lab, si es necesaria
  2. Haz clic en Abrir la consola de Google Cloud (o haz clic con el botón derecho y selecciona Abrir el vínculo en una ventana de incógnito si ejecutas el navegador Chrome).

    El lab inicia recursos y abre otra pestaña en la que se muestra la página de acceso.

    Sugerencia: Ordena las pestañas en ventanas separadas, una junto a la otra.

    Nota: Si ves el diálogo Elegir una cuenta, haz clic en Usar otra cuenta.
  3. De ser necesario, copia el nombre de usuario a continuación y pégalo en el diálogo Acceder.

    {{{user_0.username | "Username"}}}

    También puedes encontrar el nombre de usuario en el panel Detalles del lab.

  4. Haz clic en Siguiente.

  5. Copia la contraseña que aparece a continuación y pégala en el diálogo Te damos la bienvenida.

    {{{user_0.password | "Password"}}}

    También puedes encontrar la contraseña en el panel Detalles del lab.

  6. Haz clic en Siguiente.

    Importante: Debes usar las credenciales que te proporciona el lab. No uses las credenciales de tu cuenta de Google Cloud. Nota: Usar tu propia cuenta de Google Cloud para este lab podría generar cargos adicionales.
  7. Haga clic para avanzar por las páginas siguientes:

    • Acepta los Términos y Condiciones.
    • No agregues opciones de recuperación o autenticación de dos factores (esta es una cuenta temporal).
    • No te registres para obtener pruebas gratuitas.

Después de un momento, se abrirá la consola de Google Cloud en esta pestaña.

Nota: Para ver un menú con una lista de productos y servicios de Google Cloud, haz clic en el menú de navegación que se encuentra en la parte superior izquierda o escribe el nombre del servicio o producto en el campo Búsqueda.

Tarea 1. Crea la VM

En esta tarea, crearás una VM que alojará tu servidor de Minecraft y, luego, instalarás el software.

Define una VM usando opciones avanzadas

  1. En el menú de navegación () de la consola de Google Cloud, haz clic en Compute Engine > Instancias de VM.
  2. Haz clic en Crear instancia.
  3. Especifica lo siguiente y deja la configuración restante con sus valores predeterminados:
Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
Nombre mc-server
Región
Zona
  1. Haz clic en SO y almacenamiento.

  2. Asegúrate de que la imagen del disco de arranque se muestre como Debian GNU/Linux 12 (bookworm). Si no es así, haz clic en Cambiar y selecciónala en la lista desplegable Versión y, luego, haz clic en Seleccionar.

  3. Haz clic en Agregar disco nuevo.

  4. Especifica lo siguiente y deja la configuración restante con sus valores predeterminados:

Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
Nombre minecraft-disk
Tipo de disco de origen Disco en blanco
Configuración del disco Disco persistente SSD
Tamaño (GB) 50
Encriptación Clave de encriptación administrada por Google
  1. Haz clic en Guardar. Esto crea el disco y lo adjunta automáticamente a la VM cuando se la crea.

  2. Haz clic en Herramientas de redes.

  3. Especifica lo siguiente y deja la configuración restante con sus valores predeterminados:

Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
Etiquetas de red minecraft-server
Interfaces de red Haz clic en predeterminada para editar la interfaz
Dirección IPv4 externa Reservar dirección IP externa estática
Nombre mc-server-ip
  1. Haz clic en Reservar y, luego, en Listo.

  2. Haz clic en Seguridad.

  3. Especifica lo siguiente y deja la configuración restante con sus valores predeterminados:

Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
Identidad y acceso a la API > Permisos de acceso Configurar acceso para cada API
Almacenamiento Lectura y escritura
  1. Haz clic en Crear.

Tarea 2. Prepara el disco de datos

En esta tarea, formatearás y activarás el disco de Minecraft.

Crea un directorio y, luego, formatea y activa el disco

El disco se adjuntó a la instancia, pero aún no está activado ni formateado.

  1. En mc-server, haz clic en SSH para abrir una terminal y conectarse.
  2. Para crear un directorio que sirva como punto de activación para el disco de datos, ejecuta el siguiente comando:
sudo mkdir -p /home/minecraft
  1. Para formatear el disco, ejecuta el siguiente comando:
sudo mkfs.ext4 -F -E lazy_itable_init=0,\ lazy_journal_init=0,discard \ /dev/disk/by-id/google-minecraft-disk

Resultado de ejemplo:

mke2fs 1.47.0 (5-Feb-2023) Discarding device blocks: done Creating filesystem with 13107200 4k blocks and 3276800 inodes Filesystem UUID: 3d5b0563-f29e-4107-ad1a-ba7bf11dcf7c Superblock backups stored on blocks: 32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208, 4096000, 7962624, 11239424 Allocating group tables: done Writing inode tables: done Creating journal (32768 blocks): done Writing superblocks and filesystem accounting information: done
  1. Para activar el disco, ejecuta el siguiente comando:
sudo mount -o discard,defaults /dev/disk/by-id/google-minecraft-disk /home/minecraft

No se muestra ningún resultado después de la activación del disco.

Haz clic en Revisar mi progreso para verificar el objetivo.

Crear la VM y preparar el disco de datos

Tarea 3. Instala y ejecuta la aplicación

En esta tarea, instalarás y ejecutarás la aplicación de Minecraft. El servidor de Minecraft se ejecuta en la máquina virtual Java (JVM), por lo que es necesario ejecutar Java Runtime Environment (JRE). Como el servidor no necesita una interfaz gráfica de usuario, utilizarás la versión sin interfaz gráfica del JRE.

Esto reduce el uso de recursos de JRE en la máquina, lo que ayuda a garantizar que el servidor de Minecraft tenga espacio suficiente para expandir su propio uso de recursos si fuera necesario.

Instala Java Runtime Environment (JRE) y el servidor de Minecraft

  1. En la terminal SSH de mc-server, ejecuta el siguiente comando para actualizar los repositorios de Debian en la VM:
sudo apt-get update
  1. Después de actualizar los repositorios, ejecuta el siguiente comando para instalar el JRE sin interfaz gráfica:
sudo apt-get install -y default-jre-headless
  1. Para navegar al directorio donde está activado el disco persistente, ejecuta el siguiente comando:
cd /home/minecraft
  1. Para instalar wget, ejecuta el siguiente comando:
sudo apt-get install wget
  1. Si se te solicita continuar, escribe Y.

  2. Para descargar el archivo JAR del servidor de Minecraft actual (1.11.2 JAR), ejecuta el siguiente comando:

sudo wget https://launcher.mojang.com/v1/objects/d0d0fe2b1dc6ab4c65554cb734270872b72dadd6/server.jar

Inicializa el servidor de Minecraft

  1. Para inicializar el servidor de Minecraft, ejecuta el siguiente comando:
sudo java -Xmx1024M -Xms1024M -jar server.jar nogui

Resultado (ejemplo):

[21:01:54] [main/ERROR]: Failed to load properties from file: server.properties [21:01:54] [main/WARN]: Failed to load eula.txt [21:01:54] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info. Nota: El servidor de Minecraft no se ejecutará a menos que aceptes las condiciones del Contrato de Licencia para el Usuario Final (CLUF).

Haz clic en Revisar mi progreso para verificar el objetivo.

Instalar Java Runtime Environment (JRE) y el servidor de Minecraft
  1. Para ver los archivos creados en la primera inicialización del servidor de Minecraft, ejecuta el siguiente comando:
sudo ls -l Nota: Puedes editar el archivo server.properties para cambiar el comportamiento predeterminado del servidor de Minecraft.
  1. Para editar el CLUF, ejecuta el siguiente comando:
sudo nano eula.txt
  1. Cambia la última línea del archivo de eula=false a eula=true.
  2. Presiona Ctrl + O > Intro para guardar el archivo y, luego, Ctrl + X para salir de nano.
Nota: No intentes reiniciar el servidor de Minecraft todavía. En el siguiente procedimiento, usarás una técnica diferente.

Crea una terminal virtual con screen para iniciar el servidor de Minecraft

Si en este punto vuelves a iniciar el servidor de Minecraft, este estará vinculado a la duración de tu sesión SSH; es decir, si cierras tu terminal SSH, también se cerrará el servidor. Para evitar este problema, utiliza screen, una aplicación que te permite crear una terminal virtual que se puede “desconectar” y ejecutar como proceso en segundo plano, o bien "volver a conectar" y ejecutar como proceso en primer plano. Cuando una terminal virtual se desconecta para iniciar el proceso en segundo plano, se ejecutará ya sea que hayas accedido al sistema o no.

  1. Para instalar screen, ejecuta el siguiente comando:
sudo apt-get install -y screen
  1. Para iniciar tu servidor de Minecraft en una terminal virtual de screen, ejecuta el siguiente comando (usa la marca -S para asignarle el nombre mcs a la terminal):
sudo screen -S mcs java -Xmx1024M -Xms1024M -jar server.jar nogui

Resultado (ejemplo):

... [21:06:06] [Server-Worker-1/INFO]: Preparing spawn area: 83% [21:06:07] [Server-Worker-1/INFO]: Preparing spawn area: 85% [21:06:07] [Server-Worker-1/INFO]: Preparing spawn area: 86% [21:06:08] [Server-Worker-1/INFO]: Preparing spawn area: 88% [21:06:08] [Server-Worker-1/INFO]: Preparing spawn area: 89% [21:06:09] [Server-Worker-1/INFO]: Preparing spawn area: 91% [21:06:09] [Server-Worker-1/INFO]: Preparing spawn area: 93% [21:06:10] [Server-Worker-1/INFO]: Preparing spawn area: 95% [21:06:10] [Server-Worker-1/INFO]: Preparing spawn area: 98% [21:06:11] [Server-Worker-1/INFO]: Preparing spawn area: 99% [21:06:11] [Server thread/INFO]: Time elapsed: 55512 ms [21:06:11] [Server thread/INFO]: Done (102.484s)! For help, type "help"

Desconecta la terminal de screen y cierra tu sesión SSH

  1. Para desconectar la terminal de screen, presiona Ctrl + A y Ctrl + D. La terminal continuará ejecutándose en segundo plano. Para volver a conectar la terminal, ejecuta el siguiente comando:
sudo screen -r mcs
  1. Si es necesario, presiona Ctrl + A y Ctrl + D para salir de la terminal de screen.
  2. Para salir de la terminal SSH, ejecuta el siguiente comando:
exit

¡Felicitaciones! Configuraste y personalizaste una VM. También instalaste y configuraste un software de aplicación: un servidor de Minecraft.

Tarea 4. Permite el tráfico de clientes

En esta tarea, configurarás una regla de firewall para permitir conexiones de clientes en el servidor de Minecraft. Hasta este punto, el servidor tiene una dirección IP externa estática, pero no puede recibir tráfico porque no se implementó una regla de firewall.

El servidor de Minecraft usa el puerto TCP 25565 de manera predeterminada.

Crea una regla de firewall

  1. En el menú de navegación () de la consola de Google Cloud, haz clic en Red de VPC > Firewall.
  2. Haz clic en Crear regla de firewall.
  3. Especifica lo siguiente y deja la configuración restante con sus valores predeterminados:
Propiedad Valor (escribe el valor o selecciona la opción como se especifica)
Nombre minecraft-rule
Destino Etiquetas de destino especificadas
Etiquetas de destino minecraft-server
Filtro de fuente Rangos de IPv4
Rangos de IPv4 de origen 0.0.0.0/0
Protocolos y puertos Protocolos y puertos especificados
  1. Para tcp, especifica el puerto 25565.
  2. Haz clic en Crear. Los usuarios ahora pueden acceder a tu servidor desde sus clientes de Minecraft.

Verifica la disponibilidad del servidor

  1. En el menú de navegación () de la consola de Cloud, haz clic en Red de VPC.
  2. En el panel izquierdo, haz clic en Direcciones IP.
  3. Ubica y copia la Dirección IP externa de la VM de mc-server.
  4. Usa Estado del servidor de Minecraft para probar tu servidor de Minecraft.

Nota: Si no funciona el sitio web, usa otro o prueba con la extensión de Chrome:

Haz clic en Revisar mi progreso para verificar el objetivo.

Permitir el tráfico de clientes

Tarea 5. Programa copias de seguridad periódicas

En esta tarea, configurarás el sistema para que cree una copia de seguridad de los datos del mundo de Minecraft en Cloud Storage. Crear copias de seguridad de los datos de tu aplicación es una actividad común.

Crea un bucket de Cloud Storage

  1. En el menú de navegación () de la consola de Google Cloud, haz clic en Compute Engine > Instancias de VM.
  2. En mc-server, haz clic en SSH.
  3. Crea un nombre de bucket único a nivel global y almacénalo en la variable de entorno YOUR_BUCKET_NAME. Para que sea único, puedes usar el ID de tu proyecto. Ejecuta el siguiente comando:
export YOUR_BUCKET_NAME=<Enter your bucket name here>
  1. Verifícalo con echo:
echo $YOUR_BUCKET_NAME
  1. Para crear el bucket con la herramienta de almacenamiento de gcloud, parte del SDK de Cloud, ejecuta el siguiente comando:
gcloud storage buckets create gs://$YOUR_BUCKET_NAME-minecraft-backup Nota: Si este comando falló, es posible que no hayas creado un nombre de bucket único. De ser así, elige otro nombre de bucket, actualiza tu variable de entorno y crea el bucket nuevamente. Nota: Para que esta variable de entorno sea permanente, puedes agregarla al archivo .profile de la raíz ejecutando el siguiente comando:
echo YOUR_BUCKET_NAME=$YOUR_BUCKET_NAME >> ~/.profile

Crea una secuencia de comandos de copia de seguridad

  1. En la terminal SSH de mc-server, ingresa en tu directorio de inicio:
cd /home/minecraft
  1. Para crear la secuencia de comandos, ejecuta el siguiente comando:
sudo nano /home/minecraft/backup.sh
  1. Copia y pega la siguiente secuencia de comandos en el archivo:
#!/bin/bash screen -r mcs -X stuff '/save-all\n/save-off\n' /usr/bin/gcloud storage cp -R ${BASH_SOURCE%/*}/world gs://${YOUR_BUCKET_NAME}-minecraft-backup/$(date "+%Y%m%d-%H%M%S")-world screen -r mcs -X stuff '/save-on\n'
  1. Presiona Ctrl + O > Intro para guardar el archivo y, luego, Ctrl + X para salir de nano.
Nota: La secuencia de comandos almacena el estado actual de los datos de mundos del servidor y detiene la funcionalidad de guardado automático del servidor. A continuación, crea una copia de seguridad del directorio de datos del mundo del servidor (world) y coloca su contenido en un directorio con marca de tiempo (<marca de tiempo>-world) en el bucket de Cloud Storage. Una vez que la secuencia de comandos termina de crear la copia de seguridad de los datos, se reanuda el guardado automático en el servidor de Minecraft.
  1. Para que se pueda ejecutar la secuencia de comandos, ejecuta el siguiente comando:
sudo chmod 755 /home/minecraft/backup.sh

Prueba la secuencia de comandos de copia de seguridad y programa un trabajo cron

  1. En la terminal SSH de mc-server, ejecuta la secuencia de comandos de copia de seguridad:
. /home/minecraft/backup.sh
  1. Después de que finalice la secuencia de comandos, regresa a la consola de Cloud.
  2. Para verificar que se haya escrito el archivo de la copia de seguridad, en el menú de navegación (), haz clic en Cloud Storage > Buckets.
  3. Haz clic en el nombre del bucket de la copia de seguridad. Deberías ver una carpeta que tenga un nombre con marca de fecha y hora. Ahora que verificaste que ya están funcionando las copias de seguridad, puedes programar un trabajo cron para automatizar la tarea.
  4. En la terminal SSH de mc-server, abre la tabla cron para editar:
sudo crontab -e
  1. Cuando se te pida que selecciones un editor, escribe el número correspondiente a nano y presiona Intro.
  2. En la parte inferior de la tabla cron, pega la siguiente línea:
0 */4 * * * /home/minecraft/backup.sh Nota: Esa línea le indica a cron que ejecute copias de seguridad cada 4 horas.
  1. Presiona Ctrl + O > Intro para guardar la tabla cron y, luego, Ctrl + X para salir de nano.
Nota: Esto crea aproximadamente 300 copias de seguridad al mes en Cloud Storage, por lo que deberás borrarlas con regularidad para evitar cargos. Cloud Storage ofrece la función Administración del ciclo de vida de los objetos para establecer un tiempo de actividad (TTL) para los objetos, archivar versiones anteriores de estos o “cambiar a una versión inferior” las clases de almacenamiento de objetos con el objetivo de facilitar la administración de costos.

Haz clic en Revisar mi progreso para verificar el objetivo.

Programar copias de seguridad periódicas

Tarea 6: Mantenimiento del servidor

En esta tarea, te conectarás al servidor y lo apagarás para realizar su mantenimiento.

Conéctate al servidor con SSH, detenlo y cierra la VM

  1. En la terminal SSH de mc-server, ejecuta el siguiente comando:
sudo screen -r -X stuff '/stop\n'
  1. En el menú de navegación () de la consola de Google Cloud, haz clic en Compute Engine > Instancias de VM.
  2. Selecciona mc-server.
  3. Haz clic en Detener.
  4. En el diálogo de confirmación, haz clic en Detener para confirmar. Saldrás de tu sesión de SSH.
Nota: Para volver a iniciar tu instancia, ve a la página de la instancia y, luego, haz clic en Iniciar. Para iniciar nuevamente el servidor de Minecraft, puedes establecer una conexión SSH con la instancia, volver a activar tu disco persistente y, luego, iniciar tu servidor de Minecraft en una nueva terminal de screen, tal como lo hiciste anteriormente.

Automatiza el mantenimiento del servidor con secuencias de comando de inicio y apagado

En lugar de seguir el proceso manual para activar el disco persistente e iniciar la aplicación del servidor en una pantalla, puedes usar secuencias de comandos de metadatos para crear una secuencia de comandos de inicio y otra de apagado.

  1. Haz clic en mc-server.

  2. Haz clic en Editar.

  3. En Metadatos, haz clic en + Agregar elemento y especifica lo siguiente:

    Clave Valor
    startup-script-url https://storage.googleapis.com/cloud-training/archinfra/mcserver/startup.sh
    shutdown-script-url https://storage.googleapis.com/cloud-training/archinfra/mcserver/shutdown.sh
Nota: Haz clic en Agregar elemento para agregar shutdown-script-url. Cuando reinicias tu instancia, la secuencia de comandos de inicio activa automáticamente el disco de Minecraft en el directorio apropiado, inicia tu servidor de Minecraft en una sesión de screen y desconecta la sesión. Cuando detienes la instancia, la secuencia de comandos de apagado apaga tu servidor de Minecraft antes de que se cierre la instancia. Se recomienda almacenar estas secuencias de comando en Cloud Storage.
  1. Haz clic en Guardar.

Haz clic en Revisar mi progreso para verificar el objetivo.

Mantenimiento del servidor

Tarea 7: Revisa

En este lab, creaste una instancia personalizada de una máquina virtual mediante la instalación de un software base (un JRE sin interfaz gráfica) y un software de aplicación (un servidor de juegos de Minecraft). Conectaste y preparaste un disco de datos SSD de alta velocidad para personalizar la VM, y reservaste una IP externa estática para que la dirección siguiera siendo coherente. A continuación, verificaste la disponibilidad del servidor de juegos en línea.

Configuraste un sistema de copia de seguridad para respaldar los datos del servidor en un bucket de Cloud Storage y probaste este sistema. Luego, automatizaste las copias de seguridad con cron. Por último, configuraste secuencias de comandos de mantenimiento con metadatos para iniciar y apagar el servidor correctamente.

Finalice su lab

Cuando haya completado el lab, haga clic en Finalizar lab. Google Cloud Skills Boost quitará los recursos que usó y limpiará la cuenta.

Tendrá la oportunidad de calificar su experiencia en el lab. Seleccione la cantidad de estrellas que corresponda, ingrese un comentario y haga clic en Enviar.

La cantidad de estrellas indica lo siguiente:

  • 1 estrella = Muy insatisfecho
  • 2 estrellas = Insatisfecho
  • 3 estrellas = Neutral
  • 4 estrellas = Satisfecho
  • 5 estrellas = Muy satisfecho

Puede cerrar el cuadro de diálogo si no desea proporcionar comentarios.

Para enviar comentarios, sugerencias o correcciones, use la pestaña Asistencia.

Copyright 2025 Google LLC. Todos los derechos reservados. Google y el logotipo de Google son marcas de Google LLC. El resto de los nombres de productos y empresas pueden ser marcas de las respectivas empresas a las que están asociados.

Before you begin

  1. Labs create a Google Cloud project and resources for a fixed time
  2. Labs have a time limit and no pause feature. If you end the lab, you'll have to restart from the beginning.
  3. On the top left of your screen, click Start lab to begin

Este contenido no está disponible en este momento

Te enviaremos una notificación por correo electrónico cuando esté disponible

¡Genial!

Nos comunicaremos contigo por correo electrónico si está disponible

One lab at a time

Confirm to end all existing labs and start this one

Use private browsing to run the lab

Use an Incognito or private browser window to run this lab. This prevents any conflicts between your personal account and the Student account, which may cause extra charges incurred to your personal account.