~~SLIDESHOW~~ ====== SE - Partage des ressources et virtualisation ====== ===== Avant-propos ===== L'accès aux ressources est une problématique importante en informatique. La prise en charge des accès présente des enjeux importants : * d'une part au point de vue de la sécurité, point de plus en plus sensible, * et également en ce qui concerne les accès concurrents qui peuvent être à l'origine de situation incohérentes ou de blocages ... ===== Bases et virtualisation ===== La **virtualisation** est un mécanisme permettant de créer un ordinateur virtuel (**invité** ou **guest**) sur un ordinateur **hôte** (**host**) réel. En utilisant les ressources matérielles de l'ordinateur (système hôte), le logiciel de virtualisation permet la création d'une ou plusieurs machines virtuelles dans lesquels s'installent d'autres systèmes d'exploitation (systèmes invités). ===== Virtualisation - Eléments d'offre ===== * **VMWARE** ( Vsphere) historiquement un des premiers acteurs - puissant et complexe * **KVM** : le standard en environnement Linux et dans le //cloud// * **VirtualBox** : généraliste et très adaptée aux poste de travail - gratuit - adapté à l'enseignement * **HyperV** (Microsoft) : intégré aux offres serveur Microsoft * **conteneurs** (LXC, Docker ...) : solutions de virtualisation légère et efficaces ===== Les raisons du succès ===== * économique : une machine héberge plusieurs serveurs virtuels * écologique : on diminue l'empreinte carbone (conso. électr.) * moins de place dans le datacenter * déploiement, installation et exploitation simplifiés * grande souplesse d'utilisation * environnement de test faciles à mettre en oeuvre * pour l'enseignement : bac à sable permettant les tests sans conséquence fâcheuse pour la machine hôte ===== Point d'étape ===== * pas de cloud sans virtualisation * les machines physiques utilisées directement sont de plus en plus rares * **VPS** (Virtual Private Server) chez OVH à partir de 2,99€ par mois ... * une légère perte en performances ... * très adapté au maquettage et environnement de test * permet de simuler également des réseaux * ===== Virtualbox ===== * solution rachetée par Sun puis par Oracle * cf http://virtualbox.org * Universel (presque) : fonctionne sur Windows, Linux et MAC/OS * efficace au niveau du poste de travail - Gratuit * Compatible avec les format de machines virtuelles Vmware * permet d'exporter/importer des fichiers de machines virtuelles au format **.ova** * permet les **clichés** ou //snapshot// ===== Virtualbox - Interface ===== {{:diu-eil:virtualbox.png|600}} ===== Virtualbox - Installation ===== * dernière version au 2021-06-02 : **VirtualBox 6.1.22** * choisir la version adaptée (Windows, Linux, ...). cf https://virtualbox.org * installer également le **VirtualBox Extension Pack** * https://download.virtualbox.org/virtualbox/6.1.22/Oracle_VM_VirtualBox_Extension_Pack-6.1.22.vbox-extpack ===== Virtualbox - Création d'une machine virtuelle ===== * **prérequis** : image ISO d'installation (Debian, Windows, ...) * donner un **nom** à la machine, choisir le **type**, la capacité **mémoire**, l'espace **disque** * le **type d'interface** réseau (**pont/bridge** ou **NAT**) * **Remarque** * **pont** : adressage sur le réseau de l'hôte (serveur, ...) * **NAT** : adressage local (client) * lors du premier lancement, choisir l'image ISO à utiliser * procéder à l'installation comme à l'habitude * durée env. 15-20 min pour Debian en mode texte, sinon ... ===== Virtualbox - Import d'une machine au format ova ===== * **prérequis** : fichier **.ova** obtenu par **export** d'une machine virtuelle * cliquer sur **Importer** et choisir le fichier **ova** * donner un nouveau nom à la machine (:!: conflits !), adapter les paramètres et choisir de réinitialiser les adresses MAC. * le **type d'interface** réseau (**pont/bridge** ou **NAT**) * avant le premier lancement, adapter éventuellement le type d'interface * durée : 2 à 5 min ===== Virtualbox - Remarques diverses ===== * par défaut, VirtualBox ne permet pas le copier-coller dans la console * pour le faire, installer les **Additions Invité** situées sur le CD accessible dans le menu **Périphériques** * les **Addition invité** permettent également d'utiliser des pilotes spécifiques pour la carte graphique et la carte réseau : fortement recommandé en mode graphique * en mode texte, le copier-coller dans la console est plus pratique en se connectant sur la machine distante par SSH * pour ce faire, celle-ci doit disposer d'une interface publique accessible avec le port 22 ouvert (interface en **pont** ou bien **NAT** avec redirection de port ..) cf Périphériques/Redirection de port ===== Virtualbox - Installation d'un hôte - 1 ===== * à partir de l'image iso (**netinst** * cf https://cdimage.debian.org/debian-cd/current/amd64/iso-cd/debian-10.9.0-amd64-netinst.iso * répondre au questionnement * peut être relativement long si interface graphique (1100 paquets +) * nécessité l'accès internet pour les mises à jour et les installations de paquets => relativement long >= 30 min ===== Virtualbox - Installation d'un hôte - 2 ===== * à partir d'une image **iso adaptée créée sur le site fai-project.org** * cf https://fai-project.org/FAIme/# * lien sur l'image ISO disponible une journée (~ 500 Mo pour Debian en mode texte, 1,2Go pour Debian graphique XFCE) * choisir le mode **avancé**, puis répondre au questionnement * debian buster, clavier, partition , type d'interface, paquets supplémentaires, ...) * génère une image **iso** adaptée à télécharger pour démarrer ensuite * rapide (entre 3 et 10 minutes, pas de questionnement), ne nécessité pas d'accès internet) * fonctionne en virtuel avec VirtualBox et en physique * cf http://sio.lyc-lecastel.fr/diu-eil/faime-base.iso ===== Virtualbox - Installation d'un hôte - 2bis ===== * à la fin de l'installation au moyen de l'image iso provenant du site **faime** * éteindre la machine, désactiver l'image iso de démarrage, puis démarrer * ouvrir une session **root** puis * changer le nom de la machine : ''echo machine > /etc/hostname'' * éditer le ficher **/etc/hosts**, avec **nano** par exemple : 127.0.0.1 localhost 127.0.1.1 machine 127.0.0.1 localhost ip6-localhost ip6-loopback ===== Virtualbox - Installation d'un hôte - 3 ===== * à partir d'un fichier **ova** * le plus rapide * permet la personnalisation en adaptant le fichier **ova** à récupérer depuis un serveur ...