Bien démarrer avec LXD ouvre la porte à une gestion efficace et légère des conteneurs et des machines virtuelles sous Linux. LXD est un puissant gestionnaire de conteneurs système et de VM qui simplifie le déploiement et la gestion des conteneurs Linux, ce qui en fait une solution idéale pour héberger des applications web, des environnements de test et déployer des microservices. Il comble le fossé entre la virtualisation traditionnelle et la conteneurisation, en offrant flexibilité et performances pour les besoins d'infrastructure modernes.
Dans cet article, nous vous guiderons à travers une démonstration étape par étape pour installer et gérer un conteneur avec LXD dans un scénario pratique. De plus, nous fournirons un aide-mémoire résumé sous forme de tableau pour vous aider à consulter rapidement les commandes LXD essentielles, afin que vous disposiez des outils nécessaires pour rationaliser vos flux de travail de gestion de conteneurs.
Articles précédents :
01. Introduction à Ubuntu Server – SysOSX: AI & Cloud
02. Comment configurer votre premier serveur Ubuntu : guide du débutant – SysOSX: AI & Cloud
03.Maîtriser la ligne de commande Linux pour Ubuntu Server – SysOSX: AI & Cloud
05. Notions de base sur les réseaux pour Ubuntu Server : guide complet – SysOSX: AI & Cloud
06. Installation et gestion de logiciels sur Ubuntu Server : guide complet – SysOSX: AI & Cloud
07.Application de correctifs et mise à jour d’Ubuntu Server : guide complet – SysOSX: AI & Cloud
09. Audit et journalisation d’Ubuntu Server
10. Outils de surveillance système pour Ubuntu Server : guide complet – SysOSX: AI & Cloud
11. Journalisation centralisée pour Ubuntu Server : un guide indispensable – SysOSX: AI & Cloud
12. Audit et conformité pour Ubuntu Server : pratiques recommandées – SysOSX: AI & Cloud
14. Héberger plusieurs sites web sur un seul serveur Ubuntu : conseils utiles – SysOSX: AI & Cloud
15. Gestion du stockage et des disques sur Ubuntu Server : guide simple – SysOSX: AI & Cloud
18. Comment configurer et utiliser LVM sur Ubuntu Server : guide complet – SysOSX: AI & Cloud
Table des matières
Qu'est-ce que LXD ?
LXD est un outil de gestion de conteneurs open source construit sur Linux Containers (LXC). Il propose des conteneurs système qui se comportent comme des machines virtuelles, mais sont plus rapides et plus légers. Avec LXD, vous pouvez :
- Exécuter des distributions Linux complètes dans des conteneurs.
- Utiliser des fonctionnalités avancées de réseau et de stockage.
- Gérer les conteneurs à distance via l'API REST.
- Migrer les conteneurs entre hôtes avec un temps d'arrêt minimal.
Installer LXD avec Snap
La méthode recommandée pour installer LXD sur les systèmes Ubuntu modernes est Snap. Suivez ces étapes :
1. Installer Snapd
Assurez-vous que Snap est installé sur votre système. Si Snap n'est pas installé, exécutez :
sudo apt update
sudo apt install snapd
2. Installer LXD
Installez LXD avec Snap :
sudo snap install lxd

3. Vérifier l'installation
Vérifiez la version installée de LXD :
lxd --version

Démo : utiliser LXD pour installer un conteneur
Passons en revue un scénario courant dans lequel nous utilisons LXD pour créer et gérer un conteneur exécutant Ubuntu 22.04.
Étape 1 : Initialiser LXD
Exécutez la commande suivante pour initialiser LXD :
sudo lxd init

Vous serez invité à configurer le stockage, le réseau et d'autres paramètres. Par souci de simplicité, vous pouvez choisir les options par défaut.
Étape 2 : Lancer un conteneur Ubuntu
Créez et démarrez un conteneur exécutant Ubuntu 22.04 avec la commande :
lxc launch ubuntu:22.04 web-server

Cette commande crée un conteneur nommé web-server en utilisant l’image Ubuntu 22.04.
Étape 3 : Accéder au conteneur
Obtenez un accès shell au conteneur :
lxc exec web-server -- bash

Vous êtes maintenant dans le conteneur et pouvez installer des paquets ou configurer des services. Par exemple, installez Apache :
apt update
apt install apache2 -y
Démarrez le service Apache :
systemctl start apache2
Étape 4 : Vérifier le réseau du conteneur
Quittez le conteneur et vérifiez son adresse IP :
lxc list

Accédez au serveur web du conteneur en visitant son adresse IP dans un navigateur ou en utilisant curl http://ip pour vérifier la connectivité.

Étape 5 : Arrêter et supprimer le conteneur
Lorsque vous n'avez plus besoin du conteneur, arrêtez-le :
lxc stop web-server
Supprimez le conteneur :
lxc delete web-server
Aide-mémoire de la ligne de commande LXD
Voici un aide-mémoire résumé des commandes LXD couramment utilisées :
| Catégorie | Commande | Description |
|---|---|---|
| Initialisation | lxd init | Initialise LXD avant la première utilisation. |
| Créer des instances | lxc init <image> <name> | Crée un conteneur sans le démarrer. |
lxc launch <image> <name> | Crée et démarre un conteneur. | |
lxc launch <image> <name> --vm | Crée et démarre une machine virtuelle. | |
| Gérer les instances | lxc list | Répertorie toutes les instances. |
lxc info <instance> | Affiche des informations sur une instance. | |
lxc start <instance> | Démarre une instance. | |
lxc stop <instance> [--force] | Arrête une instance. | |
| `lxc delete <instance> [–force | –interactive]` | |
| Accéder aux instances | lxc exec <instance> -- <command> | Exécute une commande dans une instance. |
lxc exec <instance> -- bash | Obtient un accès shell à une instance. | |
lxc console <instance> | Obtient un accès console à une instance. | |
| Gestion des fichiers | lxc file pull <instance>/<path> <local_path> | Récupère un fichier depuis une instance. |
lxc file push <local_path> <instance>/<path> | Envoie un fichier vers une instance. | |
| Projets | lxc project create <project> | Crée un projet. |
lxc project set <project> <option> | Configure un projet. | |
lxc project switch <project> | Bascule vers un projet. |
Document officiel :
Premiers pas avec LXD
Conclusion
LXD simplifie la gestion des conteneurs, ce qui en fait un excellent choix pour les développeurs, les administrateurs système et les ingénieurs DevOps. Avec ses performances légères et ses capacités similaires à celles d'une VM, LXD est idéal pour héberger des applications, des environnements de test et bien plus encore.
Dans cet article, nous avons montré comment utiliser LXD pour installer et gérer un conteneur dans un scénario courant. De plus, l'aide-mémoire fournit une référence rapide des commandes LXD essentielles.
Prochain sujet :
Dans le prochain article, nous parlerons de comment utiliser Podman sur Ubuntu Server. Restez à l'écoute.