-
Qu'est-ce que Cloud-Init ?
-
Fonctionnement de Cloud-Init
-
Comment créer un modèle de machine virtuelle à l'aide de Cloud-Init ?
-
Sauvegarder une machine virtuelle Proxmox avec la solution Vinchin
-
Proxmox Cloud-init FAQs
-
Résumé
Dans un environnement virtualisé, l'automatisation de la configuration des machines virtuelles est essentielle pour améliorer l'efficacité. Proxmox VE est une plateforme de virtualisation open source populaire, tandis que Cloud-Init est un outil utilisé pour l'initialisation des instances cloud. En combinant PVE et Cloud-Init, nous pouvons créer et configurer rapidement des images de machines virtuelles. Cet article explique en détail comment utiliser Cloud-Init sur PVE pour construire vos propres images.
Qu'est-ce que Cloud-Init ?
Cloud-Init est un ensemble d'outils standard dans l'industrie, conçu pour uniformiser les processus d'initialisation et d'installation sur différentes distributions de systèmes d'exploitation dans les serveurs cloud. Cloud-Init s'exécute à l'intérieur de la machine invitée et applique des configurations personnalisées à l'invité pendant l'initialisation. Imaginez que vous soyez un fournisseur de services cloud devant initialiser des milliers de machines virtuelles chaque jour pour des clients, utilisant éventuellement différents systèmes d'exploitation, en leur attribuant diverses adresses IP, clés SSH, noms d'hôte, etc., selon les besoins des clients. Comment gérez-vous cela ? Cloud-Init a été créé précisément pour résoudre ce problème.
Développé à l'origine par Canonical, la société à l'origine d'Ubuntu, Cloud-Init prend désormais en charge la plupart des distributions Linux et les systèmes FreeBSD. Aujourd'hui, la majorité des plateformes de cloud public utilisent Cloud-Init pour la configuration du système, et il prend également en charge certains environnements de cloud privé (KVM, OpenStack, LXD, etc.), devenant ainsi effectivement la norme de facto.
Cela nous ramène à Proxmox. Étant donné que Proxmox est utilisé pour déployer et gérer des machines virtuelles, il convient naturellement aux scénarios Cloud-Init et peut même être considéré comme un composant essentiel.
Lors de la demande de ressources informatiques sur des clouds publics tels que AWS ou Google Cloud, les fournisseurs de services exigent généralement que les utilisateurs sélectionnent une image système et effectuent quelques configurations de base (nom d'hôte, clé SSH, etc.), puis créent le système en se basant sur cela. Cloud-Init est né dans ce contexte afin d'automatiser l'injection des données utilisateur dans les instances système.
L'objectif principal de Cloud-Init est de définir des options de configuration indépendantes du système d'exploitation, telles que le nom d'hôte, la configuration réseau, etc.
Fonctionnalités de Cloud-Init :
Définir la langue par défaut
Définir le nom d'hôte
Générer et configurer des clés privées SSH
Configurer des points de montage temporaires
Fonctionnement de Cloud-Init
Cloud-Init s'exécute au premier démarrage d'une instance et la configure en fonction des métadonnées et des données utilisateur fournies par l'utilisateur. Ces données sont généralement au format YAML et peuvent inclure ce qui suit :
Métadonnées : Décrit les informations de base sur l'instance, telles que l'ID de l'instance, le nom d'hôte, etc.
Données utilisateur : Définit les configurations spécifiques et les scripts à exécuter lors du démarrage de l'instance.
Comment créer un modèle de machine virtuelle à l'aide de Cloud-Init ?
1. Téléchargez l'image cloud appropriée pour votre système souhaité (Proxmox VE prend en charge deux types d'images cloud : nocloud v1 et configdrive v2). Ici, nous utiliserons Debian 11 comme exemple. Vous pouvez la télécharger directement à l'aide de « wget » dans PVE ou la télécharger ailleurs puis la transférer via SFTP.
2. Créez une machine virtuelle et assurez-vous que le contrôleur SCSI est défini sur SCSI VirtIO. Vous n'avez pas besoin de créer un disque dur ; si vous en créez un, détachez-le et supprimez-le.
3. Ajoutez un périphérique CloudInit dans les paramètres matériels de la machine virtuelle que vous avez créée.
4. Utilisez SSH ou des outils comme Xftp pour transférer le fichier image vers le serveur PVE (passez cette étape si vous avez utilisé « wget »). Ensuite, utilisez la commande suivante pour importer l'image disque dans la machine virtuelle. Après l'importation réussie, un disque inutilisé apparaîtra dans la section matériel de la VM dans le panneau PVE.
qm importdisk 900 debian-11-nocloud-amd64.qcow2 local-lvm
5. Double-cliquez sur le disque inutilisé pour l'activer, sélectionnez SCSI comme type de bus/périphérique et définissez-le comme premier périphérique de démarrage dans Options → Boot Order.
6. Modifiez les paramètres Cloud-Init et renseignez la configuration souhaitée. Cloud-Init utilisera le nom de la machine virtuelle comme nom d'hôte.
Utilisateur : Dans le système de modèle Debian 11, l'utilisateur par défaut est « debian ». Si vous configurez la connexion root ou d'autres utilisateurs, saisissez le nom d'utilisateur ici. Si ce champ est laissé vide, l'utilisateur par défaut sera utilisé.
Mot de passe : Saisissez le mot de passe pour l'utilisateur spécifié ci-dessus. Il est recommandé de définir un mot de passe ici ; sinon, vous risquez de ne pas pouvoir vous connecter au système via la console.
Domaine DNS : Vous pouvez saisir le nom de domaine pour la machine virtuelle. Si ce champ est vide, il hérite du domaine de l'hôte PVE.
Serveur DNS : Si la machine virtuelle utilise un serveur DNS différent, saisissez-le ici. Sinon, elle hérite des paramètres DNS de l'hôte PVE.
Clé publique SSH : La clé publique pour la connexion SSH à la machine virtuelle. Permet la connexion SSH basée sur des clés.
Configuration IP : Si ce champ est laissé vide, la machine virtuelle utilisera DHCP pour obtenir des adresses IPv4 et IPv6. Vous pouvez définir ici une adresse IP spécifique, un masque de sous-réseau et une passerelle pour la machine virtuelle.
7. Redimensionnez le disque et démarrez la machine virtuelle. Le premier démarrage peut prendre un certain temps. Si cela semble bloqué, essayez de redémarrer.
8. Si la configuration Cloud-Init n'est pas prise en compte, connectez-vous à la machine virtuelle via la console PVE et exécutez « cloud-init -v » pour vérifier si Cloud-Init est installé. Si aucune sortie n'apparaît, installez-le à l'aide des commandes suivantes :
# CentOS
yum install cloud-init -y
# Debian
apt install cloud-init -y
9. Procédez ensuite à la configuration initiale du système Debian. Une fois que tout est configuré, cliquez avec le bouton droit sur la machine virtuelle et enregistrez-la en tant que modèle. Vous pouvez alors l'utiliser pour créer rapidement de nouvelles machines virtuelles.
Sauvegarder une machine virtuelle Proxmox avec la solution Vinchin
Vinchin Backup & Recovery offre une suite complète de fonctionnalités avancées pour protéger les environnements Proxmox VE, garantissant la sécurité et l'intégrité des données grâce au respect de la règle de sauvegarde 3-2-1.
Ses fonctionnalités comprennent des sauvegardes automatiques de machines virtuelles, une sauvegarde sans agent et des options sans réseau local, ainsi qu'une copie hors site pour une reprise après sinistre solide. La récupération instantanée et les techniques efficaces de réduction des données, combinées à des options d'archivage dans le cloud, améliorent encore la gestion des données. En outre, la solution intègre des mécanismes de chiffrement des données et de protection contre les rançongiciels pour une sécurité renforcée. Elle permet également une migration V2V fluide entre les plateformes virtuelles prises en charge, garantissant flexibilité et facilité de transfert des données.
Il vous suffit de 4 étapes pour sauvegarder les machines virtuelles Proxmox VE :
1. Sélectionnez l'objet de sauvegarde.

2. Sélectionnez la destination de la sauvegarde.

3. Configurer les stratégies de sauvegarde.

4. Vérifiez et soumettez la demande d'emploi.

Des milliers d'entreprises dans le monde entier ont déjà adopté Vinchin Backup & Recovery pour répondre à leurs besoins de protection des données. Vous pouvez commencer à découvrir ses fonctionnalités étendues grâce à un essai complet de 60 jours, entièrement équipé de toutes les fonctions. Contactez-nous avec les détails de votre configuration Proxmox VE, et vous recevrez une solution personnalisée qui s'intègrera parfaitement à votre environnement informatique.
Proxmox Cloud-init FAQs
1. Le fichier hôte /etc/hosts sera réinitialisé après le redémarrage. Comment résoudre ce problème ?
Modifier le contenu du fichier /etc/cloud/cloud.cfg et commenter ou supprimer update_etc_hosts
2. Où la configuration Cloud-Init est-elle stockée dans Proxmox ?
La configuration générée est stockée sous forme d'une image similaire à un ISO montée sur la machine virtuelle en tant que lecteur de CD-ROM (généralement IDE2 ou SATA0). Le fichier est généré à partir des paramètres /etc/pve/nodes/{
Résumé
Cloud-Init est un outil puissant et flexible qui simplifie considérablement le processus d'initialisation et de configuration des instances cloud. En définissant préalablement des fichiers de configuration, les utilisateurs peuvent automatiser diverses tâches d'initialisation, améliorant ainsi l'efficacité et la cohérence du déploiement. Que ce soit dans des environnements de cloud public ou privé, Cloud-Init est un outil de gestion de configuration indispensable.
Partager sur :