Sitedetout - Tutoriels informatiques

Créer une machine virtuelle à l’aide de Vagrant

Dans le précédent article, nous avons vu ensemble comment créer une machine virtuelle de type CentOS8 sur VMware. Aujourd’hui, je vous propose grâce à Vagrant une manière beaucoup plus rapide mais pas que…

Vagrant sert à automatiser la création et la configuration d’une machine virtuelle. Cet outil permet de mettre à disposition des environnements de développements en quelques minutes et sans effort. Il permet également de partager le même environnement entre collègues.

Vagrant utilise par défaut l’outil de virtualisation VirtualBox mais supporte aussi d’autres outils comme Hyper-V et VMware (nécessite malheureusement une licence) …

Dans cet article, nous allons créer une machine virtuelle Vagrant de type CentOS 8 sur VirtualBox.

Prérequis

Dans cet article, nous aurons besoin des éléments suivants :

Une fois les deux outils installés, vérifiez que Vagrant peut être lancé en ligne de commandes.

Microsoft Windows [version 10.0.18362.592]
(c) 2019 Microsoft Corporation. Tous droits réservés.

[C:\Users\user]vagrant -v
Vagrant 2.2.7

Ceci fait, nous allons pouvoir commencer à créer des machines virtuelles.

Vagrant Box

Pour cela, nous aurons besoin d’une boxe Vagrant. Une boxe est le format packagé d’un environnement Vagrant. C’est une machine virtuelle préconfigurée / une image template.

Vous pouvez créer votre propre boxe Vagrant à partir d’une machine virtuelle que vous possédez. Cette dernière peut contenir un environnement Php, Java ou autre ainsi que des outils comme Git, Jenkins, Docker ou encore des serveurs comme Apache, Nginx, Tomcat… Tout ceci sera disponible dans les machines virtuelles créées à partir de cette boxe.

Pour créer une boxe, vous pouvez suivre le tutoriel officiel de Vagrant : https://www.vagrantup.com/docs/boxes/base.html

Aujourd’hui, nous allons utiliser une des différentes boxes que Vagrant met à disposition sur son site : https://app.vagrantup.com/boxes/search

Création d’une machine virtuelle Vagrant

Tout d’abord, commençons par créer un répertoire pour notre machine Vagrant.

[D:\Virtual machines]mkdir vagrantCentos8
[D:\Virtual machines]cd vagrantCentos8

Ensuite, nous allons utiliser la commande suivante pour télécharger la boxe de CentOS 8

D:\Virtual machines\vagrantCentos8>vagrant box add --insecure centos/8
==> box: Loading metadata for box 'centos/8'
    box: URL: https://vagrantcloud.com/centos/8
This box can work with multiple providers! The providers that it
can work with are listed below. Please review the list and choose
the provider you will be working with.

1) libvirt
2) virtualbox

Enter your choice: 2
==> box: Adding box 'centos/8' (v1905.1) for provider: virtualbox
    box: Downloading: https://vagrantcloud.com/centos/boxes/8/versions/1905.1/providers/virtualbox.box
...
==> box: Successfully added box 'centos/8' (v1905.1) for 'virtualbox'!

Une fois la Boxe téléchargée, nous allons initier un fichier Vagrantfile moyennant la commande vagrant init

[D:\Virtual machines\vagrantCentos8]vagrant init centos/8
A `Vagrantfile` has been placed in this directory. You are now
ready to `vagrant up` your first virtual environment! Please read
the comments in the Vagrantfile as well as documentation on
`vagrantup.com` for more information on using Vagrant.

A quoi sert le fichier Vagrantfile ?

Le fichier Vagrantfile contient la description de la machine virtuelle et la manière avec laquelle elle sera créée et configurée. Ce fichier est prévu a être partagé facilement et poussé dans un gestionnaire de versions tel SVN ou GIT permettant ainsi aux différents développeurs d’un projet de le récupérer et avoir un environnement d’exécution identique à l’aide d’une simple commande.

Vous pouvez ouvrir le fichier Vagrantfile précédemment créé et s’inspirer des commentaires pour adapter sa configuration selon vos besoins de RAM, CPU, @IP, fichiers partagés ou commandes post création…

Dès lors, il ne vous reste qu’utiliser la commande vagrant up pour créer la machine virtuelle :

[D:\Virtual machines\vagrantCentos8]vagrant up
Bringing machine 'default' up with 'virtualbox' provider...
==> default: Importing base box 'centos/8'...
==> default: Matching MAC address for NAT networking...
==> default: Checking if box 'centos/8' version '1905.1' is up to date...
==> default: Setting the name of the VM: vagrantCentos8_default_1582497128359_55729
==> default: Clearing any previously set network interfaces...
==> default: Preparing network interfaces based on configuration...
    default: Adapter 1: nat
==> default: Forwarding ports...
    default: 22 (guest) => 2222 (host) (adapter 1)
…
    default: This is not an error message; everything may continue to work properly,
    default: in which case you may ignore this message.
==> default: Rsyncing folder: /cygdrive/d/Virtual machines/vagrantCentos8/ => /vagrant

En vérifiant sous VirtualBox, on voit bien que la machine a bien été créée.

image virtualbox

Un utilisateur nommé vagrant dont le mot de passe est vagrant peut être utilisé pour se connecter à la machine. Ce dernier dispose des droits sudo et peut donc passer en root (sudo su -).

ssh centos image

Quelques commandes utiles :

Démarrer ou redémarrer la machine virtuelle : vagrant up
Etat de la machine virtuelle : vagrant status
Arrêt de la machine virtuelle : vagrant halt
Accéder à la machine virtuelle en ssh : vagrant ssh
Supprimer la machine virtuelle : vagrant destroy -f (N’oublier pas d’arrêter d’abord la machine)
Liste des commandes vagrant : vagrant list-commands


Laisser un commentaire

Votre adresse e-mail ne sera pas publiée.

Menu Title
Chargement...

Powered by sitedetout.com