Aller au contenu

Administration de Serveurs Incus Distants

Mise à jour :

logo incus

Je vous propose ici de découvrir comment administrer un serveur Incus à distance. Parmi les solutions existantes, Incus offre un ensemble d’outils puissants pour déployer, gérer et superviser des environnements virtualisés ou conteneurisés.

Dans ce guide, je vais vous présenter deux méthodes populaires pour administrer un serveur Incus à distance. La première, via l’interface en ligne de commande (CLI), qui repose sur la création de tokens pour sécuriser l’accès à distance, offrant ainsi une gestion fine et directe de vos serveurs.

La seconde méthode consiste à installer une interface utilisateur (UI) pour Incus. Ce choix est idéal pour ceux qui privilégient une expérience plus visuelle et accessible. Grâce à cette interface graphique, vous pouvez superviser et gérer vos serveurs sans nécessairement maîtriser toutes les commandes de la CLI, ce qui en fait une solution pratique pour les administrateurs ou équipes qui préfèrent un accès visuel et intuitif.

Configuration du serveur pour l’administration distante

Avant de connecter un client, il est nécessaire de configurer le serveur Incus pour accepter des connexions distantes.

Sur le serveur, activez l’API HTTP sécurisée en spécifiant l’adresse IP et le port. Utilisez la commande suivante pour lier l’adresse à votre interface réseau :

Terminal window
incus config set core.https_address <adresse_IP>:8443

Configuration d’un client pour administrer un serveur Incus distant

Pour administrer un serveur Incus à distance, le client doit être configuré pour établir une connexion sécurisée. Voici les étapes principales pour y parvenir :

  1. Installation de la CLI Incus : Assurez-vous que la CLI Incus est installée sur la machine cliente. Si ce n’est pas le cas, vous pouvez l’installer depuis mon guide d’installation de la CLI Incus en n’installant que le package incus-client.

  2. Ajout du serveur distant : Utilisez la commande suivante pour ajouter le serveur distant :

    Terminal window
    incus remote add <nom_du_serveur> <adresse_du_serveur>

    Par exemple, pour ajouter un serveur distant à l’adresse 192.168.1.100, on utilisera :

    Terminal window
    incus remote add master2 192.168.20.100
  3. Acceptation des certificats : Lors de l’ajout d’un serveur, la CLI Incus vous demandera d’accepter le certificat SSL du serveur pour garantir une connexion sécurisée. Vérifiez les détails du certificat avant de l’accepter.

  4. Authentification avec un token ou un certificat : Incus propose deux méthodes d’authentification :

    • Avec un token généré sur le serveur Incus.
    • Avec un certificat client que vous pouvez ajouter pour une sécurité renforcée.

    Pour une authentification par token, générez le token sur le serveur et ajoutez-le à la configuration client.

    Terminal window
    incus config trust add <nom_du_client>

    Copiez le token, et renseignez-le sur le client.

  5. Vérification de la connexion : Testez la connexion avec la commande :

    Terminal window
    incus list master2:
    +------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
    | NAME | STATE | IPV4 | IPV6 | TYPE | SNAPSHOTS |
    +------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
    | c1 | RUNNING | 192.168.20.123 (eth0) | | CONTAINER | 0 |
    +------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
    | c2 | RUNNING | 192.168.20.124 (eth0) | | CONTAINER | 0 |
    +------+---------+-----------------------+-----------------------------------------------+-----------+-----------+
    | test | RUNNING | 10.47.242.128 (eth0) | fd42:56f5:b155:285e:216:3eff:fecc:ee0a (eth0) | CONTAINER | 0 |
    +------+---------+-----------------------+-----------------------------------------------+-----------+-----------+

    Cette commande doit afficher la liste des conteneurs ou instances présents sur le serveur distant.

En suivant ces étapes, vous aurez un client configuré et prêt pour administrer vos serveurs Incus à distance de manière sécurisée et fiable.

Fonctionnalités de l’interface utilisateur (UI) d’Incus

L’interface utilisateur d’Incus est conçue pour simplifier la gestion des conteneurs et instances de VM via une approche graphique et intuitive. Voici un aperçu des principales fonctionnalités :

  1. Gestion des conteneurs : Accédez facilement à la liste de vos conteneurs, avec des options pour démarrer, arrêter, créer et supprimer des instances en quelques clics. Il y a même l’affichage de la console et d’un terminal.
  2. Gestion des réseaux et volumes : L’interface permet d’ajuster la configuration réseau des conteneurs, de gérer les interfaces et d’ajouter ou retirer des volumes de stockage.
  3. Gestion des images : Téléchargez, importez et supprimez des images locales.
  4. Journaux et alertes : Consultez les logs d’activité de chaque instance et configurez des alertes pour détecter rapidement les incidents ou anomalies.
  5. Configuration du serveur : Ajustez les paramètres du serveur Incus.

Vous l’aurez compris, ces fonctionnalités permettent une gestion complète et simplifiée des instances Incus, rendant l’administration plus accessible tout en restant puissante.

L'interface graphique Incus

Installation de l’interface graphique sur le serveur Incus

Un projet a forké l’interface de LXD pour qu’elle prenne en charge Incus, permet d’installation d’une interface d’administration 100% web. Le package de l’interface utilisateur Web pour Incus s’appelle incus-ui-canonical. Notez qu’actuellement, le package incus-ui-canonical est fourni par le dépôt Zabbly détaillé dans l’introduction à Incus.

Terminal window
sudo apt install -y incus-ui-canonical

Il faut comme pour l’interface en ligne de commande, activer l’API sur le serveur Incus. Reprenez-la procédure ci-dessus.

Configuration du certificat

La configuration est totalement guidée. Suivant les étapes comme indiqué dans la capture d’écran ci-dessous :

Configuration de l'interface graphique Incus

  1. Généré le certificat et copiez-le sur le serveur où se trouve l’instance Incus.

  2. Lancez la commande en changeant le chemin du fichier de certificat.

    Terminal window
    incus config trust add-certificate incus-ui.crt
  3. Téléchargez le certificat .pfx et installez-le sur votre machine comme indiqué.

  4. Redémarrez le navigateur et Sélectionnez le bon certificat.

Et voilà, vous avez accès à l’interface graphique Incus.

Le terminal Incus

Conclusion

Selon vos besoins et préférences, ces deux méthodes vous permettront de gérer vos serveurs Incus de manière sécurisée et efficace. Pour une administration complète, la combinaison des deux peut aussi être envisagée, optimisant à la fois le contrôle et la simplicité d’utilisation.

On pourrait même envisager les mettre derrière un reverse-proxy comme traefik, plutôt que d’exposer le flux en direct.

Plus loin