samedi 12 août 2017

Virtual Box et Vagrant

Virtual Box et Vagrant Contenu du didacticiel
  1. Vagrant et Virtual Box
  2. Installer Apache / (Utiliser Nginx et PHP)
  3. Installer MySQL / MariaDB
  4. Installer PHP / Python

Pourquoi un environnement virtuel avec Virtual Box et Vagrant?

Pourquoi on a besoin d'utiliser des environnements virtuels? Parce que la plupart d'entre nous ne possédons pas de serveurs physique juste pour débugger un logiciel. En utilisant un environnement virtuel, on n'en aura pas besoin et on l'utilisera pour débugger des logiciels.
On va utiliser Virtual Box et Vagrant pour faire un environnement virtuel. "Virtual Box" est un logiciel d'Oracle qui contrôle les systèmes d'exploitation virtuel. "Vagrant" est un logiciel open-source qui est utilisé pour la création et la configuration de systèmes d'exploitation virtuel. On va commencer par télécharger et installer Virtual Box et Vagrant.

Vérification

Quand c'est fini, on vérifiera s'ils sont installés correctement. Double clique sur "Oracle VM VirtualBox" et si ça démarre, ça marche.
Maintenant, on va vérifier Vagrant. Ouvrir la fenêtre d'invite de commandes et écrire la commande ci-dessous:
vagrant -v
Parfois, certains manuels l'écrivent ainsi:
$ vagrant -v
"$" veut dire "utilisateur normal", alors on n'a pas besoin d'écrire "$" sur l'invite de commandes. Ecrire juste "vagrant -v" pour les deux.
Et appuyer sur Entrée. Si un message comme celui-ci apparaît, ça marche. Si ce message n'apparaît pas, réinstaller "Virtual Box" et "Vagrant".

Un dossier d'environnement virtuel

On va créer un dossier pour l'OS virtuel de Linux. Créer un dossier dans C:. Le nom est "MyVM".
Et ici, créer un nouveau dossier nommé "MyCentOs".
Ensuite, aller dans le dossier précédemment créée, retourner sur la fenêtre d'invite de commande et taper la commande ci-dessous:
$ cd C:\MyVM\MyCentOs
Ecrire "cd C:\MyVM\MyCentOs", et appuyer sur Entrée et le répertoire actuel sera "C:\MyVM\MyCentOs".

Choisir et initialiser Box

On va utiliser CentOS (Linux OS), on va utiliser donc un Box appelé "bento". Le Box est un paquet du système d'exploitation virtuel. Pour utiliser bento, écrire une commande comme ci-dessous;
$ vagrant init bento/centos-7.3
"Vagrantfile" est crée dans le répertoire. C'est un fichier de configuration du système d'exploitation virtuel (CentOS version 7.3). Clic droit sur le fichier et choisir "Ouvrir avec" et choisir "Bloc-notes".
Le fichier "Vagrantfile" s'ouvre ainsi:
"#" veut dire que la ligne est un commentaire pas une commande. Donc on va supprimer un "#" pour en faire une commande, et enregistrer le fichier.
("Sublime Text" ou "VSCode" est beaucoup mieux que le bloc-notes)

Vagrant up

Quand on a tout fini, on peut commencer Vagrant avec "vagrant up". Ecrire la commande ci-dessous sur la fenêtre d'invite de commande:
$ vagrant up
Et votre Linux (Cent OS) virtuel va démarrer. Ça peut prendre un peu de temps.
Si on veut arrêter le CentOS virtuel, écrire comme-ci dessous:
$ vagrant halt
Si on veut recharger le CentOS virtuel:
$ vagrant reload

Connexion avec SSH

Pour connecter le Cent OS avec SSH, on va utiliser Teraterm qui est gratuit.
Télécharger Teraterm ici: https://ttssh2.osdn.jp/index.html.en
Mais si vous utilisez Mac ou Linux, faire ce commande pour démarrer SSH de vagrant:
$ vagrant ssh
Pour sortir SSH:
$ exit
Mais on va utiliser Teraterm avec Windows dans cette publication.
Démarrer Teraterm. Le host de votre serveur virtuel est alors "192.168.33.10"
Le nom d’utilisateur est vagrant et le mot de passe est vagrant aussi.
Ensuite, on peut se connecter au serveur virtuel avec SSH. ça semble être un serveur réel, mais en réalité c'est un serveur qui fonctionne localement.

Update

On a fini d'installer un environnement virtuel. Maintenant, on a besoin de mettre à jour. Ecrire ces deux commandes sur ton Teraterm:
$ sudo yum update
$ sudo yum upgrade

Et installer "vagrant-vbguest" qui vérifie automatiquement les différences de version du serveur virtuel et le "GuestAdditions". Fais la commande sur l'invite de commande. (pas sur Teraterm)
$ vagrant plugin install vagrant-vbguest
Pour vérifier le statut du serveur virtuel:
$ vagrant vbguest --status
Pour le mettre à jour, fais le commande:
$ vagrant vbguest
Si vous ne pouvez pas monter le fichier partagé:
Mounting failed with the error: No such device

Appendice (optionnel)

On a utilisé "bento/centos-7.3" pour l'init.
$ vagrant init bento/centos-7.3
Vous pouvez utiliser centos/7 aussi pour l'init.
$ vagrant init centos/7
centos/7 est plus stable de bento/centos-7. Mais si on utilise centos/7, on doit utiliser le "private key" (clé privé) pour l'ouverture de session. Le "private key" et ici: C:\MyVM\MyCentOs\.vagrant\machines\default\virtualbox
Ou, si vous utilisez Linux ou Mac, vous pouvez utiliser la commande de vagrant ssh.
$ vagrant ssh
Et on doit ajouter ce qui suit dans le Vagrantfile.
config.vm.synced_folder ".", "/vagrant", type: "virtualbox"
Et peut-être on doit désactiver SELinux pour utiliser PHP dans centos/7.
$ sudo yum install policycoreutils-python
$ sudo semanage permissive -a httpd_t

Aucun commentaire:

Enregistrer un commentaire