La virtualisation est l'une des technologies les plus utilisées. Fedora Linux utilise des images Cloud Base pour créer des machines virtuelles (VM) à usage général, mais il existe de nombreuses façons de configurer des images Cloud Base. Récemment, l'outil de ligne de commande virt-install pour le provisionnement des machines virtuelles a ajouté la prise en charge de cloud-init , il peut donc désormais être utilisé pour configurer et exécuter une image cloud localement.
Explorez le cloud open source
- Comprendre les nuages
- Cours en ligne gratuit :Développer des applications cloud natives avec des architectures de microservices
- Qu'est-ce que le cloud hybride ?
- eBook :Élaborer une stratégie de cloud hybride
- Qu'est-ce que Kubernetes ?
- Comprendre l'informatique en périphérie
- Derniers articles pour les architectes informatiques
Cet article explique comment configurer une instance cloud Fedora de base sur un système nu. Les mêmes étapes peuvent être utilisées avec n'importe quelle image brute ou Qcow2 Cloud Base.
Qu'est-ce que --cloud-init ?
Le virt-install la commande crée un KVM , Xen ou LXC invité utilisant libvirt . Le --cloud-init
L'option utilise un fichier local (appelé source de données nocloud ) afin que vous n'ayez pas besoin d'une connexion réseau pour créer une image. Le nocloud dérive les données utilisateur et les métadonnées de l'invité à partir d'un système de fichiers iso9660 (un fichier .iso
fichier) lors du premier démarrage. Lorsque vous utilisez cette option, virt-install génère un mot de passe aléatoire (et temporaire) pour le compte utilisateur root, fournit une console série pour que vous puissiez vous connecter et modifier votre mot de passe, puis désactive le --cloud-init
option pour les démarrages suivants.
Configurer une image Fedora Cloud Base
Tout d'abord, téléchargez une image Fedora Cloud Base (pour OpenStack).
Ensuite, installez le virt-install commande :
$ sudo dnf install virt-install
Une fois virt-install est installé et que l'image Fedora Cloud Base est téléchargée, créez un petit fichier YAML nommé cloudinit-user-data.yaml
pour contenir quelques lignes de configuration que virt-install utilisera.
#cloud-config
password: 'r00t'
chpasswd: { expire: false }
Cette simple configuration cloud définit le mot de passe pour le fedora par défaut utilisateur. Si vous souhaitez utiliser un mot de passe qui expire, vous pouvez le configurer pour qu'il expire après la connexion.
Créez et démarrez la VM :
$ virt-install --name local-cloud18012709 \
--memory 2000 --noreboot \
--os-variant detect=on,name=fedora-unknown \
--cloud-init user-data="/home/r3zr/cloudinit-user-data.yaml" \
--disk=size=10,backing_store="/home/r3zr/Downloads/Fedora-Cloud-Base-33-1.2.x86_64.qcow2"
Dans cet exemple, local-cloud18012709
est le nom de la machine virtuelle, la RAM est définie sur 2 000 Mio, la taille du disque (le disque dur virtuel) est définie sur 10 Go et --cloud-init
et backing_store
contiennent le chemin absolu vers le fichier de configuration YAML que vous avez créé et l'image Qcow2 que vous avez téléchargée.
Se connecter
Une fois l'image créée, vous pouvez vous connecter avec le nom d'utilisateur fedora et le mot de passe défini dans le fichier YAML (dans mon exemple, c'est r00t , mais vous avez peut-être utilisé quelque chose de différent). Modifiez votre mot de passe une fois que vous vous êtes connecté pour la première fois.
Pour éteindre votre machine virtuelle, exécutez le sudo poweroff
ou appuyez sur Ctrl +] sur votre clavier.
Démarrer, arrêter et tuer des VM
Le virsh
La commande est utilisée pour démarrer, arrêter et tuer les machines virtuelles.
Pour démarrer une VM en cours d'exécution :
$ virsh start <vm-name>
Pour arrêter toute VM en cours d'exécution :
$ virsh shutdown <vm-name>
Pour répertorier toutes les VM en cours d'exécution :
$ virsh list
Pour détruire les VM :
$ virsh destroy <vm-name>
Rapide et facile
Le virt-install commande combinée avec le --cloud-init
permet de créer rapidement et facilement des images prêtes pour le cloud sans se soucier de savoir si vous disposez déjà d'un cloud sur lequel les exécuter. Que vous vous prépariez à un déploiement majeur ou que vous en appreniez simplement sur les conteneurs, donnez virt-install --cloud-init
un essai.
Avez-vous un outil préféré pour votre travail dans le cloud ? Parlez-nous d'eux dans les commentaires.