Configurer un serveur Minecraft sur Compute Engine

Ce tutoriel n'est ni approuvé par Mojang ou Minecraft, ni associé à ces derniers.

Pour exécuter un serveur Minecraft dédié, vous devez disposer d'un serveur dédié, ainsi que d'une grande quantité de mémoire RAM et de bande passante. Dans ce tutoriel, vous apprendrez à installer, configurer et exécuter un serveur Java Minecraft standard sur Compute Engine. Ce serveur est compatible avec les clients de bureau Minecraft standards basés sur Java.

Votre logiciel serveur Minecraft fonctionnera sur une instance Compute Engine, qui est une machine virtuelle s'exécutant sur l'infrastructure de Google. Dans ce tutoriel, nous utilisons le type de machine par défaut pour les instances Compute Engine : n1-standard-1. Ce type de machine n1-standard-1 inclut un disque de démarrage de 10 Go, 1 processeur virtuel (vCPU) et 3,75 Go de mémoire RAM. Il exécute Debian Linux par défaut.

Pour vous assurer de disposer d'un espace suffisant pour les données associées aux mondes du serveur Minecraft, vous devez également associer à l'instance un disque dur SSD (Solid State Drive) persistant hautes performances de 50 Go. Grâce à l'ajout de ce disque SSD persistant, l'instance répondra aux exigences de configuration système pour un serveur Minecraft dédié pouvant accepter jusqu'à 50 joueurs sans aucune difficulté.

Objectifs

  • Créer une instance de machine virtuelle Compute Engine
  • Installer et configurer le serveur Minecraft
  • Configurer des sauvegardes automatiques de vos données associées aux mondes Minecraft

Coûts

This tutorial uses the following billable components of Google Cloud Platform:

  • Machines virtuelles Compute Engine
  • Disques persistants Compute Engine
  • Cloud Storage

You can use the pricing calculator to generate a cost estimate based on your projected usage. New GCP users might be eligible for a free trial.

Une fois que vous avez terminé ce tutoriel, vous pouvez éviter de continuer à payer des frais en supprimant les ressources que vous avez créées. Pour en savoir plus, consultez la section Effectuer un nettoyage.

Avant de commencer

  1. Connectez-vous à votre compte Google.

    Si vous n'en possédez pas déjà un, vous devez en créer un.

  2. Select or create a Google Cloud Platform project.

    Go to the Manage resources page

  3. Assurez-vous que la facturation est activée pour votre projet.

    En savoir plus sur l'activation de la facturation

Créer et configurer votre instance Compute Engine

  1. Dans la console GCP, accédez à la page Instances de VM.

    Page des instances de VM

  2. Cliquez sur Créer.

  3. Sur la page Créer une instance, configurez l'instance comme suit :

    • Nommez votre instance mc-server.
    • Sélectionnez la zone dans laquelle vous souhaitez héberger votre instance. La zone us-central1-f est utilisée tout au long de ce tutoriel.
    • Dans la section Disque de démarrage, cliquez sur Modifier.
    • Modifiez le type de disque en Disque persistant SSD.
  4. Cliquez sur Sélectionner pour valider la modification, puis fermez la boîte de dialogue.

Vous venez de terminer la configuration de base. Toutefois, ne créez pas votre nouvelle instance tout de suite : pour répondre aux exigences d'un serveur Minecraft dédié, vous devez également configurer certains paramètres avancés.

Activer l'accès à Cloud Storage pour l'instance

Un peu plus loin dans ce tutoriel, vous apprendrez à sauvegarder les données associées aux mondes sur Cloud Storage, ce qui nécessite que votre instance ait accès à Cloud Storage en lecture et en écriture.

  1. Dans la fenêtre Créer une instance, sous Identité et accès à l'API, cliquez sur la liste déroulante Compte de service et sélectionnez Compte de service Compute Engine par défaut.
  2. Pour Niveaux d'accès, sélectionnez Définir l'accès pour chaque API.
  3. Dans la liste Stockage, sélectionnez Lecture/Écriture.

Ajouter un tag à l'instance

La prochaine étape consiste à ajouter un tag à l'instance. Plus loin dans ce tutoriel, vous utiliserez ce tag pour créer une règle de pare-feu permettant aux clients Minecraft externes d'accéder à votre serveur :

  1. Dans la fenêtre Créer une instance, cliquez sur Gestion, sécurité, disques, réseau et location unique pour faire apparaître les paramètres avancés.
  2. Dans l'onglet Mise en réseau, ajoutez le tag minecraft-server dans le champ Tags réseau.

Configurer une adresse IP statique pour l'instance

Pour pouvoir transférer les requêtes entrantes vers l'instance de manière fiable, celle-ci doit disposer d'une adresse IP statique.

  1. Dans l'onglet Mise en réseau, dans la section Interface réseau, cliquez sur Par défaut. Le menu de configuration Interface réseau s'affiche.
  2. Cliquez sur la liste Adresse IP externe, puis sélectionnez Créer une adresse IP.

    Créer une adresse IP statique

  3. Nommez votre adresse IP mcs-ip.

  4. Cliquez sur Reserve (Réserver) pour créer l'adresse.

  5. Cliquez sur OK pour valider les modifications et fermez le menu de configuration Interface réseau.

Ajouter un disque persistant à votre instance

Vous allez ensuite associer un disque persistant à l'instance. Contrairement aux disques de démarrage, les disques persistants ne sont pas liés à la vie de l'instance Compute Engine. Par exemple, si vos besoins en hébergement évoluent avec le temps, vous pourrez toujours déplacer le disque vers un type de machine plus approprié.

Le type de disque spécifique que vous utiliserez dans ce tutoriel est un disque SSD persistant. Il est compatible avec les opérations d'E/S très rapides, ce qui peut contribuer à la réduction des délais du serveur.

  1. Dans l'onglet Disques, cliquez sur Ajouter un disque.

  2. Dans la boîte de dialogue Créer un disque, remplissez le formulaire comme suit :

    • Dans le champ Nom, saisissez minecraft-disk.
    • Dans la liste Type, sélectionnez Disque persistant SSD.
    • Pour le Type de source, cliquez sur Disque vide.
    • Dans le champ Taille (Go), saisissez 50.
  3. Cliquez sur Créer. Lorsque vous créez l'instance, le disque est automatiquement associé.

  4. Pour créer votre nouvelle instance, cliquez sur Créer.

Formater et installer votre disque persistant

À ce stade du tutoriel, le disque est associé à l'instance, mais il n'a pas encore été installé. C'est tout à fait normal. Si vous l'installez maintenant, le disque ne pourra pas fonctionner de manière optimale. Comme pour tous les disques, le disque persistant doit d'abord être formaté avec un système de fichiers que votre système d'exploitation peut comprendre (dans ce tutoriel, le système d'exploitation utilisé est Debian Linux).

  1. Établissez une connexion ssh avec votre instance. Sur la ligne correspondant à mc-server dans la page de vos Instances de VM, cliquez sur SSH.

    Terminal SSH

  2. Une fois que le terminal SSH est ouvert, créez un répertoire nommé minecraft dans le répertoire home de l'instance. Vous utiliserez ce répertoire comme point d'installation pour le disque persistant.

    user@mc-server: sudo mkdir -p /home/minecraft
  3. Formatez votre disque :

    user@mc-server: 
    sudo mkfs.ext4 -F -E \
        lazy_itable_init=0,lazy_journal_init=0,discard /dev/disk/by-id/google-minecraft-disk
    
  4. Installez votre disque.

    user@mc-server: 
    sudo mount -o discard,defaults /dev/disk/by-id/google-minecraft-disk /home/minecraft

Installer et exécuter le serveur Minecraft sur l'instance

Le disque persistant est maintenant installé. Il est donc temps d'installer et d'exécuter votre serveur Minecraft.

Configurer l'environnement d'exécution Java (JRE)

Le serveur Minecraft s'exécute sur la machine virtuelle Java (JVM), et il nécessite donc l'environnement d'exécution Java (JRE) pour fonctionner. Dans la mesure où le serveur n'a pas besoin d'une interface utilisateur graphique, ce tutoriel utilise la version en mode "headless" (sans interface utilisateur) du JRE. Cette approche réduit l'utilisation des ressources de la machine par l'environnement d'exécution, ce qui contribue à garantir que le serveur Minecraft dispose de suffisamment d'espace pour accroître sa propre utilisation des ressources si nécessaire.

Avant de pouvoir télécharger et installer la version sans interface utilisateur du JRE, vous devez mettre à jour les référentiels sur votre installation Debian.

  1. Exécutez la commande suivante dans votre terminal ssh :

    user@mc-server: sudo apt-get update
  2. Installez le JRE en version "headless" :

    user@mc-server: sudo apt-get install -y default-jre-headless

Installer le serveur Minecraft

Une fois le JRE configuré, vous pouvez télécharger et installer le serveur Minecraft.

  1. Accédez à votre répertoire minecraft :

    user@mc-server: cd /home/minecraft
  2. Du fait que le répertoire minecraft contient votre disque persistant une fois celui-ci installé, vous devez disposer d'un niveau d'accès particulier appelé accès utilisateur root pour y exécuter des commandes. Transmettez la commande suivante pour devenir l'utilisateur racine :

    user@mc-server: sudo su

    Notez que l’invite du terminal change pour faire apparaître root au lieu de user. Cela confirme que vous exécutez désormais toute commande en tant qu'utilisateur root.

  3. Téléchargez ensuite le fichier d'archive Java (JAR) actuel du serveur Minecraft sur l'instance :

    root@mc-server: 
    wget https://s3.amazonaws.com/Minecraft.Download/versions/1.12.2/minecraft_server.1.12.2.jar
  4. Démarrez le serveur pour la première fois :

    root@mc-server: java -Xms1G -Xmx3G -d64 -jar minecraft_server.1.12.2.jar nogui

    Le serveur démarre, exécute quelques opérations, puis s’arrête.

  5. Exécutez la commande suivante pour afficher les fichiers que vous avez créés dans le répertoire minecraft :

    root@mc-server: ls -l
  6. Ouvrez le fichier eula.txt dans un éditeur de texte.

    root@mc-server: nano eula.txt

    Ce fichier contient une seule variable booléenne, eula. Pour utiliser le serveur Minecraft, vous devez accepter les conditions du contrat de licence utilisateur final (CLUF) de Minecraft. Si vous acceptez les conditions du CLUF, passez la valeur eula de false à true, puis enregistrez le fichier et fermez-le.

Configurer le serveur Minecraft

Avant d'exécuter le serveur Minecraft, vous pouvez modifier les propriétés par défaut du serveur. Pour ce faire, modifiez le fichier server.properties :

$ nano server.properties

Pour obtenir une description complète de chaque type de propriété et des valeurs possibles, consultez la page server.properties sur le wiki Minecraft.

Exécuter le serveur Minecraft

Si vous redémarrez le serveur Minecraft à ce stade, il sera associé à la durée de la session sh. En d'autres termes, si vous fermez le terminal ssh, le serveur est également arrêté. Pour éviter ce problème, vous pouvez utiliser screen : cette application vous permet de créer un terminal virtuel qui peut être "détaché", et donc considéré comme un processus en arrière-plan, ou "rattaché", pour être alors considéré comme un processus de premier plan. Lorsqu'un terminal virtuel est détaché pour une exécution en arrière-plan, il fonctionne que vous soyez connecté ou non.

  1. Dans votre terminal ssh, installez screen :

    root@mc-server: apt-get install -y screen
  2. Démarrez ensuite le serveur Minecraft dans un terminal virtuel screen. Nommez le terminal mcs à l'aide de l'indicateur -S :

    root@mc-server: screen -S mcs java -Xms1G -Xmx3G -d64 -jar minecraft_server.1.12.2.jar nogui
  3. Détachez le terminal screen en appuyant sur les touches Ctrl + a, puis d. Le terminal continue de fonctionner en arrière-plan.

    Pour associer à nouveau le terminal, exécutez screen -r <terminal_name> comme suit :

    root@mc-server: screen -r mcs

    Enfin, détachez à nouveau le terminal screen, si nécessaire. Saisissez exit une fois pour quitter le mode utilisateur root, puis saisissez exit à nouveau pour fermer la connexion ssh.

Félicitations ! Vous disposez désormais d'un serveur Minecraft en cours d'exécution. Toutefois, il n'est pas tout à fait prêt à être partagé pour l'instant. Avant de pouvoir donner accès à votre serveur, vous devez configurer une règle de pare-feu permettant aux utilisateurs de s'y connecter.

Autoriser les clients à accéder au serveur Minecraft

Pour pouvoir transférer les requêtes entrantes vers l'instance de manière fiable, vous devez créer une règle de pare-feu.

  1. Dans la console GCP, accédez à la page Réseaux VPC.

    Accéder à la page des réseaux VPC

  2. Dans la table de réseaux disponibles, dans la colonne Nom, cliquez sur le réseau Par défaut.

  3. Sur la page Détails du réseau VPC, dans l'onglet Règles de pare-feu, cliquez sur Ajouter une règle de pare-feu.

  4. Sur la page Créer une règle de pare-feu, remplissez le formulaire comme suit :

    • Dans le champ Nom, saisissez minecraft-rule.
    • Dans le champ Tags cibles, saisissez minecraft-server.
    • Dans Filtre source, cliquez sur Plages d'adresses IP.
    • Pour les Plages d'adresses IP sources, saisissez 0.0.0.0/0.
    • Dans le champ Protocoles ou ports, saisissez tcp:25565.
  5. Lancez la création de votre règle de pare-feu en cliquant sur Créer. Les utilisateurs peuvent à présent accéder à votre serveur depuis leur client Minecraft.

Programmer des sauvegardes régulières

Que vous exécutiez un client Minecraft local ou un serveur Minecraft, il est recommandé d'effectuer des sauvegardes régulières de vos données associées aux mondes Minecraft. Cette section explique comment configurer des sauvegardes régulières de vos données à l'aide de Cloud Storage.

Créer un script de sauvegarde

  1. Établissez à nouveau une connexion ssh avec votre instance.

  2. Une fois le terminal ouvert, devenez l'utilisateur root en procédant comme suit :

    user@mc-server: sudo su
  3. Créez un bucket Cloud Storage pour stocker vos sauvegardes :

    root@mc-server: gsutil mb gs://<project_id>-minecraft-backup
  4. Ensuite, créez un fichier de script d'interface système, backup.sh, dans le dossier minecraft, puis ouvrez-le pour le modifier :

    root@mc-server: nano /home/minecraft/backup.sh
  5. Collez le script suivant dans le fichier. Remplacez [BUCKET_NAME] par le nom de votre bucket Cloud Storage :

    #!/bin/bash
    screen -r mcs -X stuff '/save-all\n/save-off\n'
    /usr/bin/gsutil cp -R ${BASH_SOURCE%/*}/world gs://[BUCKET_NAME]/$(date "+%Y%m%d-%H%M%S")-world
    screen -r mcs -X stuff '/save-on\n'
    

    Ce script enregistre les données associées aux mondes en l'état actuel, puis met en veille la fonctionnalité d'enregistrement automatique du serveur. Le script sauvegarde ensuite le répertoire des données associées aux mondes du serveur (world) en plaçant son contenu dans un répertoire horodaté (<timestamp>-world) dans le bucket Cloud Storage. Une fois les données sauvegardées, le script active de nouveau l'enregistrement automatique sur le serveur Minecraft.

  6. Enregistrez le fichier et fermez-le.

  7. Exécutez la commande suivante pour rendre votre script exécutable :

    root@mc-server: chmod 755 /home/minecraft/backup.sh
  8. Testez le script en procédant comme suit :

    root@mc-server: /home/minecraft/backup.sh
  9. Une fois le script terminé, accédez au navigateur Cloud Storage dans la console GCP et cliquez sur le bucket. Une sauvegarde horodatée du répertoire world devrait s'afficher.

Planifier une tâche Cron

À moins que vous ne préfériez initialiser manuellement chaque sauvegarde, vous souhaitez probablement que le script s'exécute automatiquement à intervalles prévisibles. Pour ce faire, vous devez planifier une tâche Cron.

  1. Ouvrez la table Cron pour la modifier :

    root@mc-server: crontab -e
  2. Faites défiler le fichier jusqu'en bas et collez la ligne suivante, qui spécifie que backup.sh sera exécuté toutes les quatre heures :

    0 */4 * * * /home/minecraft/backup.sh
    
  3. Enregistrez le fichier et fermez-le.

Votre instance Compute Engine sauvegarde désormais automatiquement, toutes les quatre heures, les données associées à vos mondes vers un bucket Cloud Storage.

Supprimer automatiquement les anciennes sauvegardes

Si vous sauvegardez les données associées aux mondes toutes les quatre heures, cela signifie que vous effectuerez des sauvegardes six fois par jour, 72 fois par semaine et environ 300 fois par mois. Vous pouvez supprimer automatiquement les anciennes sauvegardes à l'aide de la fonctionnalité de gestion du cycle de vie des objets de Cloud Storage. Cette fonctionnalité vous permet d'indiquer au bucket Cloud Storage d'archiver ou de supprimer automatiquement les anciennes sauvegardes après un certain temps ou si de nouvelles sauvegardes sont disponibles.

  1. Dans la console GCP, ouvrez le navigateur Cloud Storage :

    Accéder au navigateur Cloud Storage

  2. Dans la liste de buckets, recherchez votre bucket Minecraft, puis cliquez sur Aucun dans la colonne Cycle de vie.

  3. Dans la page Afficher les instructions de cycle de vie des objets, cliquez sur Ajouter une instruction.

  4. Dans la section Sélectionner les conditions de l'objet, sélectionnez Âge. Définissez l'âge sur 7 jours et cliquez sur Continuer.

  5. Dans la section Sélectionner une action, sélectionnez Supprimer et cliquez sur Continuer.

  6. Cliquez sur Enregistrer pour sauvegarder vos paramètres.

Chaque sauvegarde sera désormais supprimée une semaine après que votre script de sauvegarde l'a envoyée à Cloud Storage.

Fermer le serveur Minecraft

Si vous n'avez pas besoin d'exécuter le serveur Minecraft, vous devez le fermer afin d'éviter des frais inutiles.

  1. Connectez-vous à votre instance au moyen de ssh.

  2. Une fois le terminal ouvert, arrêtez le serveur Minecraft en transmettant une commande /stop au terminal screen dans lequel le serveur s'exécute :

    user@mc-server: sudo screen -r -X stuff '/stop\n'
  3. Arrêtez votre instance. Sur la page Instances de VM, cliquez sur le nom de l'instance, puis sur le bouton Arrêter en haut de la page. Vous êtes alors déconnecté de votre session ssh.

  4. Pour redémarrer votre instance, accédez à la page de l'instance, puis cliquez sur le bouton Démarrer en haut. Pour redémarrer le serveur Minecraft, vous pouvez établir une connexion ssh avec l'instance, réinstaller votre disque persistant, et démarrer votre serveur Minecraft dans un nouveau terminal screen, comme décrit à la section Exécuter le serveur Minecraft.

Automatiser les procédures de démarrage et de fermeture

Si vous envisagez de fermer régulièrement le serveur, pensez à ajouter des scripts de démarrage et d'arrêt à l'instance afin d'automatiser les procédures de démarrage et de fermeture courantes.

  1. Dans la console GCP, accédez à la page Instances de VM.

    Page des instances de VM

  2. Cliquez sur le nom de l'instance.

  3. Cliquez sur Modifier.

  4. Dans la section Métadonnées personnalisées, ajoutez une nouvelle clé nommée startup-script et copiez le script suivant dans le champ Valeur correspondant :

    #!/bin/bash
    mount /dev/disk/by-id/google-minecraft-disk /home/minecraft
    (crontab -l ; echo "0 */4 * * * /home/minecraft/backup.sh")| crontab -
    cd /home/minecraft
    screen -d -m -S mcs java -Xms1G -Xmx3G -d64 -jar minecraft_server.1.12.2.jar nogui
    

    Lors du redémarrage de l'instance, le script installe automatiquement le disque Minecraft dans le répertoire correspondant, réinstalle la tâche Cron, démarre le serveur Minecraft dans une session screen, puis détache la session.

  5. Pour automatiser la procédure d'arrêt, ajoutez une autre clé nommée shutdown-script et copiez les éléments suivants dans le champ Valeur correspondant :

    #!/bin/bash
    sudo screen -r -X stuff '/stop\n'
    
  6. En bas de la page, cliquez sur Enregistrer pour valider vos modifications. Lorsque vous arrêtez votre instance, ce script arrête votre serveur Minecraft avant l'arrêt de l'instance proprement dite.

Nettoyer

Pour éviter que les ressources utilisées lors de ce tutoriel soient facturées sur votre compte Google Cloud Platform :

Supprimer le projet

  1. Dans la console GCP, accédez à la page "Projets".

    Accéder à la page Projets

  2. Dans la liste des projets, sélectionnez celui que vous souhaitez supprimer, puis cliquez sur Delete project (Supprimer le projet). Après avoir coché la case à côté du nom du projet, cliquez sur "Supprimer le projet".
  3. Dans la boîte de dialogue, saisissez l'ID du projet, puis cliquez sur Arrêter pour supprimer le projet.

Étapes suivantes

Accéder au wiki Minecraft

Le wiki Minecraft fournit de nombreuses ressources utiles aux joueurs de Minecraft comme aux administrateurs de serveur.

Essayer un autre serveur Minecraft

Le serveur Minecraft que vous avez installé dans ce tutoriel représente l'un des nombreux serveurs Minecraft disponibles. Rendez-vous sur la page Serveurs personnalisés du wiki Minecraft pour obtenir une liste de serveurs alternatifs optimisés suivant le type de jeu, les exigences machine, les facilités de modification et plus encore.

Consulter d'autres tutoriels

Testez par vous-même d'autres fonctionnalités de Google Cloud Platform. Découvrez nos tutoriels.

Cette page vous a-t-elle été utile ? Évaluez-la :

Envoyer des commentaires concernant…