One place for hosting & domains

      créer

      Comment créer un pool de stockage redondant en utilisant GlusterFS sur Ubuntu 20.04


      Une version antérieure de ce tutoriel a été écrite par Brennan Bearnes.

      Introduction

      Lorsque vous stockez des données critiques, avoir un seul point de défaillance est très risqué. Alors que beaucoup de bases de données et autres logiciels vous permettent de répartir les données dans le contexte d’une seule application, d’autres systèmes peuvent fonctionner au niveau du système de fichiers pour s’assurer que les données sont copiées à un autre endroit chaque fois qu’elles sont écrites sur le disque.

      GlusterFS est un système de fichiers de stockage connecté en réseau qui vous permet de mettre en commun les ressources de stockage de plusieurs machines. Cela vous permet de traiter plusieurs périphériques de stockage répartis sur plusieurs ordinateurs comme une seule unité plus puissante. GlusterFS vous donne également la liberté de créer différents types de configurations de stockage, dont beaucoup sont fonctionnellement similaires aux niveaux RAID. Par exemple, vous pouvez répartir les données sur différents nœuds du cluster, ou vous pouvez mettre en place une redondance pour une meilleure disponibilité des données.

      Objectifs

      Dans ce guide, vous créerez un tableau de stockage redondant en grappe, également connu sous le nom de système de fichiers distribués ou, comme il est mentionné dans la documentation GlusterFS, un pool de stockage fiable. Cela fournira des fonctionnalités similaires à une configuration RAID en miroir sur le réseau : chaque serveur indépendant contiendra sa propre copie des données, ce qui permettra à vos applications d’accéder à l’une ou l’autre des copies, contribuant ainsi à répartir votre charge de lecture.

      Ce cluster GlusterFS redondant sera composé de deux serveurs Ubuntu 20.04. I agira comme un serveur NAS avec RAID en miroir. Vous accéderez ensuite au cluster à partir d’un troisième serveur Ubuntu 20.04 configuré pour fonctionner comme client GlusterFS.

      Une note sur l’exécution sécurisée de GlusterFS

      Lorsque vous ajoutez des données à un volume GlusterFS, les données sont synchronisées à chaque machine du pool de stockage où le volume est hébergé. Ce trafic entre les nœuds n’est pas crypté par défaut, ce qui signifie qu’il y a un risque qu’il puisse être intercepté par des acteurs malveillants.

      Pour cette raison, si vous souhaitez utiliser GlusterFS en production, il est recommandé de l’exécuter sur un réseau isolé. Par exemple, vous pouvez le configurer pour qu’il fonctionne sur un nuage privé virtuel (VPC) ou avec un VPN fonctionnant entre chacun des nœuds.

      Si vous prévoyez de déployer GlusterFS sur DigitalOcean, vous pouvez le configurer comme un réseau isolé en ajoutant votre infrastructure de serveur à un nuage privé virtuel DigitalOcean. Pour plus de détails sur la manière de le mettre en place, consultez notre documentation sur les produits VPC.

      Conditions préalables

      Pour suivre ce tutoriel, vous aurez besoin de trois serveurs fonctionnant sous Ubuntu 20.04. Chaque serveur doit avoir un utilisateur non root avec des privilèges administratifs et un pare-feu configuré avec UFW. Pour le mettre en place, suivez notre guide de configuration initiale du serveur pour Ubuntu 20.04.

      Remarque : Comme mentionné à la section Objectifs, ce tutoriel vous guidera à travers la configuration de deux de vos serveurs Ubuntu pour qu’ils agissent comme des serveurs dans votre pool de stockage et le dernier pour qu’il agisse comme un client que vous utiliserez pour accéder à ces nœuds.

      Pour plus de clarté, ce tutoriel fera référence à ces machines avec les noms d’hôte suivants :

      Nom d’hôteRôle dans le pool de stockage
      gluster0Serveur
      gluster1Serveur
      gluster2Client

      Les commandes qui devraient être exécutées sur gluster0 ou gluster1 auront respectivement des arrière-plans bleu et rouge :

      Les commandes qui ne devraient être exécutées que sur le client (gluster2) auront un arrière-plan vert :

      Les commandes qui peuvent ou devraient être exécutées sur plusieurs machines auront un arrière-plan gris :

      Étape 1 – Configuration de la résolution DNS sur chaque machine

      La mise en place d’une sorte de résolution de nom d’hôte entre chaque ordinateur peut aider à gérer votre pool de stockage Gluster. De cette façon, chaque fois que vous devez référencer une de vos machines dans une commande gluster plus loin dans ce tutoriel, vous pourrez le faire avec un nom de domaine facile à mémoriser ou même un surnom au lieu de leurs adresses IP respectives.

      Si vous n’avez pas de nom de domaine de rechange, ou si vous souhaitez simplement configurer quelque chose rapidement, vous pouvez à la place modifier le fichier /etc/hosts sur chaque ordinateur. Il s’agit d’un fichier spécial sur les machines Linux où vous pouvez configurer le système de manière statique pour résoudre tous les noms d’hôte contenus dans le fichier en adresses IP statiques.

      Remarque : Si vous souhaitez configurer vos serveurs pour qu’ils s’authentifient avec un domaine qui vous appartient, vous devrez d’abord obtenir un nom de domaine à partir d’un registraire de domaine — comme Namecheap ou Enom — et configurer les enregistrements DNS appropriés.

      Une fois que vous avez configuré un enregistrement A pour chaque serveur, vous pouvez passer à l’étape 2. En suivant ce guide, assurez-vous de remplacer glusterN.example.com et gluster<^>N<^> par le nom de domaine qui se résout au serveur respectif référencé dans la commande example.

      Si vous avez obtenu votre infrastructure auprès de DigitalOcean, vous pouvez ajouter votre nom de domaine à DigitalOcean puis configurer un enregistrement A unique pour chacun de vos serveurs.

      À l’aide de votre éditeur de texte préféré, ouvrez ce fichier avec des privilèges root sur chacune de vos machines. Ici, nous utiliserons nano :

      Par défaut, le fichier ressemblera à quelque chose comme celui-ci avec les commentaires supprimés :

      /etc/hosts

      127.0.1.1 hostname hostname
      127.0.0.1 localhost
      
      ::1 ip6-localhost ip6-loopback
      fe00::0 ip6-localnet
      ff00::0 ip6-mcastprefix
      ff02::1 ip6-allnodes
      ff02::2 ip6-allrouters
      ff02::3 ip6-allhosts
      

      Sur l’un de vos serveurs Ubuntu, ajoutez l’adresse IP de chaque serveur, suivi des noms que vous souhaitez utiliser pour les référencer dans des commandes sous la définition de l’hôte locale.

      Dans l’exemple suivant, chaque serveur a un long nom d’hôte qui s’aligne sur glusterN.example.com et un nom court qui s’aligne sur glusterN. Vous pouvez changer les portions de glusterN.example.com et de glusterN de chaque ligne en n’importe quel nom — ou des noms séparés par des espaces uniques — que vous souhaitez utiliser pour accéder à chaque serveur. Notez, cependant, que ce tutoriel utilisera ces exemples tout au long :

      Remarque : Si vos serveurs font partie d’un pool d’infrastructure VPC, vous devez utiliser l’adresse IP privée de chaque serveur dans le fichier /etc/hosts plutôt que leurs IP publiques.

      /etc/hosts

      . . .
      127.0.0.1       localhost
      first_ip_address gluster0.example.com gluster0
      second_ip_address gluster1.example.com gluster1
      third_ip_address gluster2.example.com gluster2
      
      . . .
      

      Lorsque vous avez terminé d’ajouter ces nouvelles lignes au fichier /etc/hosts d'une machine, copiez-les et ajoutez-les aux fichiers /etc/hosts de vos autres machines. Chaque fichier /etc/hosts devrait contenir les mêmes lignes, reliant les adresses IP de vos serveurs aux noms que vous avez sélectionnés.

      Enregistrez et fermez chaque fichier lorsque vous avez terminé. Si vous avez utilisé nano, faites-le en appuyant sur CTRL+X, Y, puis ENTER.

      Maintenant que vous avez configuré la résolution de nom d’hôte entre chacun de vos serveurs, il sera plus facile d’exécuter des commandes plus tard lorsque vous configurez un pool de stockage et un volume. Ensuite, vous passerez par une autre étape qui doit être réalisée sur chacun de vos serveurs. À savoir, ajouter l’archive personnelle officielle des paquets du projet Gluster (PPA) à chacun de vos trois serveurs Ubuntu pour vous assurer que vous pouvez installer la dernière version de GlusterFS.

      Étape 2 – Configuration des sources logicielles sur chaque machine

      Bien que les référentiels Ubuntu 20.04 APT par défaut contiennent des paquets GlusterFS, au moment où nous écrivons ces lignes, ce ne sont pas les versions les plus récentes. Une façon d’installer la dernière version stable de GlusterFS (version 7.6 au moment où nous écrivons ces lignes) consiste à ajouter le PPA officiel du projet Gluster à chacun de vos trois serveurs Ubuntu.

      Ajoutez le PPA pour les paquets GlusterFS en exécutant la commande suivante sur chaque serveur :

      • sudo add-apt-repository ppa:gluster/glusterfs-7

      Appuyez sur ENTER lorsque vous êtes invité à confirmer que vous souhaitez réellement ajouter le PPA.

      Après avoir ajouté le PPA, actualisez l’index local des paquets de chaque serveur. Cela permettra à chaque serveur de prendre connaissance des nouveaux paquets disponibles :

      Après avoir ajouté le PPA officiel du projet Gluster sur chaque serveur et mis à jour l’index local des paquets, vous êtes prêt à installer les paquets GlusterFS nécessaires. Cependant, comme deux de vos trois machines agira comme serveurs Gluster et l’autre comme client, il existe deux procédures distinctes d’installation et de configuration. Tout d’abord, vous installerez et configurez les composants du serveur.

      Étape 3 – Installation des composants du serveur et création d’un pool de stockage de confiance

      Un pool de stockage est toute quantité de capacité de stockage agrégée à partir de plusieurs ressources de stockage. Au cours de cette étape, vous configurez deux de vos serveurs — gluster0 et gluster1 — comme les composants du cluster.

      Sur gluster0 et gluster1, installez le paquet de serveur GlusterFS en saisissant :

      • sudo apt install glusterfs-server

      Lorsque vous y êtes invité, appuyez sur Y et ensuite ENTER pour confirmer l’installation.

      Le processus d’installation configure automatiquement GlusterFS pour qu’il fonctionne comme un service systemd. Cependant, il ne démarre pas automatiquement le service ou ne lui permet pas de s’exécuter au démarrage.

      Pour démarrer glusterd, le service GlusterFS, exécutez la commande systemctl start suivante sur gluster0 et gluster1 :

      • sudo systemctl start glusterd.service

      Ensuite, lancez la commande suivante sur les deux serveurs. Cela permettra au service de démarrer chaque fois que le serveur démarre :

      • sudo systemctl enable glusterd.service

      Ensuite, vous pouvez vérifier l’état du service sur l’un ou les deux serveurs :

      • sudo systemctl status glusterd.service

      Si le service est opérationnel, vous recevrez un résultat comme celui-ci :

      Output

      ● glusterd.service - GlusterFS, a clustered file-system server Loaded: loaded (/lib/systemd/system/glusterd.service; enabled; vendor preset: enabled) Active: active (running) since Tue 2020-06-02 21:32:21 UTC; 32s ago Docs: man:glusterd(8) Main PID: 14742 (glusterd) Tasks: 9 (limit: 2362) CGroup: /system.slice/glusterd.service └─14742 /usr/sbin/glusterd -p /var/run/glusterd.pid --log-level INFO

      En supposant que vous ayez suivi le guide initial des prérequis de configuration du serveur, vous aurez mis en place un pare-feu avec UFW sur chacune de vos machines. À cause de cela, vous devrez ouvrir le pare-feu sur chaque nœud avant de pouvoir établir des communications entre eux et créer un pool de stockage.

      Le démon Gluster utilise le port 24007, vous devrez donc autoriser chaque nœud à accéder à ce port à travers le pare-feu de chaque autres nœuds de votre pool de stockage. Pour ce faire, lancez la commande suivante sur gluster0. N’oubliez pas de remplacer gluster1_ip_address par l’adresse IP de gluster1 :

      • sudo ufw allow from gluster1_ip_address to any port 24007

      Et lancez la commande suivante sur gluster1. Encore une fois, veillez à remplacer gluster0_ip_address par l’adresse IP de gluster0 :

      • sudo ufw allow from gluster0_ip_address to any port 24007

      Vous devrez également autoriser votre machine client (gluster2) à accéder à ce port. Sinon, vous rencontrerez des problèmes plus tard lorsque vous essayerez de monter le volume. Exécutez la commande suivante sur gluster0 et gluster1 pour ouvrir ce port à votre machine cliente :

      • sudo ufw allow from gluster2_ip_address to any port 24007

      Ensuite, pour s’assurer qu’aucune autre machine ne soit puisse accéder au port de Gluster sur l’un ou l’autre des serveurs, ajoutez la règle deny absolue suivante à la fois à gluster0 et gluster1 :

      Vous êtes maintenant prêt à établir la communication entre gluster0 et gluster1. Pour ce faire, vous devrez exécuter la commande gluster peer probe sur l’un de vos nœuds. Peu importe le nœud que vous utilisez, mais l’exemple suivant montre la commande en cours sur gluster0 :

      • sudo gluster peer probe gluster1

      En gros, cette commande indique à gluster0 de faire confiance à gluster1 et de l’enregistrer comme faisant partie de son pool de stockage. Si le sondage est réussi, il renverra la sortie suivante :

      Output

      peer probe: success

      Vous pouvez vérifier que les nœuds communiquent à tout moment en exécutant la commande gluster peer status sur l’un ou l’autre . Dans cet exemple, il est exécuté sur gluster1 :

      Si vous lancez cette commande à partir de gluster1, il affichera la sortie suivante :

      Output

      Number of Peers: 1 Hostname: gluster0.example.com Uuid: a3fae496-c4eb-4b20-9ed2-7840230407be State: Peer in Cluster (Connected)

      À ce stade, vos deux serveurs communiquent et sont prêts à créer des volumes de stockage entre eux.

      Étape 4 – Créer un volume de stockage

      Rappelons que l’objectif principal de ce tutoriel est de créer un pool de stockage redondant. À cette fin, vous allez mettre en place un volume avec une fonctionnalité de réplication, vous permettant de conserver plusieurs copies de vos données et d’éviter à votre cluster d’avoir un seul point de défaillance.

      Pour créer un volume, vous utiliserez la commande gluster volume create avec cette syntaxe générale :

      sudo gluster volume create volume_name replica number_of_servers domain1.com:/path/to/data/directory domain2.com:/path/to/data/directory force
      

      Voici ce que ce signifient les arguments et les options cette commande gluster volume create signifient :

      • volume_name : C’est le nom que vous utiliserez pour faire référence au volume après sa création. L’exemple de commande suivant crée un volume nommé volume1.
      • réplica number_of_servers: : À la suite du nom du volume, vous pouvez définir le type de volume que vous souhaitez créer. Rappelons que l’objectif de ce tutoriel est de créer un pool de stockage redondant, nous utiliserons donc le type de volume replica. Cela exige un argument indiquant sur combien de serveurs les données du volume seront répliquées (2 dans le cas de ce tutoriel).
      • domain1.com:/… et domain2.com:/… : Ces éléments définissent les machines et l’emplacement du répertoire des briques — le terme de GlusterFS pour son unité de stockage de base, qui comprend tous les répertoires sur toutes les machines qui servent comme partie ou copie d’un volume plus important — qui constitueront le volume1. L’exemple suivant créera un répertoire nommé gluster-storage dans le répertoire racine des deux serveurs.
      • force : Cette option remplacera les avertissements ou les options qui autrement pourraient apparaître et arrêter la création du volume.

      En suivant les conventions établies précédemment dans ce tutoriel, vous pouvez exécuter cette commande pour créer un volume. Notez que vous pouvez l’exécuter à partir de gluster0 ou de gluster1 :

      • sudo gluster volume create volume1 replica 2 gluster0.example.com:/gluster-storage gluster1.example.com:/gluster-storage force

      Si le volume a été créé avec succès, vous recevrez la sortie suivante :

      Output

      volume create: volume1: success: please start the volume to access data

      À ce stade, votre volume a été créé, mais il n’est pas encore actif. Vous pouvez démarrer le volume et le rendre disponible pour l’utilisation en exécutant la commande suivante, toujours à partir de l’un de vos serveurs Gluster :

      • sudo gluster volume start volume1

      Vous recevrez cette sortie si le volume a été démarré correctement :

      Output

      volume start: volume1: success

      Ensuite, vérifiez que le volume est en ligne. Exécutez la commande suivante à partir de l’un de vos nœuds :

      • sudo gluster volume status

      Cela renverra la sortie semblable à celle-ci :

      Output

      Status of volume: volume1 Gluster process TCP Port RDMA Port Online Pid ------------------------------------------------------------------------------ Brick gluster0.example.com:/gluster-storage 49152 0 Y 18801 Brick gluster1.example.com:/gluster-storage 49152 0 Y 19028 Self-heal Daemon on localhost N/A N/A Y 19049 Self-heal Daemon on gluster0.example.com N/A N/A Y 18822 Task Status of Volume volume1 ------------------------------------------------------------------------------ There are no active volume tasks

      Sur la base de cette sortie, les briques sur les deux serveurs sont en ligne.

      En guise de dernière étape pour configurer votre volume, vous devrez ouvrir le pare-feu sur les deux serveurs pour que votre machine cliente puisse se connecter et monter le volume. Selon l’exemple de sortie de la commande précédente, volume1 tourne sur le port 49152 sur les deux machines. C’est le port par défaut de GlusterFS pour son volume initial, et le prochain volume que vous crérez utilisera le port 49153, puis 49154, etc.

      Exécutez la commande suivante sur gluster0 et gluster1 pour autoriser gluster2 à accéder à ce port à travers le pare-feu respectif de chacun :

      • sudo ufw allow from gluster2_ip_address to any port 49152

      Ensuite, pour une couche de sécurité supplémentaire, ajoutez une autre règle deny absolue pour le port du volume sur gluster0 et gluster1. Cela garantira qu’aucune machine autre que votre machine cliente ne puisse accéder au volume sur l’un ou l’autre des serveurs :

      Maintenant que votre volume est opérationnel, vous pouvez configurer votre machine cliente et commencer à l’utiliser à distance.

      Étape 5 — Installation et configuration des composants du client

      Votre volume est maintenant configuré et disponible pour être utilisé par votre machine cliente. Mais, avant de commencer, vous devez installer le paquet glusterfs-client à partir du PPA que vous avez mis en place à l’étape 1 sur votre machine cliente. Les dépendances de ce paquet comprennent certaines des bibliothèques et modules de traduction communs de GlusterFS, ainsi que les outils FUSE nécessaires à son fonctionnement.

      Exécutez la commande suivante sur gluster2 :

      • sudo apt install glusterfs-client

      Vous allez bientôt monter votre volume de stockage à distance sur votre ordinateur client. Cependant, avant de pouvoir le faire, vous devez créer un point de montage. Traditionnellement, cela se fait dans le répertoire /mnt, mais vous pouvez l’utiliser n’importe où.

      Pour plus de simplicité, créez un répertoire nommé /storage-pool sur votre machine cliente pour servir de point de montage. Ce nom de répertoire commence par une barre (/) oblique qui le place dans le répertoire racine, vous devrez donc le créer avec des privilèges sudo :

      Vous pouvez maintenant monter le volume distant. Cependant, consultez d’abord la syntaxe de la commande mount que vous utiliserez pour le faire :

      sudo mount -t glusterfs domain1.com:volume_name /path/to/mount/point
      

      mount est un utilitaire que l’on trouve dans plusieurs systèmes d’exploitation de type Unix. Il est utilisé pour monter des systèmes de fichiers — n’importe quoi depuis des périphériques de stockage externes, comme les cartes SD ou les clés USB, à du stockage connecté comme dans le cas de ce tutoriel — sur des répertoires du système de fichiers existant de la machine. La syntaxe de la commande mount que vous utiliserez comprend l’option -t, qui nécessite trois arguments : le type de système de fichiers à monter, le périphérique où le système de fichiers à monter peut être trouvé, et le répertoire sur le client où vous allez monter le volume.

      Notez que dans cet exemple, l’argument périphérique pointe vers un nom d’hôte suivi de deux points et ensuite le nom du volume. GlusterFS extrait les répertoires de stockage réels sur chaque hôte, ce qui signifie que cette commande ne cherche pas à monter le répertoire /gluster-storage, mais plutôt le volume volume1.

      Notez également que vous n’avez à spécifier qu’un seul membre du cluster de stockage. Cela peut être n’importe quel nœud, puisque le service GlusterFS les traite comme une seule machine.

      Exécutez la commande suivante sur votre machine cliente (gluster2) pour monter le volume sur le répertoire /storage-pool que vous avez créé :

      • sudo mount -t glusterfs gluster0.example.com:/volume1 /storage-pool

      Ensuite, exécutez la commande df. Cela affichera la quantité d’espace disque disponible pour les systèmes de fichiers auxquels l’utilisateur qui l’invoque a accès :

      Cette commande montrera que le volume GlusterFS est monté au bon endroit :

      Output

      Filesystem 1K-blocks Used Available Use% Mounted on . . . gluster0.example.com:/volume1 50633164 1938032 48695132 4% /storage-pool

      Vous pouvez maintenant passer au test pour vérifier que toutes les données que vous écrivez sur le volume de votre client sont répliquées sur les nœuds de votre serveur, comme prévu.

      Étape 6 — Tester les fonctionnalités de redondance

      Maintenant que vous avez mis en place votre client pour utiliser votre pool de stockage et votre volume, vous pouvez tester sa fonctionnalité.

      Sur votre machine cliente (gluster2), naviguez jusqu’au point de montage que vous avez défini à l’étape précédente :

      Ensuite, créez quelques fichiers de test. La commande suivante crée dix fichiers vides séparés dans votre pool de stockage :

      • sudo touch file_{0..9}.test

      Si vous examinez les répertoires de stockage que vous avez définis précédemment sur chaque hôte de stockage, vous découvrirez que tous ces fichiers sont présents sur chaque système.

      Sur gluster0 :

      Output

      file_0.test file_2.test file_4.test file_6.test file_8.test file_1.test file_3.test file_5.test file_7.test file_9.test

      De même, sur gluster1 :

      Output

      file_0.test file_2.test file_4.test file_6.test file_8.test file_1.test file_3.test file_5.test file_7.test file_9.test

      Comme ces sorties le montrent, les fichiers test que vous avez ajoutés au client ont également été écrits sur vos deux nœuds.

      S’il arrive jamais un moment où l’un des nœuds de votre cluster de stockage est hors service, il pourrait se désynchroniser avec le pool de stockage si des modifications sont apportées au système de fichiers. En effectuant une opération en lecture sur le point de montage du client après la remise en ligne du nœud, ce dernier sera avisé de récupérer les fichiers manquants :

      Maintenant que vous avez vérifié que votre volume de stockage est correctement monté et qu’il peut reproduire des données sur les deux machines du cluster, vous pouvez verrouiller l’accès au pool de stockage.

      Étape 7 — Restriction des fonctionnalités de redondance

      À ce stade, n’importe quel ordinateur peut se connecter à votre volume de stockage sans aucune restriction. Vous pouvez changer cela en réglant l’option auth.allow, qui définit les adresses IP de tous les clients qui devraient avoir accès au volume.

      Si vous utilisez la configuration /etc/hosts, les noms que vous avez définis pour chaque serveur ne seront pas acheminés correctement. Vous devez utiliser une adresse IP statique à la place. En revanche, si vous utilisez des enregistrements DNS, le nom de domaine que vous avez configuré fonctionnera ici.

      Sur l’un ou l’autre de vos nœuds de stockage (gluster0 ou gluster1), exécutez la commande suivante :

      • sudo gluster volume set volume1 auth.allow gluster2_ip_address

      Si la commande se termine avec succès, elle renverra cette sortie :

      Output

      volume set: success

      Si vous avez besoin de supprimer la restriction à n’importe quel moment, vous pouvez saisir :

      • sudo gluster volume set volume1 auth.allow *

      Cela permettra de se connecter à nouveau depuis n’importe quelle machine. C’est n’est pas sûr, mais peut être utile pour les problèmes de débogage.

      Si vous avez plusieurs clients, vous pouvez spécifier leurs adresses IP ou leurs noms de domaine en même temps (selon que vous utilisez /etc/hosts ou la résolution de noms d’hôtes DNS), séparés par des virgules :

      • sudo gluster volume set volume1 auth.allow gluster_client1_ip,gluster_client2_ip

      Votre pool de stockage est maintenant configuré, sécurisé, et prêt à être utilisé. Ensuite, vous allez apprendre quelques commandes qui vous aideront à obtenir des informations sur l’état de votre pool de stockage.

      Étape 8 — Obtenir des informations sur votre pool de stockage avec des commandes GlusterFS

      Lorsque vous commencez à changer certains des paramètres de votre stockage GlusterFS, vous pouvez être perdus concernant quelles options sont disponibles, quels volumes sont actifs, et quels nœuds sont associés à chaque volume.

      Plusieurs commandes différentes sont disponibles sur vos nœuds pour récupérer ces données et interagir avec votre pool de stockage.

      Si vous souhaitez des informations sur chacun de vos volumes, exécutez la commande gluster volume info :

      Output

      Volume Name: volume1 Type: Replicate Volume ID: a1e03075-a223-43ab-a0f6-612585940b0c Status: Started Snapshot Count: 0 Number of Bricks: 1 x 2 = 2 Transport-type: tcp Bricks: Brick1: gluster0.example.com:/gluster-storage Brick2: gluster1.example.com:/gluster-storage Options Reconfigured: auth.allow: gluster2_ip_address transport.address-family: inet storage.fips-mode-rchecksum: on nfs.disable: on performance.client-io-threads: off

      De même, pour obtenir des informations sur tous les pairs auxquels ce nœud est connecté, vous pouvez saisir :

      Number of Peers: 1
      
      Hostname: gluster0.example.com
      Uuid: cb00a2fc-2384-41ac-b2a8-e7a1793bb5a9
      State: Peer in Cluster (Connected)
      

      Si vous souhaitez des informations détaillées sur la performance de chaque nœud, vous pouvez établir le profile d’un volume en saisissant :

      • sudo gluster volume profile volume_name start

      Lorsque cette commande est terminée, vous pouvez obtenir les informations recueillies en saisissant :

      • sudo gluster volume profile volume_name info

      Output

      Brick: gluster0.example.com:/gluster-storage -------------------------------------------- Cumulative Stats: %-latency Avg-latency Min-Latency Max-Latency No. of calls Fop --------- ----------- ----------- ----------- ------------ ---- 0.00 0.00 us 0.00 us 0.00 us 30 FORGET 0.00 0.00 us 0.00 us 0.00 us 36 RELEASE 0.00 0.00 us 0.00 us 0.00 us 38 RELEASEDIR Duration: 5445 seconds Data Read: 0 bytes Data Written: 0 bytes Interval 0 Stats: %-latency Avg-latency Min-Latency Max-Latency No. of calls Fop --------- ----------- ----------- ----------- ------------ ---- 0.00 0.00 us 0.00 us 0.00 us 30 FORGET 0.00 0.00 us 0.00 us 0.00 us 36 RELEASE 0.00 0.00 us 0.00 us 0.00 us 38 RELEASEDIR Duration: 5445 seconds Data Read: 0 bytes Data Written: 0 bytes . . .

      Comme indiqué précédemment, pour obtenir la liste de tous les composants associés à GlusterFS fonctionnant sur chacun de vos nœuds, exécutez la commande gluster volume status :

      • sudo gluster volume status

      Output

      Status of volume: volume1 Gluster process TCP Port RDMA Port Online Pid ------------------------------------------------------------------------------ Brick gluster0.example.com:/gluster-storage 49152 0 Y 19003 Brick gluster1.example.com:/gluster-storage 49152 0 Y 19040 Self-heal Daemon on localhost N/A N/A Y 19061 Self-heal Daemon on gluster0.example.com N/A N/A Y 19836 Task Status of Volume volume1 ------------------------------------------------------------------------------ There are no active volume tasks

      Si vous comptez administrer vos volumes de stockage GlusterFS, il peut être judicieux de vous rendre dans la console GlusterFS. Cela vous permettra d’interagir avec votre environnement GlusterFS sans avoir besoin de saisir sudo gluster avant toute saisie :

      Cela vous donnera une invite où vous pouvez saisir vos commandes. help en est une bonne pour vous orienter :

      Output

      peer help - display help for peer commands volume help - display help for volume commands volume bitrot help - display help for volume bitrot commands volume quota help - display help for volume quota commands snapshot help - display help for snapshot commands global help - list global commands

      Lorsque vous avez terminé, exécutez exit pour quitter la console Gluster :

      Avec cela, vous êtes prêt à commencer à intégrer GlusterFS à votre prochaine application.

      Conclusion

      En suivant ce tutoriel, vous disposez d’un système de stockage redondant qui vous permettra d’écrire simultanément sur deux serveurs distincts. Cela peut être utile pour un certain nombre d’applications et peut garantir la disponibilité de vos données même en cas de panne d’un serveur.



      Source link

      Comment créer un serveur Minecraft sur Ubuntu 18.04


      L’auteur a choisi le Tech Education Fund pour recevoir un don dans le cadre du programme Write for DOnations.

      Introduction

      Minecraft est un jeu vidéo populaire de sandbox. Sorti à l’origine en 2009, il permet aux joueurs de construire, d’explorer, de fabriquer et de survivre dans un monde généré en 3D. Fin 2019, il était le deuxième jeu vidéo le plus vendu de tous les temps. Dans ce tutoriel, vous allez créer votre propre serveur Minecraft afin que vous et vos amis puissiez y jouer ensemble. Plus précisément, vous allez installer les logiciels nécessaires pour exécuter Minecraft, configurer le serveur pour qu’il fonctionne, puis déployer le jeu.

      Vous pouvez également explorer le Minecraft One-Click de DigitalOcean : Java Edition Server comme autre chemin d’installation.

      Ce tutoriel utilise la version Java de Minecraft. Si vous avez acheté votre version de Minecraft à travers l’App Store de Microsoft, vous serez incapable de vous connecter à ce serveur. La plupart des versions de Minecraft achetées sur des consoles de jeu telles que la PlayStation 4, Xbox One, ou Nintendo Switch sont également la version Microsoft de Minecraft. Ces consoles sont également incapables de se connecter au serveur intégré dans ce tutoriel. Vous pouvez obtenir la version Java de Minecraft ici.

      Conditions préalables

      Pour suivre ce guide, vous aurez besoin :

      • Un serveur avec une nouvelle installation d’Ubuntu 18.04, un utilisateur non-root avec des privilèges sudo, et SSH activé.   Vous pouvez suivre ce guide pour initialiser votre serveur et effectuer ces étapes. Minecraft peut être gourmand en ressources, donc gardez cela à l’esprit lorsque vous choisissez la taille de votre serveur. Si vous utilisez DigitalOcean et que vous avez besoin de plus de ressources, vous pouvez toujours redimensionner votre Droplet pour ajouter plus de CPU et de RAM.

      • Une copie de Minecraft Java Edition installée sur une machine locale Mac, Windows, ou Linux.

      Étape 1 — Installation des logiciels nécessaires et configuration du pare-feu

      Une fois votre serveur initialisé, la première étape consiste à installerJava ; vous en aurez besoin pour faire fonctionner Minecraft.

      Mettez à jour l’index des paquets pour le gestionnaire de paquets APT :

      Ensuite, installez la version 8 de Java d’OpenJDK, en particulier le JRE sans tête.   Il s’agit d’une version minimale de Java qui supprime la prise en charge des applications GUI. Cela le rend idéal pour exécuter des applications Java sur un serveur :

      • sudo apt install openjdk-8-jre-headless

      Vous devez également utiliser un logiciel appelé screen pour créer des sessions de serveur détachables. screen vous permet de créer une session de terminal et de vous en détacher, en laissant le processus lancé sur celui-ci en cours. C’est important car si vous démarriez votre serveur puis fermiez votre terminal, cela tuerait la session et arrêterait votre serveur. Installez screen maintenant : 

      Maintenant que les packages sont installés, nous devons activer le pare-feu pour permettre au trafic d’entrer sur notre serveur Minecraft. Lors de votre configuration initiale du serveur, vous avez uniquement autorisé le trafic provenant de SSH. Maintenant, vous devez autoriser le trafic à entrer via le port 25565 qui correspond au port par défaut utilisé par Minecraft pour autoriser les connexions. Ajoutez la règle de pare-feu nécessaire, en exécutant la commande suivante :

      Maintenant que Java est installé et que votre pare-feu est correctement configuré, vous pouvez télécharger le serveur Minecraft sur le site Web de Minecraft.

      Etape 2 – Télécharger la dernière version de Minecraft

      Maintenant, vous devez télécharger la version actuelle du serveur Minecraft. Vous pouvez le faire en naviguant sur le site Web de Minecraft et en copiant le lien qui dit Download minecraft_server. X.X.X.jar, où les X sont la dernière version du serveur.

      Vous pouvez maintenant utiliser wget et le lien copié pour télécharger le serveur :

      • wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

      Si vous avez l’intention de mettre à jour votre serveur Minecraft, ou si vous voulez exécuter différentes versions de Minecraft, renommez le server.jar téléchargé en minecraft_server_1.15.2.jar, en faisant correspondre les numéros de version surlignés à la version que vous venez de télécharger :

      • mv server.jar minecraft_server_1.15.2.jar

      Si vous souhaitez télécharger une ancienne version de Minecraft, vous pouvez les trouver archivées sur mcversions.net. Mais ce tutoriel se concentrera sur la dernière version en date. Maintenant que vous avez votre téléchargement, nous allons commencer à configurer votre serveur Minecraft.

      Etape 3 – Configurer et faire fonctionner le serveur Minecraft

      Maintenant que vous avez le jar de Minecraft téléchargé, vous êtes prêt à l’utiliser.

      Tout d’abord, lancez une session screen en exécutant la commande screen :

      Une fois que vous avez lu la bannière qui est apparue, appuyez sur la barre d'espace. screen vous présentera une session de terminal comme d’habitude. Cette session est maintenant détachable, ce qui signifie que vous pourrez démarrer une commande ici et la laisser fonctionner.

      Vous pouvez maintenant effectuer votre configuration initiale. Ne vous inquiétez pas si la prochaine commande déclenche une erreur. Minecraft a conçu son installation de cette façon afin que les utilisateurs consentent d’abord à l’accord de licence de la société. C’est ce que vous ferez ensuite :

      • java -Xms1024M -Xmx1024M -jar minecraft_server_1.15.2.jar nogui

      Avant d’examiner la sortie de cette commande, regardons de plus près tous ces arguments de la ligne de commande qui permettent de régler votre serveur :

      • Xms1024M – Cette option configure le serveur pour qu’il commence à fonctionner avec 1024 Mo ou 1 Go de RAM. Vous pouvez augmenter cette limite si vous voulez que votre serveur commence avec plus de mémoire vive. Les options M pour les mégaoctets et G pour les gigaoctets sont toutes deux prises en charge. Par exemple : Xms2G démarrera le serveur avec 2 gigaoctets de RAM.

      • Xmx1024M – Ceci configure le serveur pour utiliser, au maximum, 1024M de RAM. Vous pouvez augmenter cette limite si vous souhaitez que votre serveur fonctionne à une taille plus importante, si vous souhaitez autoriser plus de joueurs, ou si vous avez l’impression que votre serveur fonctionne lentement.

      • jar – Ce drapeau indique quel fichier jar du serveur doit être exécuté.

      • nogui – Cela indique au serveur de ne pas lancer d’interface graphique puisqu’il s’agit d’un serveur et que vous n’avez pas d’interface utilisateur graphique.

      La première fois que vous exécutez cette commande, qui démarre normalement votre serveur, elle génère plutôt l’erreur suivante :

      Output

      [22:05:31] [22:05:31] [main/ERROR]: Failed to load properties from file: server.properties [22:05:31] [main/WARN]: Failed to load eula.txt [22:05:31] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

      Ces erreurs ont été générées parce que le serveur n’a pas pu trouver deux fichiers nécessaires à l’exécution : le CLUF (Contrat de Licence Utilisateur Final), qui se trouve dans eula.txt, et le fichier de configuration server.properties.   Heureusement, comme le serveur n’a pas pu trouver ces fichiers, il les a créés dans votre répertoire en fonctionnement actuel.

      Tout d’abord, ouvrez eula.txt en nano ou votre éditeur de texte préféré :

      A l’intérieur de ce fichier, vous verrez un lien vers le CLUF Minecraft. Copiez l’URL :

      ~/eula.txt

      #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
      #Tue Mar 24 22:05:31 UTC 2020
      eula=false
      

      Ouvrez l’URL dans votre navigateur web et lisez l’accord. Retournez ensuite à votre éditeur de texte et trouvez la dernière ligne dans eula.txt. Ici, changez eula=false en eula=true. Maintenant, enregistrez et fermez le fichier.

      Maintenant que vous avez accepté le CLUF, il est temps de configurer le serveur selon vos spécifications.

      Dans votre répertoire de travail actuel, vous trouverez également le nouveau fichier server.properties.   Ce fichier contient toutes les options de configuration pour votre serveur Minecraft. Vous pouvez trouver une liste détaillée de toutes les propriétés du serveur sur le Wiki officiel de Minecraft. Vous modifierez ce fichier avec vos paramètres préférés avant de démarrer votre serveur. Ce tutoriel portera sur les propriétés fondamentales :

      Votre dossier apparaîtra comme ceci :

      ~/server.properties

      #Minecraft server properties
      #Thu Apr 30 23:42:29 UTC 2020
      spawn-protection=16
      max-tick-time=60000
      query.port=25565
      generator-settings=
      force-gamemode=false
      allow-nether=true
      enforce-whitelist=false
      gamemode=survival
      broadcast-console-to-ops=true
      enable-query=false
      player-idle-timeout=0
      difficulty=easy
      spawn-monsters=true
      broadcast-rcon-to-ops=true
      op-permission-level=4
      pvp=true
      snooper-enabled=true
      level-type=default
      hardcore=false
      enable-command-block=false
      max-players=20
      network-compression-threshold=256
      resource-pack-sha1=
      max-world-size=29999984
      function-permission-level=2
      rcon.port=25575
      server-port=25565
      server-ip=
      spawn-npcs=true
      allow-flight=false
      level-name=world
      view-distance=10
      resource-pack=
      spawn-animals=true
      white-list=false
      rcon.password=
      generate-structures=true
      online-mode=true
      max-build-height=256
      level-seed=
      prevent-proxy-connections=false
      use-native-transport=true
      motd=A Minecraft Server
      enable-rcon=false
      

      Examinons de plus près certaines des propriétés les plus importantes de cette liste :

      • difficulty (default easy) – Ceci définit la difficulté du jeu, comme combien de dégâts sont infligés et la façon selon laquelle les éléments affectent votre joueur. Les options sont peaceful, easy, normal et hard. 

      • gamemode (default survival) – Ceci définit le mode de jeu.   Les options sont survival, creative, adventure, et spectator.

      • level-name ( default world) – Ceci définit le nom de votre serveur qui apparaîtra dans le client. Les caractères tels que l’apostrophe peuvent avoir besoin d’une barre oblique inversée pour s’échapper.

      • motd ( default A Minecraft Server) – Le message qui est affiché dans la liste des serveurs du client Minecraft.

      • pvp ( default true) – Permet le combat entre joueurs.   S’il est mis sur true, les joueurs pourront engager le combat et se nuire mutuellement.

      Une fois que vous avez défini les options que vous souhaitez, enregistrez et fermez le fichier.

      Maintenant que vous avez changé le CLUF en true et configuré vos paramètres, vous pouvez démarrer votre serveur avec succès.

      Comme la dernière fois, démarrez votre serveur avec 1024M de RAM. Seulement maintenant, accordons également à Minecraft la possibilité d’utiliser jusqu’à 4G de RAM si elle en a besoin. Rappelez-vous, vous êtes invités à ajuster ce nombre pour s’adapter aux limites de votre serveur ou aux besoins des utilisateurs :

      • java -Xms1024M -Xmx4G -jar minecraft_server_1.15.2.jar nogui

      Donnez quelques instants à l’initialisation. Bientôt, votre nouveau serveur Minecraft va commencer à produire une sortie similaire à celle-ci :

      Output

      [21:08:14] [Server thread/INFO]: Starting minecraft server version 1.15.2 [21:08:14] [Server thread/INFO]: Loading properties [21:08:14] [Server thread/INFO]: Default game type: SURVIVAL [21:08:14] [Server thread/INFO]: Generating keypair [21:08:15] [Server thread/INFO]: Starting minecraft server on *:25565

      Une fois que le serveur est opérationnel, vous verrez le résultat suivant :

      Output

      [21:15:37] [Server thread/INFO]: Done (30.762s)! For help, type "help"

      Votre serveur fonctionne maintenant, et vous avez été déposé dans le panneau de contrôle de l’administrateur du serveur. Maintenant, tapez help :

      Une sortie comme celle-ci apparaîtra :

      Output

      [21:15:37] [Server thread/INFO]: /advancement (grant|revoke) [21:15:37] [Server thread/INFO]: /ban <targets> [<reason>] [21:15:37] [Server thread/INFO]: /ban-ip <target> [<reason>] [21:15:37] [Server thread/INFO]: /banlist [ips|players] ...

      A partir de ce terminal, vous pouvez exécuter les commandes de l’administrateur et contrôler votre serveur Minecraft. Maintenant, utilisons screen pour que votre nouveau serveur continue de fonctionner, même après que vous vous soyez déconnecté. Ensuite, vous pouvez vous connecter à votre client Minecraft et commencer un nouveau jeu. 

      Étape 4 – Maintenir le serveur en fonctionnement

      Maintenant que votre serveur est opérationnel, vous voulez qu’il le reste même après vous être déconnecté de votre session SSH. Comme vous avez utilisé screen plus tôt, vous pouvez vous détacher de cette session en appuyant sur Ctrl + A + D. Vous êtes maintenant de retour dans votre shell d’origine.

      Exécutez cette commande pour voir toutes vos sessions screen :

      Vous obtiendrez une sortie avec l’ID de votre session, dont vous aurez besoin pour reprendre cette session :

      Output

      There is a screen on: 26653.pts-0.minecraft (03/25/20 21:18:31) (Detached) 1 Socket in /run/screen/S-root.

      Pour reprendre votre session, passez le drapeau -r à la commande screen et entrez ensuite votre identifiant de session :

      Lorsque vous êtes prêt à vous déconnecter de votre serveur, veillez à vous détacher de la session avec Ctrl + A + D, puis déconnectez-vous.

      Etape 5 – Se connecter à votre serveur depuis le client Minecraft

      Maintenant que votre serveur est opérationnel, nous allons nous y connecter via le client Minecraft. Vous pouvez alors jouer !

      Lancez votre copie de Minecraft Java Edition et sélectionnez Multiplayer dans le menu.

      Sélectionnez Multiplayer dans le menu

      Ensuite, vous devrez ajouter un serveur pour vous connecter, donc cliquez sur le bouton Add Server.

      Cliquez sur le bouton Add Server

      Dans l’écran Edit Server Info qui s’affiche, donnez un nom à votre serveur et tapez l’adresse IP de votre serveur. Il s’agit de la même adresse IP que celle que vous avez utilisée pour vous connecter via SSH.

      Nommez votre serveur et tapez l'adresse IP

      Une fois que vous aurez saisi le nom de votre serveur et son adresse IP, vous serez ramené à l’écran Multiplayer où votre serveur sera désormais répertorié.

      Sélectionnez votre serveur et cliquez sur Join Server 

      Désormais, votre serveur apparaîtra toujours dans cette liste. Sélectionnez-le et cliquez sur Join Server.

      Amusez-vous bien ! 

      Vous êtes dans votre serveur et prêt à jouer !

      Conclusion

      Vous avez maintenant un serveur Minecraft fonctionnant sur Ubuntu 18.04 pour jouer avec tous vos amis ! Amusez-vous à explorer, fabriquer et survivre dans un monde en 3D rudimentaire. Et n’oubliez pas : faites attention aux griefers.



      Source link

      Comment créer un serveur Minecraft sur Ubuntu 20.04


      L’auteur a choisi le Tech Education Fund pour recevoir un don dans le cadre du programme Write for DOnations.

      Introduction

      Minecraft est un jeu vidéo populaire de sandbox. Sorti à l’origine en 2009, il permet aux joueurs de construire, d’explorer, de fabriquer et de survivre dans un monde généré en 3D. Fin 2019, il était le deuxième jeu vidéo le plus vendu de tous les temps. Dans ce tutoriel, vous allez créer votre propre serveur Minecraft afin que vous et vos amis puissiez y jouer ensemble. Plus précisément, vous allez installer les logiciels nécessaires pour exécuter Minecraft, configurer le serveur pour qu’il fonctionne, puis déployer le jeu.

      Vous pouvez également explorer le Minecraft One-Click de DigitalOcean : Java Edition Server comme autre chemin d’installation.

      Ce tutoriel utilise la version Java de Minecraft. Si vous avez acheté votre version de Minecraft à travers l’App Store de Microsoft, vous serez incapable de vous connecter à ce serveur. La plupart des versions de Minecraft achetées sur des consoles de jeu telles que la PlayStation 4, Xbox One, ou Nintendo Switch sont également la version Microsoft de Minecraft. Ces consoles sont également incapables de se connecter au serveur intégré dans ce tutoriel. Vous pouvez obtenir la version Java de Minecraft ici.

      Conditions préalables

      Pour suivre ce guide, vous aurez besoin :

      • Un serveur avec une nouvelle installation d’Ubuntu 20.04, un utilisateur non-root avec des privilèges sudo, et SSH activé. Vous pouvez suivre ce guide pour initialiser votre serveur et effectuer ces étapes. Minecraft peut être gourmand en ressources, donc gardez cela à l’esprit lorsque vous choisissez la taille de votre serveur. Si vous utilisez DigitalOcean et que vous avez besoin de plus de ressources, vous pouvez toujours redimensionner votre Droplet pour ajouter plus de CPU et de RAM.

      • Une copie de Minecraft Java Edition installée sur une machine locale Mac, Windows, ou Linux.

      Étape 1 — Installation des logiciels nécessaires et configuration du pare-feu

      Une fois votre serveur initialisé, la première étape consiste à installerJava ; vous en aurez besoin pour faire fonctionner Minecraft.

      Mettez à jour l’index des paquets pour le gestionnaire de paquets APT :

      Ensuite, installez la version 8 de Java d’OpenJDK, en particulier le JRE sans tête.   Il s’agit d’une version minimale de Java qui supprime la prise en charge des applications GUI. Cela le rend idéal pour exécuter des applications Java sur un serveur :

      • sudo apt install openjdk-8-jre-headless

      Vous devez également utiliser un logiciel appelé screen pour créer des sessions de serveur détachables. screen vous permet de créer une session de terminal et de vous en détacher, en laissant le processus lancé sur celui-ci en cours. C’est important car si vous démarriez votre serveur puis fermiez votre terminal, cela tuerait la session et arrêterait votre serveur. Installez screen maintenant : 

      Maintenant que les packages sont installés, nous devons activer le pare-feu pour permettre au trafic d’entrer sur notre serveur Minecraft. Lors de votre configuration initiale du serveur, vous avez uniquement autorisé le trafic provenant de SSH. Maintenant, vous devez autoriser le trafic à entrer via le port 25565, qui correspond au port par défaut utilisé par Minecraft pour autoriser les connexions. Ajoutez la règle de pare-feu nécessaire, en exécutant la commande suivante :

      Maintenant que Java est installé et que votre pare-feu est correctement configuré, vous pouvez télécharger le serveur Minecraft depuis le site Web de Minecraft.

      Etape 2 – Télécharger la dernière version de Minecraft

      Maintenant, vous devez télécharger la version actuelle du serveur Minecraft. Vous pouvez le faire en naviguant sur le site Web de Minecraft et en copiant le lien qui dit Download minecraft_server. X.X.X.jar, où les X sont la dernière version du serveur.

      Vous pouvez maintenant utiliser wget et le lien copié pour télécharger le serveur :

      • wget https://launcher.mojang.com/v1/objects/bb2b6b1aefcd70dfd1892149ac3a215f6c636b07/server.jar

      Si vous avez l’intention de mettre à jour votre serveur Minecraft, ou si vous voulez exécuter différentes versions de Minecraft, renommez le server.jar téléchargé en minecraft_server_1.15.2.jar, en faisant correspondre les numéros de version surlignés à la version que vous venez de télécharger :

      • mv server.jar minecraft_server_1.15.2.jar

      Si vous souhaitez télécharger une ancienne version de Minecraft, vous pouvez les trouver archivées sur mcversions.net. Mais ce tutoriel se concentrera sur la dernière version en date. Maintenant que vous avez votre téléchargement, nous allons commencer à configurer votre serveur Minecraft.

      Etape 3 – Configurer et faire fonctionner le serveur Minecraft

      Maintenant que vous avez le jar de Minecraft téléchargé, vous êtes prêt à l’utiliser.

      Tout d’abord, lancez une session screen en exécutant la commande screen :

      Une fois que vous avez lu la bannière qui est apparue, appuyez sur la barre d'espace. screen vous présentera une session de terminal comme d’habitude. Cette session est maintenant détachable, ce qui signifie que vous pourrez démarrer une commande ici et la laisser fonctionner.

      Vous pouvez maintenant effectuer votre configuration initiale. Ne vous inquiétez pas si la prochaine commande déclenche une erreur. Minecraft a conçu son installation de cette façon afin que les utilisateurs consentent d’abord à l’accord de licence de la société. C’est ce que vous ferez ensuite :

      • java -Xms1024M -Xmx1024M -jar minecraft_server_1.15.2.jar nogui

      Avant d’examiner la sortie de cette commande, regardons de plus près tous ces arguments de la ligne de commande qui permettent de régler votre serveur :

      • Xms1024M – Cette option configure le serveur pour qu’il commence à fonctionner avec 1024 Mo ou 1 Go de RAM. Vous pouvez augmenter cette limite si vous voulez que votre serveur commence avec plus de mémoire vive. Les options M pour les mégaoctets et G pour les gigaoctets sont toutes deux prises en charge. Par exemple : Xms2G démarrera le serveur avec 2 gigaoctets de RAM.

      • Xmx1024M – Ceci configure le serveur pour utiliser, au maximum, 1024M de RAM. Vous pouvez augmenter cette limite si vous souhaitez que votre serveur fonctionne à une taille plus importante, si vous souhaitez autoriser plus de joueurs, ou si vous avez l’impression que votre serveur fonctionne lentement.

      • jar – Ce drapeau indique quel fichier jar du serveur doit être exécuté.

      • nogui – Cela indique au serveur de ne pas lancer d’interface graphique puisqu’il s’agit d’un serveur et que vous n’avez pas d’interface utilisateur graphique.

      La première fois que vous exécutez cette commande, qui démarre normalement votre serveur, elle génère plutôt l’erreur suivante :

      Output

      [22:05:31] [22:05:31] [main/ERROR]: Failed to load properties from file: server.properties [22:05:31] [main/WARN]: Failed to load eula.txt [22:05:31] [main/INFO]: You need to agree to the EULA in order to run the server. Go to eula.txt for more info.

      Ces erreurs ont été générées parce que le serveur n’a pas pu trouver deux fichiers nécessaires à l’exécution : le CLUF (Contrat de Licence Utilisateur Final), qui se trouve dans eula.txt, et le fichier de configuration server.properties.   Heureusement, comme le serveur n’a pas pu trouver ces fichiers, il les a créés dans votre répertoire en fonctionnement actuel.

      Tout d’abord, ouvrez eula.txt en nano ou votre éditeur de texte préféré :

      A l’intérieur de ce fichier, vous verrez un lien vers le CLUF Minecraft. Copiez l’URL :

      ~/eula.txt

      #By changing the setting below to TRUE you are indicating your agreement to our EULA (https://account.mojang.com/documents/minecraft_eula).
      #Tue Mar 24 22:05:31 UTC 2020
      eula=false
      

      Ouvrez l’URL dans votre navigateur web et lisez l’accord. Retournez ensuite à votre éditeur de texte et trouvez la dernière ligne dans eula.txt. Ici, changez eula=false en eula=true. Maintenant, enregistrez et fermez le fichier.

      Maintenant que vous avez accepté le CLUF, il est temps de configurer le serveur selon vos spécifications.

      Dans votre répertoire de travail actuel, vous trouverez également le nouveau fichier server.properties.   Ce fichier contient toutes les options de configuration pour votre serveur Minecraft. Vous pouvez trouver une liste détaillée de toutes les propriétés du serveur sur le Wiki officiel de Minecraft. Vous modifierez ce fichier avec vos paramètres préférés avant de démarrer votre serveur. Ce tutoriel portera sur les propriétés fondamentales :

      Votre dossier apparaîtra comme ceci :

      ~/server.properties

      #Minecraft server properties
      #Thu Apr 30 23:42:29 UTC 2020
      spawn-protection=16
      max-tick-time=60000
      query.port=25565
      generator-settings=
      force-gamemode=false
      allow-nether=true
      enforce-whitelist=false
      gamemode=survival
      broadcast-console-to-ops=true
      enable-query=false
      player-idle-timeout=0
      difficulty=easy
      spawn-monsters=true
      broadcast-rcon-to-ops=true
      op-permission-level=4
      pvp=true
      snooper-enabled=true
      level-type=default
      hardcore=false
      enable-command-block=false
      max-players=20
      network-compression-threshold=256
      resource-pack-sha1=
      max-world-size=29999984
      function-permission-level=2
      rcon.port=25575
      server-port=25565
      server-ip=
      spawn-npcs=true
      allow-flight=false
      level-name=world
      view-distance=10
      resource-pack=
      spawn-animals=true
      white-list=false
      rcon.password=
      generate-structures=true
      online-mode=true
      max-build-height=256
      level-seed=
      prevent-proxy-connections=false
      use-native-transport=true
      motd=A Minecraft Server
      enable-rcon=false
      

      Examinons de plus près certaines des propriétés les plus importantes de cette liste :

      • difficulty (default easy) – Ceci définit la difficulté du jeu, comme combien de dégâts sont infligés et la façon selon laquelle les éléments affectent votre joueur. Les options sont peaceful, easy, normal et hard. 

      • gamemode (default survival) – Ceci définit le mode de jeu.   Les options sont survival, creative, adventure, et spectator.

      • level-name ( default world) – Ceci définit le nom de votre serveur qui apparaîtra dans le client. Les caractères tels que l’apostrophe peuvent avoir besoin d’une barre oblique inversée pour s’échapper.

      • motd ( default A Minecraft Server) – Le message qui est affiché dans la liste des serveurs du client Minecraft.

      • pvp ( default true) – Permet le combat entre joueurs.   S’il est mis sur true, les joueurs pourront engager le combat et se nuire mutuellement.

      Une fois que vous avez défini les options que vous souhaitez, enregistrez et fermez le fichier.

      Maintenant que vous avez changé le CLUF en true et configuré vos paramètres, vous pouvez démarrer votre serveur avec succès.

      Comme la dernière fois, démarrez votre serveur avec 1024M de RAM. Seulement maintenant, accordons également à Minecraft la possibilité d’utiliser jusqu’à 4G de RAM si elle en a besoin. Rappelez-vous, vous êtes invités à ajuster ce nombre pour s’adapter aux limites de votre serveur ou aux besoins des utilisateurs :

      • java -Xms1024M -Xmx4G -jar minecraft_server_1.15.2.jar nogui

      Donnez quelques instants à l’initialisation. Bientôt, votre nouveau serveur Minecraft va commencer à produire une sortie similaire à celle-ci :

      Output

      [21:08:14] [Server thread/INFO]: Starting minecraft server version 1.15.2 [21:08:14] [Server thread/INFO]: Loading properties [21:08:14] [Server thread/INFO]: Default game type: SURVIVAL [21:08:14] [Server thread/INFO]: Generating keypair [21:08:15] [Server thread/INFO]: Starting minecraft server on *:25565

      Une fois que le serveur est opérationnel, vous verrez le résultat suivant :

      Output

      [21:15:37] [Server thread/INFO]: Done (30.762s)! For help, type "help"

      Votre serveur fonctionne maintenant, et vous avez été déposé dans le panneau de contrôle de l’administrateur du serveur. Maintenant, tapez help :

      Une sortie comme celle-ci apparaîtra :

      Output

      [21:15:37] [Server thread/INFO]: /advancement (grant|revoke) [21:15:37] [Server thread/INFO]: /ban <targets> [<reason>] [21:15:37] [Server thread/INFO]: /ban-ip <target> [<reason>] [21:15:37] [Server thread/INFO]: /banlist [ips|players] ...

      A partir de ce terminal, vous pouvez exécuter les commandes de l’administrateur et contrôler votre serveur Minecraft. Maintenant, utilisons screen pour que votre nouveau serveur continue de fonctionner, même après que vous vous soyez déconnecté. Ensuite, vous pouvez vous connecter à votre client Minecraft et commencer un nouveau jeu. 

      Étape 4 – Maintenir le serveur en fonctionnement

      Maintenant que votre serveur est opérationnel, vous voulez qu’il le reste même après vous être déconnecté de votre session SSH. Comme vous avez utilisé screen plus tôt, vous pouvez vous détacher de cette session en appuyant sur Ctrl + A + D. Vous êtes maintenant de retour dans votre shell d’origine.

      Exécutez cette commande pour voir toutes vos sessions screen :

      Vous obtiendrez une sortie avec l’ID de votre session, dont vous aurez besoin pour reprendre cette session :

      Output

      There is a screen on: 26653.pts-0.minecraft (03/25/20 21:18:31) (Detached) 1 Socket in /run/screen/S-root.

      Pour reprendre votre session, passez le drapeau -r à la commande screen et entrez ensuite votre identifiant de session :

      Lorsque vous êtes prêt à vous déconnecter de votre serveur, veillez à vous détacher de la session avec Ctrl + A + D, puis déconnectez-vous.

      Etape 5 – Se connecter à votre serveur depuis le client Minecraft

      Maintenant que votre serveur est opérationnel, nous allons nous y connecter via le client Minecraft. Vous pouvez alors jouer !

      Lancez votre copie de Minecraft Java Edition et sélectionnez Multiplayer dans le menu.

      Sélectionnez Multiplayer dans le menu

      Ensuite, vous devrez ajouter un serveur pour vous connecter, donc cliquez sur le bouton Add Server.

      Cliquez sur le bouton Add Server

      Dans l’écran Edit Server Info qui s’affiche, donnez un nom à votre serveur et tapez l’adresse IP de votre serveur. Il s’agit de la même adresse IP que celle que vous avez utilisée pour vous connecter via SSH.

      Nommez votre serveur et tapez l'adresse IP

      Une fois que vous aurez saisi le nom de votre serveur et son adresse IP, vous serez ramené à l’écran Multiplayer où votre serveur sera désormais répertorié.

      Sélectionnez votre serveur et cliquez sur Join Server 

      Désormais, votre serveur apparaîtra toujours dans cette liste. Sélectionnez-le et cliquez sur Join Server.

      Amusez-vous bien ! 

      Vous êtes dans votre serveur et prêt à jouer !

      Conclusion

      Vous avez maintenant un serveur Minecraft fonctionnant sur Ubuntu 20.04 pour jouer avec tous vos amis ! Amusez-vous à explorer, fabriquer et survivre dans un monde en 3D rudimentaire. Et n’oubliez pas : faites attention aux griefers.



      Source link