martes, 4 de enero de 2022

Instalando un servidor Minecraft en Oracle Cloud Infrastructure

El año pasado encontré un artículo al respecto en el blog de Oracle Developers, y ahora con un poco mas de tiempo me tomé el trabajo (con la ayuda de mi hijo Bruno) de probar y documentar (hay algunas diferencias mínimas) el proceso completo para crear una maquina virtual en Oracle Cloud Infrastructure e instalar un servidor Minecraft en ella.


Creando y Configurando la VM

Creación de la VM

A continuación vamos a ver los pasos para crear la VM donde instalaremos Minecraft. El primer paso luego de iniciar sesión en nuestra cuenta de Oracle Cloud es usar el menu principal para acceder a la sección de "Instances" de nuestra cuenta:


Una vez en ella, debemos seleccionar la opción "Create Instance":


El asistente nos va a ayudar a completar la información requerida para crear la VM, lo primero que debemos hacer es ingresar un nombre para la misma y luego presionar "Edit" en la sección de "Image and Shape", como se muestra a continuación


Y luego debemos seleccionar la opción "Change Image" para cambiar la configuración por defecto:


El asistente nos muestra todas las opciones disponibles. Dejando la opción "Virtual Machine" tal como viene por defecto, seleccionaremos la opción de procesador Ampere (una linea de procesadores que ofrece una mejor capacidad de procesamiento con un costo mucho mas bajo) y activaremos la opción "VM.Standard.A1.Flex", eligiendo luego dos procesadores (OCPU) en vez de uno, manteniendo los 6GB de RAM, y seleccionaremos "Select Shape" para confirmar:


A continuación, vamos a configurar las opciones de red para la VM. Debemos crear una nueva VCN para la misma y habilitar una sub red pública (para poder conectarnos desde internet) dentro de la misma, tal como se muestra a continuación:


El paso siguiente es crear un conjunto de Keys para acceder al servidor. Debemos descargar tanto la clave privada como la clave publica para poder conectarnos luego al mismo.


Por último, debemos configurar el volumen de almacenamiento de nuestra VM, en este caso no es necesario que usemos encriptación en transito (aunque se podría dejar habilitada) y luego solo tenemos que seleccionar la opción "Create" para crear la VM


Al presionar Create el asistente de configuración de VM se cierra y veremos el detalle de la VM que está siendo creada, la cual permanecerá en estado "Provisioning" por un minuto o menos hasta que se encuentre completamente disponible:


Una vez que la VM ha sido creada y se encuentra accesible, podemos obtener la IP pública para luego acceder a la misma usando SSH:


Pero antes de acceder, vamos a configurar algunos detalles de la red que creamos para poder conectarnos desde Minecraft

Configurando la Sub Red Publica

En la misma pagina principal de la VM, donde tenemos la información de la misma, podemos hacer click en el nombre de la subred donde se encuentra la VM para ver sus detalles:


La subred que creamos con la VM posee una lista de seguridad, la cual debemos editar para permitir que se pueda acceder al servidor Minecraft que vamos a instalar, para lo cual debemos hacer click en el nombre de la misma:


Luego, debemos ir a la sección donde están disponibles las reglas de acceso, y agregar dos nuevas reglas presionando el botón "Add Ingress Rules":


Esta pantalla nos permite agregar reglas, debemos agregar dos nuevas reglas (una para el protocolo TCP y otra para UDP) usando la dirección 0.0.0.0/0 y el puerto 25565 en ambos casos. Completamos los datos para TCP, presionamos "+ Another Ingress Rule", completamos los datos para UTP y luego presionamos "Add Ingress Rules":



Instalación de Minecraft Server en la VM

Conexión por SSH a la VM

Una vez que la VM esta creada, podemos conectarnos a la misma mediante SSH usando la dirección publica que obtuvimos una vez que la VM fue provisionada, la clave privada (Private Key) que descargamos antes de crear la VM y usando el usuario "opc" que existe por defecto en todas las VM creadas en Oracle Cloud. Si no conocen como conectarse por SSH mediante el uso de Keys pueden consultar este artículo.

Instalación de Java

Minecraft es una aplicación Java, por lo que lo primero que debemos realizar es instalar Java en la instancia recién creada. Al día de la fecha, la versión mas actualizada de Java para procesadores Arm es la versión 17, por lo que vamos a instalar la misma de la ejecutando lo siguiente:


sudo yum install jdk-17.aarch64

Una vez instalado Java podemos confirmar que se encuentra todo OK mediante el siguiente comando:

java --version
El cual debe producir un resultado similar al siguiente:

java 17.0.1 2021-10-19 LTS Java(TM) SE Runtime Environment (build 17.0.1+12-LTS-39) Java HotSpot(TM) 64-Bit Server VM (build 17.0.1+12-LTS-39, mixed mode, sharing)

Configuración del Firewall

El paso siguiente es habilitar el puerto 25565 que utiliza por defect Minecraft en el firewall de nuestra VM, para ello vamos a ejecutar lo siguiente:

sudo firewall-cmd --permanent --zone=public --add-port=25565/tcp sudo firewall-cmd --permanent --zone=public --add-port=25565/udp sudo firewall-cmd --reload

Descargar e Instalar Minecraft

El paso siguiente es obtener la dirección el software de Minecraft en la pagina oficial. En la misma, podemos encontrar el enlace, del cual debemos copiar la dirección como mostramos a continuación:



Volvemos a nuestra instancia y vamos a ejecutar el comando wget (que obtiene o descarga archivos de internet) seguido de la dirección que acabamos de copiar:


wget https://launcher.mojang.com/v1/objects/125e5adf40c659fd3bce3e66e67a16bb49ecc1b9/server.jar

Una vez que la descarga termina, solo tenemos que ejecutar lo siguiente:

java -Xmx4096M -Xms4096M -jar server.jar nogui

Vamos a recibir un mensaje de error indicando que no hemos aceptado la licencia:

Starting net.minecraft.server.Main [20:29:39] [ServerMain/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

Para solucionar el problema, solo debemos editar el archivo eula.txt (usando nano por ejemplo, que es un editor de archivos muy sencillo de usar disponible en Oracle Linux) y modificar la linea que dice "eula=false" para que diga "eula=true", y volvemos a iniciar el proceso:

[opc@servidorminecraft ~]$ java -Xmx4096M -Xms4096M -jar server.jar nogui
Starting net.minecraft.server.Main [20:32:35] [Server thread/INFO]: Starting minecraft server version 1.18.1 [20:32:35] [Server thread/INFO]: Loading properties [20:32:35] [Server thread/INFO]: Default game type: SURVIVAL [20:32:35] [Server thread/INFO]: Generating keypair [20:32:35] [Server thread/INFO]: Starting Minecraft server on *:25565 [20:32:36] [Server thread/INFO]: Using epoll channel type [20:32:36] [Server thread/INFO]: Preparing level "world" [20:32:36] [Server thread/INFO]: Preparing start region for dimension minecraft:overworld [20:32:38] [Worker-Main-2/INFO]: Preparing spawn area: 0% [20:32:43] [Worker-Main-2/INFO]: Preparing spawn area: 0%
...
...
[20:35:12] [Worker-Main-2/INFO]: Preparing spawn area: 0% [20:35:13] [Worker-Main-2/INFO]: Preparing spawn area: 0% [20:35:15] [Worker-Main-2/INFO]: Preparing spawn area: 31% [20:35:15] [Worker-Main-2/INFO]: Preparing spawn area: 31% [20:35:15] [Worker-Main-2/INFO]: Preparing spawn area: 31% [20:35:15] [Worker-Main-2/INFO]: Preparing spawn area: 96% [20:35:15] [Server thread/INFO]: Time elapsed: 35033 ms [20:35:15] [Server thread/INFO]: Done (35.189s)! For help, type "help"


A continuación debemos abrir Minecraft en nuestra PC (debemos usar la edición Java) y configurar el servidor en Minecraft:




Luego nos conectarnos al mismo:




Y a jugar!!!



No hay comentarios.:

Publicar un comentario