Chapitre I Virtualisation
Transcription
Chapitre I Virtualisation
Maintenance et gestion approfondie des Systèmes d’exploitation Master 2 SILI Année universitaire 2016-2017 David Genest Systèmes d’exploitation – Master 2 SILI – 2016-2017 1 Chapitre I Virtualisation 1 Présentation 2 VirtualBox 3 Configuration d’une machine virtuelle Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 2 Présentation Chapitre I Virtualisation 1 Présentation 2 VirtualBox 3 Configuration d’une machine virtuelle Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation Virtualisation 3 Présentation Action de faire tourner un système d’exploitation à l’intérieur d’un autre système d’exploitation. Windows dans Linux, Linux dans macOS, etc. Tester une application multi-plateforme sans redémarrer sa machine. Différent du dual-boot. Linux dans Linux, Windows dans Windows, etc. Utiliser une autre version d’un système à des fins de test. De plus en plus utilisé sur des serveurs : Remplacer de nombreux serveurs peu chargés... par peu de serveurs contenant des machines virtuelles. Répartition de charge facilitée, Migration matérielle facilitée. Sécurité (par rapport à plusieurs logiciels sur le même hôte) Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 4 Vocabulaire Présentation Hôte (host) Système d’exploitation physiquement installé sur l’ordinateur, dans lequel sera utilisé le logiciel de virtualisation. Machine virtuelle Ordinateur virtuel créé par le logiciel de virtualisation. Invité (guest) Système d’exploitation installé à l’intérieur de la machine virtuelle. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 5 Présentation Hyperviseur de type 2 La machine virtuelle disposera de ressources matérielles : Processeur : éventuellement le même que l’hôte, mais pas forcément. Disques : disques de l’hôte, ou (mieux) fichiers présents sur l’hôte vus comme des disques physiques de la machine virtuelle. Carte réseau : gérée par le logiciel de virtualisation au sein d’un réseau virtuel. ... Logiciels VMware Fusion, VMware Workstation, Microsoft VirtualPC, Qemu, Oracle VirtualBox Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 6 VirtualBox Chapitre I Virtualisation 1 Présentation 2 VirtualBox 3 Configuration d’une machine virtuelle Systèmes d’exploitation – Master 2 SILI – 2016-2017 VirtualBox Virtualisation 7 VirtualBox https://www.virtualbox.org/ Logiciel libre (GPL) Système hôte Architecture Intel/AMD Systèmes Linux, Windows, MacOS, Solaris. Système invité La plupart des SE disponibles sur architecture Intel : Linux, Windows, DOS, Unices, etc. https://www.virtualbox.org/wiki/Guest_OSes Manipulation Installer la dernière version de VirtualBox pour votre système https://www.virtualbox.org/wiki/Linux_Downloads Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 8 VirtualBox VirtualBox Créer une machine virtuelle Attribuer une quantité de mémoire à la machine Dépend du système invité, et de la quantité de mémoire du système hôte. Attribuer des disques à la machine Des fichiers du système hôte sont utilisés comme disques de la machine virtuelle. Des fichiers ISO sont utilisés comme disques optiques de la machine virtuelle. Partager des fichiers En utilisant les extensions invité dans le système invité. Se connecter au système invité depuis la machine hôte Par SSH en redirigeant un port de la machine hôte sur le port 22 de la machine virtuelle. Systèmes d’exploitation – Master 2 SILI – 2016-2017 VirtualBox Virtualisation 9 VirtualBox Créer une machine virtuelle Manipulation 1 2 3 4 5 6 Machine / Nouvelle Quantité de mémoire de la machine virtuelle : ne pas dépasser la moitié de la quantité de mémoire de la machine hôte. Disque d’amorçage : Nouveau disque VDI dynamiquement alloué de 8 Go (par exemple, selon le système). Modifier la configuration pour installer le système : Amorçage depuis le CD (Système/Carte-mère), Choisir l’image ISO d’installation sur le CD (Stockage/Contrôleur IDE), Pas de son. Démarrer la machine virtuelle et lancer l’installation du système. Une fois l’installation terminée, configurer la machine pour un amorçage depuis le disque dur. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 10 Configuration d’une machine virtuelle Chapitre I Virtualisation 1 Présentation 2 VirtualBox 3 Configuration d’une machine virtuelle Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 11 Configuration d’une machine virtuelle VirtualBox Configurer une machine virtuelle / Additions invité Partage de fichiers, meilleure gestion de l’affichage, meilleure gestion du clavier/souris. Manipulation 1 Périphériques / Insérer l’image CD des Additions Invité. 2 Apparition d’un CD-Rom dans le système invité 3 Exécution du programme d’installation (différent selon le système invité) Invité Linux : exécuter depuis une console en tant que super-utilisateur. Et s’assurer que l’installation se passe correctement, elle peut requérir certains paquets non installés par défaut. Sous distributions Debian, installer build-essential. 4 Autoriser l’utilisateur du système invité a accéder aux répertoires partagés sudo addgroup utilisateur vboxsf (pour système invité Unix) Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 12 Configuration d’une machine virtuelle VirtualBox Configurer une machine virtuelle / Additions invité Manipulation 5 6 7 8 9 Éteindre le système invité. Configurer le partage de fichiers dans l’interface VirtualBox (Créer un dossier dans votre home directory et le partager dans VirtualBox : Dossiers partagés, choisir un nom de partage et montage automatique) Démarrer la machine virtuelle. Remarquer les différences de gestion de l’affichage (redimensionnement, mode intégré). Vérifier l’accès aux répertoires partagés (dans /media). Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 13 Configuration d’une machine virtuelle VirtualBox Configurer une machine virtuelle / Connexion depuis l’hôte Se connecter par SSH (ou HTTP, FTP, SMB, etc.) sur le système invité depuis le système hôte. Système invité sans interface graphique. Transfert de fichiers. Absence des additions invité. Principe. Diriger un port du système hôte vers un port d’une des machines virtuelles (situées sur un réseau virtuel géré par le logiciel de virtualisation) Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 14 Configuration d’une machine virtuelle VirtualBox Configurer une machine virtuelle / Connexion depuis l’hôte Manipulation 1 2 3 4 5 6 Récupérer l’IP de la machine virtuelle sur le réseau virtuel : Afficher le journal, rechercher DHCP. Configuration / Réseau / Avancé / Redirection des ports Exemple : Nom : SSH, IP Hôte : 127.0.0.1, Port hôte : 9999, IP Invité : 10.0.2.15, Port invité : 22. S’assurer que le démon est installé et configuré sur l’invité (paquet openssh-server pour SSH). Tester depuis l’hôte : ssh [email protected] -p 9999 Utiliser -Y pour rediriger le DISPLAY. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 15 Configuration d’une machine virtuelle VirtualBox Automatiser la connexion SSH Se connecter depuis une machine A sur une machine B sans demande du mot de passe. Manipulation 1 2 3 S’assurer que les comptes utilisateur des deux machines disposent d’un répertoire .ssh. Si ce n’est pas le cas, générer un couple de clés sur les machines ne disposant pas de .ssh par ssh-keygen Dans le répertoire de la machine B recevant les connexions, créer un fichier authorized_keys (644) contenant (ou rajouter à la fin de ce fichier) le contenu de .ssh/id_rsa.pub de la machine A initiant les connexions. Ou utiliser ssh-copy-id depuis la machine A. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 16 Configuration d’une machine virtuelle VirtualBox Instantanés Un instantané mémorise l’état d’exécution de la machine virtuelle (processus) et l’état des disques. Exemple Prendre un instantané avant de faire une mise à jour du système ou l’installation de paquets à des fins de tests. . . Et revenir à l’instantané, ou supprimer l’instantané après usage. Les disques partagés et disques « hors instantanés » (cf. Fichier / Gestionnaire de média / Clic droit / Modifier) ne sont pas concernés par les instantanés. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 17 Configuration d’une machine virtuelle VirtualBox Manipulation 1 2 3 4 5 Prendre un instantané de la machine virtuelle. Installer apache2 et libapache2-mod-php sur le système invité. Rediriger sur la machine hôte le port 8080 pour accéder au serveur apache de la machine virtuelle. Vérifier que le serveur apache est accessible depuis le système hôte (Apache2 Ubuntu Default Page) Créer dans le répertoire html de l’utilisateur un fichier index.php faisant un simple appel à phpinfo (http://php.net/manual/fr/function.phpinfo.php) Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 18 Configuration d’une machine virtuelle VirtualBox Manipulation 6 Autoriser un accès à ce répertoire html par http à partir de l’URL systèmeinvité /userhtml. Pour cela, créer un alias (http://httpd.apache.org/docs/current/mod/mod_alias.html) dans un fichier /etc/apache2/conf-available/userhtml.conf et activer cette configuration en créant un lien sur ce fichier dans /etc/apache2/conf-enabled (prenez exemple sur les autres configurations, ou utiliser a2enconf). N’oubliez pas de redémarrer apache (service apache2 reload). Ca ne marche pas ? Consultez le journal d’apache : /var/log/apache2/error.log. Problème client denied by server configuration ? Consultez /etc/apache2/apache2.conf aux alentours de la ligne <Directory /> et modifiez userhtml.conf. Vous pouvez revenir en arrière à tout moment en restaurant l’instantané. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 19 Configuration d’une machine virtuelle VirtualBox Manipulation 7 8 Installer le serveur mysql sur la machine virtuelle (mysql-server). Sur la machine virtuelle, créer un compte et une base : mysql -u root -p create user monutil identified by ’mdpasse ’; create database mabase ; grant all on mabase.* to monutil ; 9 10 Faire une redirection de port vers la machine virtuelle afin qu’une connexion depuis l’hôte par le client mysql (sans préciser le port) soit redirigé vers le mysql de la machine virtuelle. (Fichier de configuration de mysql : /etc/mysql/my.cnf). Installer phpmyadmin sur la machine virtuelle et vérifier l’accès par l’utilisateur précédemment créé. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 20 Configuration d’une machine virtuelle VirtualBox Manipulation 11 12 13 14 15 16 Prendre un instantané de la machine virtuelle. Vérifier (mount) qu’aucun système de gestion de fichiers externe à la machine virtuelle n’est monté. Démonter (umount) les systèmes externes. Vérifier. Ouvrir une session ssh depuis l’hôte sur la machine virtuelle. Lancer la commande top. Vérifier que vous êtes bien sur la machine virtuelle. Vérifier encore. Vérifier une dernière fois et exécuter sudo rm -rf / Passer outre l’avertissement. Redémarrer la machine virtuelle. Restaurer l’instantané (une fois restauré il peut être supprimé), et redémarrer. Systèmes d’exploitation – Master 2 SILI – 2016-2017 Virtualisation 21