Serveur minecraft

Guide d'installation de Raspberry Pi Minecraft Server 1.14.4 – Resoudre les problemes d’un serveur MineCraft

Le 7 octobre 2019 - 9 minutes de lecture

Beaucoup de choses ont changé depuis la rédaction de mon dernier guide Raspberry Pi Minecraft Server. OpenJDK est désormais le support Java le mieux supporté pour Raspberry Pi et Oracle a cessé de prendre en charge Java 8 en janvier 2019. Java 11 est sorti et offre une tonne d'améliorations de performances.

Le Raspberry Pi 44 est également arrivé! Après avoir testé le serveur sur la version 4B 2 Go avec OpenJDK 11, je suis époustouflé par les performances et décide d’écrire un guide mis à jour et un script qui vous permettra d’être opérationnel en quelques minutes.

Pour vous donner une idée de la fluidité des synchronisations dans OpenJDK 11 sans tête avec le serveur Paper Spigot Minecraft, voici une session de près de 2 heures à laquelle j'ai joué avec ma petite amie. Cela a été joué en mode de survie sur un tout nouveau serveur, donc aucun bloc n'a été prégénéré et aucun paramètre n'a été modifié à partir des valeurs par défaut. Rien n'est overclocké sauf la carte SD. Il y avait même un village juste à côté de la ponte, tant d’entités étaient utilisées. Voici le rapport de sortie des timings:

Raspberry Pi Minecraft Server Timings
Raspberry Pi 3B + Horaires du serveur Minecraft
Raspberry Pi 3B + Config Minecraft
Raspberry Pi 3B + Config Minecraft

Configuration requise pour le serveur RPI Minecraft

Script d'installation du serveur Minecraft

SSH dans votre Raspberry Pi et tapez / collez les commandes suivantes:

wget -O SetupMinecraft.sh https://raw.githubusercontent.com/TheRemote/RaspberryPiMinecraft/master/SetupMinecraft.sh
chmod + x SetupMinecraft.sh
./SetupMinecraft.sh

Cela démarrera le processus de configuration du serveur et de la configuration. Il vous posera des questions sur la manière dont vous souhaitez configurer le serveur, puis le télécharger, le configurer et le démarrer automatiquement. Suivez le guide détaillé du script de configuration du serveur Minecraft ici pour une procédure pas à pas.

… Et nous avons fini! Le serveur Minecraft est maintenant dans le dossier «minecraft». Pour démarrer le type de serveur:

cd minecraft
./start.sh

Le serveur démarrera en arrière-plan à l'aide de l'application d'écran. Pour afficher le type de console:

screen -r minecraft

À partir de cette console, vous pouvez émettre n’importe quelle commande sur le serveur Minecraft. Le plus important à connaître est la commande permettant d’arrêter le serveur en toute sécurité. Cela sauvera tous les joueurs et tous les états qui sont simplement «arrêtés» sans les guillemets.

Pour sortir de la console sans fermer le serveur, appuyez sur Ctrl + A, puis sur Ctrl + D. Cela minimisera la session d'écran et vous ramènera à votre session de console principale. La session d'écran continuera à s'exécuter même si vous vous déconnectez de votre session SSH sur votre Pi!

Pour un guide plus détaillé du script d’installation, consultez cet article qui traite en profondeur du script d’installation.

Optimisations de performances spécifiques à Pi: Stockage et mémoire GPU

L'optimisation la plus importante que vous puissiez faire est un stockage haute performance. Lisez mon article sur les benchmarks de stockage de Raspberry Pi pour savoir pourquoi certains supports de stockage sont plus rapides de 1000% pour les E / S, facteur le plus important pour un serveur Raspberry Pi Minecraft. Vous pouvez également utiliser des adaptateurs USB pour les SSD mSATA (bon marché sur eBay) ou un câble USB vers SATA si vous avez un SSD plus ancien de 2,5 ″.

De toute façon, si vous envisagez d'utiliser une carte MicroSD, vous devez utiliser une carte MicroSD hautes performances et overclocker votre lecteur de carte SD pour obtenir les meilleures performances. Il faut normalement 50 Hz pour assurer la compatibilité avec les cartes de qualité inférieure à bas prix, mais jusqu’à 100 Hz. La vitesse de stockage est un goulot d'étranglement majeur sur le Pi et cela augmente vos vitesses de lecture / écriture.

La deuxième optimisation la plus importante consiste à configurer votre GPU pour qu’il utilise seulement 16 Mo de RAM. Étant donné que la mémoire RAM est rare sur le Pi, il en a besoin le plus possible (64 Mo sont utilisés par défaut). Tout cela se fait dans le fichier /boot/config.txt du Raspberry Pi. Type:

sudo nano /boot/config.txt

Placez ensuite ces lignes au bas de votre fichier config.txt:

dtparam = sd_overclock = 100
gpu_mem = 16

Maintenant, redémarrez votre Pi en utilisant

redémarrage sudo

C'est ça! Si votre Pi ne démarre pas après avoir effectué l’overclockage de la carte SD, ne paniquez pas. Il suffit de mettre la carte SD dans n'importe quel ordinateur et de supprimer la ligne dtparam = sd_overclock = 100 du fichier boot.txt. Vous pouvez le faire à partir de Windows en utilisant le Bloc-notes ou tout autre éditeur de texte sur n’importe quel système d’exploitation, car la partition de démarrage est toujours visible.

Si vous utilisez un ancien Raspberry Pi ou un Raspberry Pi Zero, vous voudrez peut-être l'overclocker également pour une performance optimale dans le jeu. Mon guide préféré pour l'overclocking de Raspberry Pis ancien est situé sur l'unique page wiki du projet RetroPie située ici. L'overclocking du processeur et de la mémoire sera le plus bénéfique.

Optimisations Minecraft – L'outil de chronométrage

Si vous utilisez un ancien Pi ou que plusieurs joueurs utilisent le serveur, vous devrez peut-être procéder à certaines optimisations. La chose la plus importante à comprendre sur l’optimisation de votre serveur Minecraft est de comprendre ce qui le ralentit. Le serveur Paper Minecraft contient un outil extrêmement utile appelé timings. Dans l'intro de cet article, j'ai posté une photo des graphiques de ce rapport.

Pour démarrer les mesures de minutage, ouvrez votre console Minecraft à l'aide de la commande screen -r minecraft, comme indiqué plus haut. Une fois dans la console Minecraft, tapez:

timings sur

Plus vous prenez de temps, mieux vous comprendrez ce qui ralentit votre serveur. Il est préférable de jouer comme vous le faites normalement lorsque vous prenez ces temps afin de prendre des mesures précises. Pour générer le rapport, tapez ce qui suit:

rapport de chronométrage

Cela donnera un lien à coller dans un navigateur Web pour afficher un rapport incroyablement détaillé.

Interpréter correctement les timings

Horaires détaillés ventilés par catégorie
Horaires détaillés ventilés par catégorie

Il existe plusieurs vues différentes disponibles. Il est important de ne pas regarder uniquement la catégorie «Lag», mais également celle «Tous». Si vous ne regardez que «Lag», vous ne voyez qu’une partie de la photo. Ceci est utile pour identifier les principaux ralentissements «spikey» mais pas les performances globales du serveur. Vérifiez l'onglet «Tous» et basculez entre total, moyen et nombre pour comprendre les performances de votre serveur.

Dans cet exemple, nous pouvons voir que certaines des opérations les plus coûteuses sur mon serveur sont des entités et des morceaux. Les entités sont des monstres / animaux / objets / villageois / etc. Les morceaux sont la carte elle-même. Si vous effectuez une exploration intensive sur un nouveau serveur, vous pouvez voir de très grands nombres de morceaux. Cela est dû au fait que le Pi les génère et les stocke sur la carte SD (lent). Si vous passez beaucoup de temps dans des villages ou que vous combattez des monstres, les entités peuvent être élevées.

Appliquer des optimisations

Si vous n'obtenez pas de bonnes performances et que vous avez exécuté l'outil de chronométrage, voici quelques-uns des suspects habituels à rechercher et les optimisations possibles à appliquer:

  • Attention aux mods / plugins – C’est l’une des causes les plus fréquentes de mauvaises performances. Certains mods augmentent massivement la charge sur le serveur. La meilleure façon de trouver le plug-in qui fait cela est de désactiver tous les plug-ins et de les activer un à la fois jusqu'à ce que vous voyiez les problèmes de performances et l'isoliez.
  • Vérifier les fichiers de configuration – Les fichiers de configuration sont server.properties, paper.yml, spigot.yml et bukkit.yml. En cas de doute sur un paramètre, recherchez-le sur Google ou consultez la documentation. Si vous bousillez votre configuration par inadvertance, vous pouvez rétablir sa configuration par défaut en supprimant le fichier et en relançant le serveur.
  • Abaissez vos comptes d'entités / plages – Tapez nano bukkit.yml et dans le fichier, vous trouverez les limites d'apparition: monstres: 70 animaux: 15 et plusieurs autres. Vous pouvez réduire ces nombres pour limiter le nombre d'entités par type. Tapez nano spigot.yml et vous trouverez entity-activation-range et entity-tracking-range. Ceux-ci contrôlent votre proximité avant que le serveur ne commence à faire en sorte que des monstres vous voient / vous suivent.
  • Désactiver le Nether et la fin – dans server.properties. Dans l'exemple de rapport, vous verrez que le Nether utilise des cycles de processeur (nous n'y sommes jamais allés). Lorsque / si votre groupe est prêt à aller au Nether, vous pouvez le réactiver dans les propriétés pour le réactiver. Vous pouvez désactiver «The End» dans bukkit.yml en définissant allow-end: false.
  • Réduisez la distance de vue – Cela devrait être un dernier recours, mais sur du matériel Pi plus ancien ou si vous voulez plus qu'une poignée de joueurs, c'est une option. Il augmentera considérablement les performances car il réduit le chargement / la génération de blocs. Étant donné que le chargement / déchargement / la génération de blocs est très intense en E / S, le Pi n’est pas très bon. Changez-le dans server.properties et spigot.yml.

Conclusion

Le Raspberry Pi fonctionne très bien comme serveur Minecraft pour moins de 5 joueurs. Vous pouvez jouer en multijoueur dans ce que vous ressentez et jouez comme une expérience solo!

Pour l'optimisation, les choses les plus importantes que vous puissiez faire sont

  • Choisissez le bon stockage (SSD ou Micro SD de haute qualité) pour pouvoir suivre la génération de blocs
  • Exécutez vos timings! Cela vous dira exactement ce qui ralentit votre serveur
  • Gardez les plugins au minimum pour éviter de submerger le Raspberry Pi avec des instructions supplémentaires
  • Si tout échoue, diminuez la distance de vue

Commentaires

Laisser un commentaire

Votre commentaire sera révisé par les administrateurs si besoin.