Skip to content

Proyecto para desplegar un server de Minecraft en AWS usando tecnologías DevOps y IaC.

Notifications You must be signed in to change notification settings

afdezfraga/MinecraftAWSFreeTier

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

MinecraftAWSFreeTier

Proyecto para desplegar un server de Minecraft en AWS usando tecnologías DevOps y IaC.

El objetivo es hacer el despliegue completamente en la capa gratuita de AWS para tener un servidor de Minecraft 1.17+ con 0 costes.

La dificultad extra que trae esta versión es que requiere Java 16, que no se puede instalar de forma estandar usando los gestores de paquetes (al menos a día de hoy 15/06/2021).

Prerequisitos

Pasos de configuración iniciales

  • En IAM, crear un usuario con permisos de administrador, tipo acceso a la consola.
  • En IAM, crear un usuario con permisos de adecuados (o de administrador si tienes prisa), tipo acceso mediante programación y guardar la clave y la clave secreta.
  • En EC2, crear un par de claves ssh y guardar la clave privada.
  • Modificar el archivo $HOME/.aws/configure y añadir un perfil [minecraft] con la clave y clave secreta que hemos guardado.
  • Copiar la clave ssh privada en $HOME/.ssh/id_rsa.
  • Clona este repositorio git clone https://github.com/afdezfraga/MinecraftAWSFreeTier.git.
  • Modifica las variables de Terraform segun necesites en el fichero terraform/terraform.tfvars.
  • Descarga el JDK de Java 16(Linux x64 Compressed Archive) y añadelo a la carpeta ansible/files.

Pasos de despliegue: Terraform

Despliega:

  • Un grupo de seguridad con reglas para SSH y conexiónes de Minecraft.
  • Una instancia EC2 de la capa gratuita con IP pública.
cd terraform
terraform init
terraform apply

Consulta la IP pública asignada a la instancia

terraform status show aws_instance.minecraftServer

Pasos de configuración: Ansible

Substituye la IP obtenida en el paso anterior en el fichero ansible.inventory. Ejecuta el aprovisionamiento.

cd ansible
ansible-playbook -i ../ansible.inventory -u ubuntu playbook.yml

About

Proyecto para desplegar un server de Minecraft en AWS usando tecnologías DevOps y IaC.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published