Aller au contenu

Démarrez avec Incus pour Déployer des conteneurs et des VM

Mise à jour :

logo incus

Aujourd’hui, pouvoir gérer des conteneurs et des machines virtuelles est devenue incontournable. Incus s’inscrit dans cette dynamique en tant qu’outil offrant une approche unifiée pour gérer ces environnements de manière efficace. Né de la volonté d’apporter une alternative à LXD, Incus se distingue par sa simplicité d’utilisation et sa robustesse.

Historique

Stéphane Graber est la personne clé derrière la création d’Incus. Déjà bien connu pour son travail sur LXD, il a décidé de lancer ce nouveau projet quand LXD a pris une autre direction. Grâce à son expérience et à sa connaissance approfondie des conteneurs, Stéphane a permis à Incus de voir le jour et de proposer une alternative solide et accessible à LXD.

Il travaille avec une équipe de développeurs passionnés qui, comme lui, veulent rendre la gestion des conteneurs et des machines virtuelles plus simple et plus efficace. Ensemble, ils continuent d’améliorer Incus, en veillant à ce qu’il soit facile d’utilisation tout en restant très puissant pour les administrateurs systèmes.

Les fonctionnalités clés d’Incus

  1. Conteneurs et machines virtuelles : Vous pouvez facilement créer et gérer des conteneurs légers ou des machines virtuelles plus isolées, selon vos besoins.
  2. Images prêtes à l’emploi : Incus utilise des images Linux comme Ubuntu pour déployer rapidement des conteneurs ou des machines virtuelles. Il est également possible de créer vos propres images.
  3. Réseau : Vous pouvez configurer des réseaux simples ou complexes pour vos instances. Par exemple, créer un réseau en pont ou utiliser des outils avancés comme OVN.
  4. Stockage : Incus permet de gérer vos données en créant des volumes de stockage, que vous pouvez déplacer ou copier entre différentes instances.
  5. Clustering : Vous pouvez regrouper plusieurs serveurs dans un cluster pour répartir la charge et améliorer la disponibilité des instances.
  6. CLI (interface en ligne de commande) : Incus offre une CLI intuitive qui vous permet de lancer et gérer vos conteneurs ou machines virtuelles avec des commandes simples comme :
  7. API REST : L’API REST d’Incus permet de contrôler à distance vos instances ou de les intégrer dans d’autres outils.

Comment fonctionne Incus

Son fonctionnement repose principalement sur des technologies du noyau Linux comme les namespaces et les cgroups, qui assurent l’isolation des processus et des ressources pour chaque instance, de manière similaire à des outils bien connus comme Docker.

Contrairement à Docker, qui se concentre uniquement sur la gestion des conteneurs, Incus prend en charge à la fois les machines virtuelles et les conteneurs système. Cela en fait une solution polyvalente, comparable à Proxmox, mais avec une gestion plus légère.

Incus s’appuie sur QEMU, un hyperviseur performant qui permet de faire tourner des systèmes d’exploitation complets. Cette utilisation de QEMU permet à Incus de proposer une isolation plus complète pour les machines virtuelles, garantissant une indépendance totale vis-à-vis du noyau de l’hôte.

Installation d’Incus

L’installation d’Incus est assez simple et peut être effectuée sur plusieurs distributions Linux, telles qu’Ubuntu, Fedora, et Gentoo. Voici les étapes de base pour installer Incus sur les systèmes les plus courants.

Installation sur Ubuntu

Si vous utilisez une version récente d’Ubuntu (24.04 LTS ou ultérieure), vous pouvez installer Incus directement à partir des dépôts officiels. Voici les étapes :

  1. Mettez à jour vos paquets :

    Terminal window
    sudo apt update
  2. Installez Incus avec la commande suivante :

    Terminal window
    sudo apt install incus
  3. Pour pouvoir gérer les machines virtuelles, installez également QEMU :

    Terminal window
    sudo apt install qemu-system
  4. Si vous migrez depuis LXD, vous pouvez installer l’outil de migration :

    Terminal window
    sudo apt install incus-tools

Installation sur Fedora

Incus n’est pas encore disponible dans les dépôts officiels de Fedora, mais vous pouvez l’installer en utilisant le dépôt COPR de la communauté.

  1. Installez le plugin COPR pour dnf :

    Terminal window
    sudo dnf install 'dnf-command(copr)'
  2. Activez le dépôt COPR pour Incus :

    Terminal window
    sudo dnf copr enable ganto/lxc4
  3. Installez Incus :

    Terminal window
    sudo dnf install incus

Installation des dernières versions sur Debian et Ubuntu

Si vous voulez installer la dernière version d’Incus, vous pouvez le faire en utilisant les dépots de zabbly. Attention seul les distributions suivantes sont pris en charge :

  • Ubuntu 20.04 LTS (focal)
  • Ubuntu 22.04 LTS (jammy)
  • Ubuntu 24.04 LTS (noble)
  • Debian 11 (bullseye) (amd64 only)
  • Debian 12 (bookworm)

Voici les étapes :

Terminal window
sudo -i
mkdir -p /etc/apt/keyrings/
curl -fsSL https://pkgs.zabbly.com/key.asc -o /etc/apt/keyrings/zabbly.asc
sh -c 'cat <<EOF > /etc/apt/sources.list.d/zabbly-incus-stable.sources
Enabled: yes
Types: deb
URIs: https://pkgs.zabbly.com/incus/stable
Suites: $(. /etc/os-release && echo ${VERSION_CODENAME})
Components: main
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/zabbly.asc
EOF'
sudo apt udpate
sudo apt install incus

Post-installation

Après l’installation, vous pouvez démarrer Incus et l’initialiser avec la commande suivante :

Terminal window
sudo incus admin init

Cela vous permettra de configurer les paramètres initiaux, comme le réseau et le stockage.

Si vous préférez une configuration minimale et rapide, utilisez la commande :

Terminal window
sudo incus admin init --minimal

Accès non-root à Incus

Pour utiliser Incus sans devoir exécuter toutes les commandes en tant que root, vous pouvez ajouter votre utilisateur au groupe incus-admin :

Terminal window
sudo usermod -a -G incus-admin $USER
sudo usermod -a -G incus $USER

Cela vous permettra d’exécuter des commandes administratives d’Incus sans les privilèges root, après avoir redémarré votre session utilisateur.

En suivant ces étapes, vous serez prêt à utiliser Incus pour gérer vos conteneurs et machines virtuelles.

Conclusion

Incus est une solution puissante et flexible pour la gestion des conteneurs et des machines virtuelles, offrant un contrôle précis des ressources tout en s’appuyant sur des technologies éprouvées comme les namespaces, cgroups et QEMU. Son interface en ligne de commande simple en ligne de commande, combinée à une API REST robuste, permet de gérer des environnements de manière efficace et automatisée. Que vous migriez depuis LXD ou que vous cherchiez une solution légère pour vos déploiements, Incus se positionne comme un excellent choix pour les administrateurs systèmes.

Plus d’infos

Plus loin