StorageReview.com

Installation de Docker Swarm sur un client léger

Entreprise  ◇  AccueilLab

N'ayant pas un budget très conséquent pour mon labo perso, le client léger HP t730 est idéal. J'ai eu la chance d'en gagner un lors d'un récent concours organisé par StorageReview sur leur subreddit . Le t730 possède suffisamment de RAM et de puissance de calcul pour s'adapter à de nombreux usages, sans être surdimensionné. Que ce soit pour héberger Pi-hole, l'utiliser comme routeur/pare-feu pfSense ou, comme ici, le connecter à Docker Swarm.

Installation de Docker Swarm

Si vous n'êtes pas familier avec Docker ou les conteneurs dans leur ensemble, vous pouvez les considérer comme des machines virtuelles légères qui s'exécutent sur presque tout. Bien qu'il s'agisse d'une simplification excessive majeure, cela vous donne suffisamment d'informations sans être écrasant. Swarm est une extension de Docker. Il fournit un moyen simple et intégré d'« orchestrer » les conteneurs, en les déployant sur plusieurs nœuds, en gérant les ressources et d'autres choses de cette nature.

Dans mon infrastructure existante, j'avais déjà cinq nœuds fonctionnant sous Swarm : quatre Raspberry Pi B4 et un Dell Optiplex 7040. Cela constitue une excellente base pour débuter. Cependant, un seul nœud suffit pour suivre ce tutoriel Docker Swarm. À noter que, même si j'ai obtenu celui-ci pour une somme modique, on peut en trouver à 200 $ ou moins sur eBay en cherchant bien et en négociant un peu.

Docker Swarm Installer le système d'exploitation

Pour commencer, j'ai installé ma distribution Linux préférée, Debian Buster, sur mon HP t730. Ensuite, j'ai dû flasher l' installateur Debian sur une clé USB. Balena Etcher est une bonne option pour flasher l'image : c'est un logiciel gratuit et simple d'utilisation. Une fois cette étape terminée, nous pourrons commencer l'installation.

hp t730Figure 1 : Installation du nouveau SSD

J'ai d'abord remplacé le SSD SATA M.2 de 32 Go de mon T730 par un SSD de 256 Go . Mais, à mon insu, cela allait engendrer des problèmes. En effet, certaines interfaces de firmware sont boguées et parfois incompatibles avec les SSD non officiels. Le SSD que j'ai installé fait partie de ceux qui ne fonctionnent pas. Pour contourner ce problème, lors de l'installation de Debian, j'ai dû configurer Grub pour qu'il s'installe comme disque amovible ; vous pourriez rencontrer cette même difficulté selon le SSD installé.

Gardez à l'esprit que 256 Go ne sont pas nécessaires pour ce que nous faisons aujourd'hui, je l'avais juste sous la main. Je recommande au moins 64 Go, mais cela peut limiter la quantité de données que vous pouvez stocker sur le lecteur.

Après avoir installé le lecteur, j'ai démarré dans l'écran d'installation de Debian. Je suis passé par une installation de base, en choisissant la langue, la disposition du clavier, etc. Pour la configuration utilisateur, je fais quelque chose de spécifique. Je ne saisis pas du tout de mot de passe pour l'utilisateur root, cela désactive le compte. Et je crée un nouvel utilisateur nommé administrateur qui a un mot de passe extrêmement long que j'enregistre dans un gestionnaire de mots de passe. Cela maintient le système aussi sûr que possible.

Pour le partitionnement, j'ai choisi une disposition assez simple, une partition de démarrage de 1 Go et le reste du lecteur alloué à la partition racine. J'ai choisi respectivement FAT32 et ext4 pour les systèmes de fichiers, je préfère ext4 à quelque chose comme Btrfs en raison de la stabilité et de la vitesse, même s'il manque certaines des fonctionnalités de pointe des nouveaux systèmes de fichiers.

Lorsque j'ai atteint l'écran de sélection des packages de base, j'ai tout désélectionné sauf le serveur OpenSSH. Mon raisonnement est que je veux que le système de base soit aussi léger que possible, et il est également sans tête, car il n'a pas d'interface graphique. Mais, pour terminer ce didacticiel, tout ce dont vous avez besoin est le serveur OpenSSH, vous pouvez installer tous les packages supplémentaires dont vous avez besoin.

Figure 2 : Packages en cours d'installation

Si vous rencontrez le bug du firmware EFI mentionné précédemment, le wiki Debian propose un guide utile pour le résoudre . Une fois GRUB installé, redémarrez et débranchez la clé USB. Si tout se passe bien, vous démarrerez en mode TTY ou en interface graphique, selon votre choix.

Configuration post-installation

Une fois l'installation terminée, nous pouvons commencer la configuration du système. J'ai écrit un playbook Ansible qui automatise ce processus. Par souci de simplicité, nous allons exécuter les commandes manuellement.

# Cela installe les packages nécessaires pour effectuer les étapes suivantessudo apt updatesudo apt install gnupg ca-certificates apt-transport-https curl lsb-release -y# cela ajoute la clé dont apt a besoin pour vérifier les signatures sur les packages Dockercurl -fsSL https://download .docker.com/linux/debian/gpg | sudo gpg –dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg# Et pour ajouter le référentiel qui installe Docker, exécutez ceci : echo "deb [arch=amd64signed-by=/usr/share/keyrings/ docker-archive-keyring.gpg] https://download.docker.com/linux/debian \ $(lsb_release -cs) stable » | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null

Une fois cela fait, nous devons installer Docker lui-même et activer le service.

sudo apt installer docker-ce

sudo systemctl enable -now docker

Nous sommes maintenant prêts à utiliser Docker pour exécuter des services !

Utilisation de Docker Swarm sur le HP t730

La première fois que vous utilisez Swarm, vous devez initialiser Swarm. Passons en revue les commandes ci-dessous. Si vous avez déjà un essaim, ignorez cette étape.

initialisation de l'essaim docker sudo

Si vous voulez vérifier que cela a fonctionné, collez cette commande dans votre terminal :

if [ “$(sudo docker info | grep Swarm | sed 's/Swarm: //g')” == “inactive” ]; then echo false;else echo true;fin

Si votre hôte s'exécute en mode Swarm, cette commande doit renvoyer "true".

Exécution de notre premier service

Avec Swarm, il existe deux manières de créer des services.

  1. service docker créer c'est similaire à docker courir
  2. déploiement de la pile docker c'est similaire à docker-compose

En règle générale, vous souhaitez utiliser le déploiement de la pile docker car vous pouvez facilement reproduire les piles.

Mais juste pour vérifier que cela fonctionne, l'utilisation du service docker create est correcte.

service docker sudo créer -p 3000:80 httpd

L'opération peut prendre un certain temps, mais une fois la commande terminée, vous pourrez accéder à l'adresse IP du nœud sur le port 3000. Si vous ne connaissez pas votre adresse IP, exécutez la commande `hostname -I`. Dans mon cas, j'ai dû accéder à `192.168.19.73:3000` . Vous devriez voir un message indiquant que tout fonctionne correctement.

Fermeture

Le HP t730 est une excellente petite machine, idéale pour les débutants comme pour les passionnés de serveurs domestiques expérimentés. Elle prend en charge de nombreux usages et offre des performances remarquables pour son prix , qui, dans mon cas, ne s'est limité qu'aux 15 $ de frais de port (merci StorageReview !). J'espère que cet article vous aura été utile, que ce soit pour découvrir de nouvelles technologies ou pour vous inspirer à créer votre propre serveur domestique.

-Ethan Edwards

Clients légers HP t730 sur eBay

S'engager avec StorageReview

Newsletter | YouTube | Podcast iTunes / Spotify | Instagram | Twitter | TikTok | Flux RSS

Auteur invité