Schématisez vos baies serveurs facilement avec Rackula
Rackula est une application open source, accessible directement dans votre navigateur Web, et qui permet de modéliser facilement vos baies serveurs. De quoi vous permettre de créer un schéma propre et à jour de vos racks, que ce soit celui de votre HomeLab ou celui de votre entreprise.
Que ce soit pour alimenter votre documentation d’exploitation, pour savoir ce que vous avez comme place disponible dans votre baie, ou peut-être même schématiser l’implantation d’équipements dans une nouvelle baie, Rackula peut vous aider ! Il représente une alternative à la méthode Excel ou celle basée sur Visio pour réaliser ce type de tâche. C’est aussi une alternative plus basique à l’utilisation de solutions plus complètes qui intègrent ce genre de fonctionnalités, comme GLPI et NetBox.
Sommaire
Qu’est-ce que Rackula ?
Rackula est une application open source permettant de concevoir des schémas de baies informatiques (que l’on appelle “rack layouts” en anglais). Simple à utiliser, cette application adopte une approche par “glisser-déposer” pour positionner des équipements sur vos baies informatiques. Tout s’effectue dans votre navigateur où vous pouvez créer un ou plusieurs racks facilement, avec la face avant et la face arrière, ou uniquement la face avant.
Bien que pensée pour fonctionner de manière totalement déconnectée dans le navigateur (client-side), Rackula propose également un mode de déploiement “avec persistance”. Ce mode, que nous allons exploiter dans ce tutoriel, s’appuie sur une API backend permettant de sauvegarder vos agencements de baies sous forme de fichiers YAML sur votre serveur. Ainsi, vous pouvez retrouver vos projets par la suite.
Rackula permet d’exporter vos réalisations aux formats PNG, PDF ou SVG, et vous pouvez partager l’URL d’un projet via un QR code.
Ce projet étant open source, son code source est disponible sur GitHub. Vous pouvez aussi le tester directement en ligne, ce qui permet de se faire une idée avant un déploiement en mode self-hosted.

Prérequis
Pour installer Rackula sur votre serveur (ou NAS), voici quelques prérequis à respecter. C’est du grand classique.
- Le moteur Docker doit être installé, tout comme Docker Compose.
- Vous devez disposer des droits d’administration (root ou via sudo).
- Un port doit être disponible (dans notre exemple, le port ) sur la machine hôte.
Si Docker n’est pas encore installé sur votre système, je vous invite à consulter ce tutoriel :
Déploiement de Rackula avec Docker
Pour commencer, nous allons créer un répertoire dédié au service Rackula : . Nous allons aussi créer à l’intérieur un répertoire nommé et qui sera utilisé pour stocker nos projets.
Ouvrez un terminal sur votre serveur et exécutez les commandes suivantes pour créer le dossier et vous y déplacer :
Ensuite, créez un fichier nommé :
Insérez le code spécifié ci-dessous. Nous utilisons ici la version persistante de l’application, ce qui nécessite de déployer un service pour le frontend (l’interface web) et un service pour l’API (le backend chargé de l’écriture des données) :
Remarque : pour le service , nous n’utilisons pas le tag classique, mais le tag . C’est cette version spécifique du conteneur qui permet d’assurer la persistance des données.
Enregistrez et fermez ce fichier. En complément, créez un fichier afin de spécifier les variables d’environnement.
Dans ce second fichier, ajoutez le contenu suivant :
Voici à quoi correspondent ces deux variables :
- : cette variable permet d’indiquer à l’API quelle origine (URL) est autorisée à émettre des requêtes. Si vous y accédez via , vous devez définir cette valeur à l’identique. C’est une fonction de sécurité courante sur les applications Web.
- : un jeton pour protéger les opérations d’écriture sur l’API de l’application. Cette variable définit donc un mot de passe (token). Définissez une chaîne de caractères aléatoires.
Une fois votre fichier enregistré, vous pouvez déclencher la construction de la stack Docker Compose. Toujours depuis le répertoire , exécutez la commande suivante :
Afin de vous assurer que les services démarrent correctement et qu’il n’y a pas d’erreur de communication entre le frontend et l’API, il est judicieux de lire les journaux de l’application. Je vous rappelle la commande :
Si aucune erreur ne s’affiche, l’application devrait être accessible depuis votre navigateur.
Déploiement de Rackula avec un reverse proxy Traefik
Pour ceux qui veulent une configuration où Rackula est publié via un reverse proxy Traefik, et donc accessible en HTTPS, voici le code Docker Compose que vous pouvez utiliser.
Cette configuration s’appuie sur deux réseaux : le réseau pour les connexions entre Traefik et le service principal de Rackula. Le réseau pour les connexions backend entre les deux conteneurs Rackula.
Vous devez, là aussi, créer un fichier pour définir plusieurs variables d’environnement. C’est un peu plus strict puisque l’on va publier l’application en HTTPS.
Prise en main de Rackula
Ouvrez un navigateur web depuis une machine de votre réseau et naviguez vers l’URL configurée, par exemple : .
L’interface de Rackula s’affiche. Voici comment fonctionne Rackula :
- Création d’une baie : sélectionnez le type de baie et renseignez les caractéristiques physiques de votre baie (nom, nombre d’unités – U).
- Ajout d’équipements : utilisez la barre latérale pour parcourir le catalogue de composants disponibles (serveurs, commutateurs réseaux, PDU).
- Positionnement : sélectionnez un équipement et glissez-le dans l’emplacement souhaité au niveau de la baie.
- Personnalisation : éditez les différents équipements pour ajouter des métadonnées, comme l’adresse IP et/ou une note, ainsi que des images des façades.
- Export : quand tout est prêt, vous pouvez décider d’exporter votre schéma au format image.
Ci-dessous une rapide présentation de l’application. Je vous invite à regarder ma vidéo pour une démonstration complète.
Vous pouvez créer une baie informatique unique ou alors plusieurs baies côte à côte.

Puis, vous devez indiquer la taille de votre baie informatique (baie 19 pouces, par exemple) et sa hauteur en nombre de U.

Votre baie informatique est ensuite ajoutée à l’interface de Rackula. Sur la gauche, vous pouvez piocher dans la bibliothèque des équipements :
- Vous avez des équipements et accessoires génériques : PDU, étagère, bandeau passe-câble, serveur, mini PC, switch, routeur, etc…
- Vous avez des équipements de marques préconfigurés, comme des routeurs TP-Link, des serveurs Dell ou encore des NAS Synology

Si vous souhaitez ajouter une référence qui n’est pas dans la liste, ce n’est pas gênant. Vous pouvez créer vos propres équipements : nom, taille occupée en U, catégorie, couleur, profondeur, etc… Créez vos assets personnalisés facilement. Ils sont ensuite ajoutés à la bibliothèque.

Vous n’avez qu’à faire des glisser-déposer pour positionner vos équipements dans la baie.
Rackula permet d’ajouter des informations sur chaque élément, comme une adresse IP, une note, ou encore une photo de la face avant et de la face arrière. Il y a justement une vue pour permettre d’afficher les photos réelles plutôt que des blocs avec du texte. Chaque équipement peut aussi être décalé au niveau d’un U (de 1/3 d’un U, par exemple) pour refléter l’implémentation réelle.

À tout moment, vous pouvez décider d’exporter votre création. Quelques options sont proposées, notamment pour éliminer le fond ou pour utiliser plutôt un thème sombre ou clair.

Voici un exemple de modélisation créée avec Rackula :

Conclusion
Simple et efficace : Rackula est une solution accessible à toutes et tous pour effectuer la modélisation d’une baie informatique. Il y a plein de scénarios d’utilisation pour ce type d’outils, y compris pour les étudiants afin de s’exercer à imaginer l’implémentation d’un ensemble d’équipements dans une baie informatique. Désormais, vous n’avez plus d’excuse : documentez vos racks !
Si vous appréciez les outils de schématisation open source, regardez aussi :