<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>Oracle VM on Zwindler's Reflection</title><link>https://blog.zwindler.fr/tags/oracle-vm/</link><description>Recent content in Oracle VM on Zwindler's Reflection</description><generator>Hugo -- gohugo.io</generator><language>fr-fr</language><copyright>Licensed under CC BY-SA 4.0</copyright><lastBuildDate>Thu, 09 Feb 2017 13:00:44 +0000</lastBuildDate><atom:link href="https://blog.zwindler.fr/tags/oracle-vm/index.xml" rel="self" type="application/rss+xml"/><item><title>Problème de pointeur souris sur la console dans OracleVM 3.4</title><link>https://blog.zwindler.fr/2017/02/09/probleme-de-pointeur-souris-sur-la-console-dans-oraclevm-3-4/</link><pubDate>Thu, 09 Feb 2017 13:00:44 +0000</pubDate><guid>https://blog.zwindler.fr/2017/02/09/probleme-de-pointeur-souris-sur-la-console-dans-oraclevm-3-4/</guid><description>&lt;img src="https://blog.zwindler.fr/2017/02/SimpleMouse.gif" alt="Featured image of post Problème de pointeur souris sur la console dans OracleVM 3.4" /&gt;&lt;h2 id="oraclevm-quelques-faiblesses-sur-la-console-comme-les-autres"&gt;OracleVM, quelques faiblesses sur la console, comme les autres&amp;hellip;
&lt;/h2&gt;&lt;p&gt;Dans la série des articles sur OracleVM avant que je n’en reparle plus (le PoC est &lt;del&gt;terminé&lt;/del&gt; enterré chez nous), voici un petit retour sur un des problèmes que j’ai pu rencontrer.&lt;/p&gt;
&lt;p&gt;Comme beaucoup de technologies de visualisation d’écrans consoles pas totalement maîtrisées (ça vaut pour les vieux ILO en Java ou autres : que de bons souvenirs), le pointeur de la souris fait littéralement n’importe quoi. Généralement c’est décalé mais pas de manière linéaire sur tout l’écran pour bien qu’on se marre.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2017/02/SimpleMouse.gif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Crédits : GameDev.net&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Le problème vient du client web VNC proposé par Oracle VM Manager et est un problème archi-connu mais pour autant pas totalement résolu.&lt;/p&gt;
&lt;h2 id="accéder-directement-au-flux-vnc"&gt;Accéder directement au flux VNC
&lt;/h2&gt;&lt;p&gt;Comme je l’explique juste avant, il arrive couramment que les technologies de virtualisations intégrées vers l’écran (virtuel) de la machine virtuelle soient mal calibrées. Mais c’est encore plus courant lorsque ce déport d’écran est réalisé avec un connexion VNC elle même affichée dans une console HTTP.&lt;/p&gt;
&lt;p&gt;Un moyen de contourner le problème de ce type de clients VNC web (et ça vaut pour d’autres outils qui utilisent les mêmes techniques) est de simplement se « brancher » sur le flux VNC sans passer par la console web. A priori sur les versions précédentes de OVMM, il était possible de se brancher directement sur le flux VNC, tout simplement parce que le serveur VNC était en écoute sur l’interface LAN.&lt;/p&gt;
&lt;p&gt;Au delà du fait que ce soit du bidouillage, cette technique n’est aujourd’hui plus permise depuis OVMM 3 et il faut donc &amp;hellip; bidouiller encore plus ! Voici ce que propose le support d’Oracle :&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;You can redirect the remote port to local using the ssh(1) command. For example, the VM guest vnc port is 5900 on Oracle VM Server and listening on localhost:&lt;/p&gt;
&lt;p&gt;# xm list -l 2|grep 59&lt;br&gt;
(location 127.0.0.1:5900)&lt;/p&gt;
&lt;p&gt;Then you can run this to redirect the port to your desktop:&lt;/p&gt;
&lt;p&gt;$ ssh -L 12345:localhost:5900 root@OVS&lt;/p&gt;
&lt;p&gt;The « 5900 » port will be redirected to « 12345 » of your local desktop, so that you can run the following command to connect the guest console:&lt;/p&gt;
&lt;p&gt;$ vncviewer localhost:12345&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;En gros, ce qu’il faut en comprendre, c’est que le serveur VNC n’est maintenant plus disponible depuis autre part que localhost et qu’on peut contourner la limitation en faisant un tunnel SSH. Rien de bien sorcier, mais est ce qu’il n’y a pas un peu plus simple ?&lt;/p&gt;
&lt;h2 id="la-vraie-solution"&gt;La vraie solution
&lt;/h2&gt;&lt;p&gt;En fait si.&lt;/p&gt;
&lt;p&gt;Au début, je n’ai même pas cherché à appliquer cette solution car elle ne s’applique normalement que pour les machines virtuelles Windows.&lt;/p&gt;
&lt;p&gt;Si vous avez un problème du type de celui que je décris sur une VM Windows, on vous conseille chez Oracle d’ajouter un paramètre à la machine virtuelle qui permet de mieux suivre les mouvements de la souris.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;Add below your config to force the device model to use absolute (tablet) coordinates:&lt;/p&gt;
&lt;p&gt;usbdevice=’tablet’&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;Mais sur le papier, la solution est bien indiquée « For Windows virtual machines (guests) ». Mon problème moi, c’était sur les machines virtuelles CentOS, indiquées comme pas impactées par ce genre de problèmes.&lt;/p&gt;
&lt;h2 id="bon-jai-bien-compris-ou-tu-veux-en-venir-comment-on-modifie-ce-paramètre-"&gt;Bon j’ai bien compris ou tu veux en venir. Comment on modifie ce paramètre ?
&lt;/h2&gt;&lt;p&gt;En fait, c’est TRES mal indiqué dans la documentation. Il s’agit de la configuration de la machine virtuelle, &lt;strong&gt;VM éteinte&lt;/strong&gt;, mais où faire la modification ? Ahah ! Mystère !&lt;/p&gt;
&lt;p&gt;La documentation fait elle état d’un fichier de configuration de la machine virtuelle mais je n’ai pas su trouver ce fichier. Cependant, et &lt;strong&gt;ce n’était pas dit dans la documentation&lt;/strong&gt; on peut modifier ce paramètre directement depuis la GUI de Oracle VM Manager !&lt;/p&gt;
&lt;p&gt;Dans les paramètres de la machine virtuelle, dans l’onglet Configuration, on trouve le paramètre &lt;strong&gt;Mouse Device Type&lt;/strong&gt;. Sur les machines Windows, comme le problème est connu, il me semble d’ailleurs que le paramètre est passé à « tablet » par défaut.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm45.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Une fois validé, on peut vérifier que cette configuration a effectivement été modifiée en affichant ce fameux &lt;strong&gt;VM Config File&lt;/strong&gt; que je ne sais pas où trouver :&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm46.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm47.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;A partir de là, la souris ne devrait plus vous faire de blagues. Même si avec Oracle VM, on ne sait jamais trop ;-) #Troll&lt;/p&gt;
&lt;h2 id="source"&gt;Source
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="https://support.oracle.com/rs?type=doc&amp;amp;id=1548825.1" target="_blank" rel="noopener"
&gt;How To Access Guest Console In OVM 3 Using VNC Without Using OVM Manager&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="https://support.oracle.com/rs?type=doc&amp;amp;id=466379.1" target="_blank" rel="noopener"
&gt;Mouse Pointer Fails to Track Cursor on a VNC / Oracle VM Manager Window&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>[Tutoriel] Installation d’Oracle VM for x86 – partie 2</title><link>https://blog.zwindler.fr/2016/10/18/tutoriel-installation-doracle-vm-for-x86-part-2/</link><pubDate>Tue, 18 Oct 2016 12:00:57 +0000</pubDate><guid>https://blog.zwindler.fr/2016/10/18/tutoriel-installation-doracle-vm-for-x86-part-2/</guid><description>&lt;img src="https://blog.zwindler.fr/2016/10/oracle-vm.webp" alt="Featured image of post [Tutoriel] Installation d’Oracle VM for x86 – partie 2" /&gt;&lt;p&gt;Cet article fait suite à l’article &lt;a class="link" href="https://blog.zwindler.fr/2016/10/11/tutoriel-installation-doracle-vm-for-x86-part-1/" &gt;&lt;strong&gt;Installation d’Oracle VM for x86 - partie 1&lt;/strong&gt;&lt;/a&gt; dans lequel j’ai introduis Oracle VM et installé la console de management Oracle VM Manager. Je vous conseille de commencer par là ;-).&lt;/p&gt;
&lt;h2 id="connexion-du-serveur-oracle-vm-avec-la-console-ovmm"&gt;Connexion du serveur Oracle VM avec la console OVMM
&lt;/h2&gt;&lt;p&gt;Maintenant que la console OVMM est opérationnelle et qu’on a pu s’y connecter, on remarque que les menus sont assez intuitifs bien qu’un peu austères !&lt;/p&gt;
&lt;p&gt;Un onglet Health donne l’état général de la plateforme, puis les autres onglets permettent de configurer les différents aspects attendus d’une console d’administration de virtualisation x86.&lt;/p&gt;
&lt;p&gt;La première étape pour nous est donc bien entendu d’ajouter dans OVMM le serveur Oracle VM préalablement installé, au même titre qu’on pourrait le faire avec un ESXi dans un vCenter.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Hormis les icônes pas forcément très parlantes, le menu de « découverte » de nouveaux serveurs est très simple. On a juste besoin de l’IP et du compte OVM Agent créé lors du déploiement de l’ISO d’installation.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm2-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;En bas de l’écran, un bandeau vous donne l’état des dernières opérations déclenchées sur le cluster.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm3-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm4-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Un bref coup d’œil permet de voir que le serveur est bien ajouté. Des informations sur sa configuration s’affichent.&lt;/p&gt;
&lt;h2 id="créer-un-groupe-de-serveurs-server-pool"&gt;Créer un groupe de serveurs « server pool »
&lt;/h2&gt;&lt;p&gt;Vous aurez peut être remarqué que votre serveur de virtualisation a été ajouté dans le groupe de serveurs « Unassigned ». Intellectuellement ça me gène, et j’ai donc voulu créer un groupe de serveurs, pour « faire propre ».&lt;/p&gt;
&lt;p&gt;Au delà de ça, c’est notamment via la création de ces groupes (clusters dans VMware) que l’on peut gérer la haute disponibilité et les clusters de machines. C’est donc plutôt important ;-).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm4-1.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Ce groupe peut se créer via l’icône située juste à droite de celle sur laquelle nous avons cliqué pour « découvrir » le serveur Oracle VM.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm20.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm21.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm22.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm23.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Cependant, lorsque j’ai tenté de créer mon groupe de serveurs, j’ai reçu l’erreur suivante :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;OVMAPI_4010E Attempt to send command: create_server_pool to server: lab01 failed.
OVMAPI_4004E Sync command failed on server: x.x.x.32.
Command: create_server_pool, Server error: org.apache.xmlrpc.XmlRpcException: &amp;lt;type &amp;#39;exceptions.Exception&amp;#39;&amp;gt;:
Invalid hostname resolution: lab01 -&amp;gt; 127.0.0.1 [Wed Jul 20 16:30:40 CEST 2016]
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Lors de l’installation automatique de l’ISO Oracle VM, le hostname lab01 a été ajouté par défaut dans le fichier &lt;strong&gt;/etc/hosts&lt;/strong&gt;. Or, ceci pose problème.&lt;/p&gt;
&lt;p&gt;Connectez vous en SSH sur le serveur et retirez le hostname (ici lab01) du fichier &lt;strong&gt;/etc/hosts&lt;/strong&gt; :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;vi /etc/hosts
127.0.0.1 lab01 localhost localhost.localdomain localhost4 localhost4.localdomain4
&lt;/code&gt;&lt;/pre&gt;&lt;h2 id="création-de-pools-de-stockage"&gt;Création de pools de stockage
&lt;/h2&gt;&lt;p&gt;La seconde opération consiste à ajouter du stockage au cluster.&lt;/p&gt;
&lt;p&gt;Avec Oracle VM, on peut utiliser du stockage local via des disques inutilisés. La procédure est détaillée à &lt;a class="link" href="https://docs.oracle.com/cd/E26996_01/E18549/html/CHDIGACB.html" target="_blank" rel="noopener"
&gt;l’adresse suivante&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;On peut également découvrir des cibles iSCSI ou éventuellement utiliser l’espace disponible sur le filesystem local. Pour ce dernier choix, l’espace ne sera cependant bien entendu uniquement visible depuis le serveur local uniquement.&lt;/p&gt;
&lt;p&gt;Pour l’exemple, j’ai créé un disque de test de 200 Go sur un NAS Windows.&lt;/p&gt;
&lt;p&gt;La procédure est la suivante. On commence par ouvrir l’onglet « Storage ». Dans SAN Servers, il n’y a encore aucun serveur déclaré. Au même titre que pour le serveur de virtualisation, il y a un bouton « Discover SAN Server ».&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm5.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm6.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm7.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;On peut déclarer un ou plusieurs hôtes, avec ou non de l’authentification. J’ai rarement vu des contextes où l’authentification CHAP (côté client ou serveur) était activée, mais je trouve ça bien en production. Pour autant, dans le cas du PoC je n’en ai pas mis.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm8.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Editer les access groups&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm12.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm11.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Et enfin, on ajoute les serveurs qui peuvent avoir accès aux périphériques de stockage. Ici lab01.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm9.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Cliquer sur Finish pour valider.&lt;/p&gt;
&lt;p&gt;Dans mon cas, juste avec la configuration de cet article, je suis tombé sur l’erreur suivante. A l’écran d’avant j’avais loupé la modification des access groups et en particulier l’onglet storage initiators. Si vous avez une erreur, c’est surement le même problème.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm10.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Le stockage nouvellement intégré apparait maintenant avec les volumes disponibles&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm13.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm15.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm14.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="créer-des-repositories-pour-stocker-des-images"&gt;Créer des repositories pour stocker des images
&lt;/h2&gt;&lt;p&gt;Une fois les périphériques de stockage déclarés auprès de vos serveurs de virtualisation, on peut maintenant créer des pools appelés repositories.&lt;/p&gt;
&lt;p&gt;L’ensemble des opérations qui suivent sont a effectuer dans l’onglet Repositories. Ces pools logiques de stockage vous permettent de stocker vos fichiers ISO, mais aussi vos templates et vos disques durs virtuels pour vos machines virtuelles. Sur VMware on parlerait de &lt;strong&gt;Datastores&lt;/strong&gt;.&lt;/p&gt;
&lt;h3 id="avec-le-disque-local"&gt;Avec le disque local
&lt;/h3&gt;&lt;p&gt;Comme indiqué précédemment, ce type de stockage aura l’inconvénient de n’être accessible que d’une seule machine. Cependant c’est le plus simple à utiliser.&lt;/p&gt;
&lt;p&gt;Cliquer sur le logo « + » pour créer un nouveau repository.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm24.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;On doit d’abord renseigner quelques informations descriptives et d’appartenance.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm26.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Enfin, on sélectionne le disque (Physical Disk) sur lequel placer le repository.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm25.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;La dernière étape consiste à ajouter les serveurs qui verront ce stockage. Dans ce cas précis, seul lab01 pourra le voir.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm27.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Après validation, le nouveau repository apparait dans la liste des repositories.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm28.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h3 id="avec-le-disque-san"&gt;Avec le disque SAN
&lt;/h3&gt;&lt;p&gt;Le principe est le même pour les disques SAN, à ceci près que celui ci pourra bien être partagé entre plusieurs serveurs d’un même cluster (pour peu que les serveurs concernés aient bien été autorisés à voir ce stockage lors de l’étape précédente).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm29.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm30.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="gestion-du-réseau"&gt;Gestion du réseau
&lt;/h2&gt;&lt;p&gt;Vous l’aurez deviné, pour la gestion du réseau, tout se passe dans l’onglet « Network » de la console OVMM.&lt;/p&gt;
&lt;p&gt;Petite subtilité, par défaut, le réseau de management ne peut pas être utilisé par les VMs. Vous ne pourrez donc pas affecter de réseaux virtuels aux machines virtuelles en l’état actuel des choses.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm16.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Dans mon cas (PoC), je ne souhaite pas créer un nouveau réseau pour me simplifier la vie, et j’ai donc ajouté « Virtual Machine » au réseau de &lt;em&gt;management&lt;/em&gt; créé par défaut lors de l’installation du serveur OracleVM.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm17.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm18.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Dans un contexte de production, on préfèrera en ajouter un nouveau et lui affecter des interfaces réseaux et des VLANs (comme on le ferait sur VMware ou RHEV).&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm19.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="créer-une-nouvelle-vm"&gt;Créer une nouvelle VM
&lt;/h2&gt;&lt;p&gt;Maintenant que les aspects stockage et réseau ont été réglés, on peut enfin créer une machine virtuelle. La documentation officielle donne &lt;a class="link" href="https://docs.oracle.com/cd/E27300_01/E27309/html/vmusg-vm-create.html" target="_blank" rel="noopener"
&gt;quelques informations utiles sur le sujet&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Le début de la création de machine virtuelle est similaire à n’importe quel outil de virtualisation.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm31.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm32.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm33.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h3 id="hvm-hvm--pv-pvm"&gt;HVM, HVM + PV, PVM
&lt;/h3&gt;&lt;p&gt;Cependant, par rapport aux autres hyperviseurs (full virtualisation vs paravirtualisation, &lt;a class="link" href="https://blog.zwindler.fr/2016/08/25/when-should-we-have-containers/" &gt;différences que j’aborde dans cet article&lt;/a&gt;), Xen et donc OracleVM apporte une subtilité dans la méthode de virtualiser : la paravirtualisation (PVM). On a le choix entre HVM, HVM + PV et PVM.&lt;/p&gt;
&lt;p&gt;En réalité il s’agit de :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;Xen HVM:&lt;/strong&gt; Hardware virtualization, or fully virtualized&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Xen HVM, PV Drivers:&lt;/strong&gt; Identical to Xen HVM, but with additional paravirtualized drivers for improved performance&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Xen PVM:&lt;/strong&gt; Paravirtualized&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;En théorie, vous aurez donc de meilleures performances lorsque vous disposerez d’un OS capable d’être paravirtualisé (mode Xen PVM) que lorsque vous aurez une HVM.&lt;/p&gt;
&lt;p&gt;Ça c’est la théorie. En fait en pratique, certains OS, même Linux, seront plus performants en HVM + PV selon Oracle. Pour plus d’informations, voir la page de &lt;a class="link" href="https://support.oracle.com/epmos/faces/DocumentDisplay?id=757719.1#aref18" target="_blank" rel="noopener"
&gt;documentation officielle qui traite du sujet&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;La liste des OS supporté pour chaque mode est disponible dans &lt;a class="link" href="http://www.oracle.com/technetwork/documentation/vm-096300.html" target="_blank" rel="noopener"
&gt;les release notes&lt;/a&gt;.&lt;/p&gt;
&lt;h3 id="créer-des-interfaces-virtuelles"&gt;Créer des interfaces virtuelles
&lt;/h3&gt;&lt;p&gt;La seconde étape du wizard permet de configurer les interfaces virtuelles et les réseaux qui y sont associés.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm34.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h3 id="ajouter-des-disques-virtuels"&gt;Ajouter des disques virtuels
&lt;/h3&gt;&lt;p&gt;L’étape d’après permet de configurer les différents périphériques qui sont associés à la VM. Dans le cas du disque dur virtuel, il faut le créer ou en réutiliser un existant.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm35.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Lorsqu’on clique sur le « + », on peut créer un nouveau disque virtuel qui sera stocké sur le repository choisi.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm36.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Enfin, on peut affecter ou non les différents périphériques éligibles à la séquence de boot et les ordonner.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm37.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;Une fois la VM créée, on peut la démarrer et ouvrir sa console.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm38.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="boot"&gt;Boot
&lt;/h2&gt;&lt;p&gt;Dans l’état actuel des choses, la VM démarre mais n’a aucun disque bootable (CD ou HDD). En effet, il faut monter un ISO sur la VM, mais pour ça on doit l’uploader dans un premier temps sur un des repositories précédemment créés.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm39.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm40.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;A priori, dans le menu d’import du repository, on ne peut uploader &lt;strong&gt;que&lt;/strong&gt; des ISO &lt;strong&gt;depuis un partage web HTTP&lt;/strong&gt;. Une solution alternative probable est que l’on peut simplement aller déposer le fichier en SSH mais je trouve que clairement il manque une fonctionnalité à la console d’upload en directe depuis un navigateur !&lt;/p&gt;
&lt;p&gt;Une fois qu’on dispose d’un ISO pour booter notre VM, on peut éditer la machine virtuelle et y ajouter l’ISO.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm41.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm42.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm43.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;p&gt;On redémarre la machine virtuelle qui boote sur l’ISO comme souhaité.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/oraclevm44-2.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="sources"&gt;Sources
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="http://docs.oracle.com/cd/E64076_01/" target="_blank" rel="noopener"
&gt;docs.oracle.com/cd/E64076_01/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://www.oracle.com/technetwork/server-storage/vm/downloads/index.html" target="_blank" rel="noopener"
&gt;www.oracle.com/technetwork/server-storage/vm/downloads/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://docs.oracle.com/cd/E64076_01/E64078/html/index.html" target="_blank" rel="noopener"
&gt;docs.oracle.com/cd/E64076_01/E64078/html/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://docs.oracle.com/cd/E64076_01/E64078/html/vmiug-server-installation.html" target="_blank" rel="noopener"
&gt;docs.oracle.com/cd/E64076_01/E64078/html/vmiug-server-installation.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>[Tutoriel] Installation d’Oracle VM for x86 – partie 1</title><link>https://blog.zwindler.fr/2016/10/11/tutoriel-installation-doracle-vm-for-x86-part-1/</link><pubDate>Tue, 11 Oct 2016 12:00:23 +0000</pubDate><guid>https://blog.zwindler.fr/2016/10/11/tutoriel-installation-doracle-vm-for-x86-part-1/</guid><description>&lt;img src="https://blog.zwindler.fr/2016/10/oracle-vm.webp" alt="Featured image of post [Tutoriel] Installation d’Oracle VM for x86 – partie 1" /&gt;&lt;h2 id="présentation-doracle-vm"&gt;Présentation d’Oracle VM
&lt;/h2&gt;&lt;p&gt;Dans le cadre d’un très sérieux &lt;strong&gt;&lt;em&gt;Dossier de Choix de Solution d’Infrastructure&lt;/em&gt;&lt;/strong&gt;, j’ai été amené à étudier la plateforme de virtualisation proposée par Oracle : &lt;strong&gt;Oracle VM&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Dans la lignée d’&lt;strong&gt;Oracle Unbreakable Linux&lt;/strong&gt; qui est une copie de RHEL modifiée (les sources étant disponibles sur Internet car open source), Oracle tente depuis plusieurs années de pénétrer le marché de la virtualisation de serveur, sans jamais vraiment parvenir à percer. La faute à une concurrence trop forte de VMware et Hyper-V, trop loin en tête en adoption dans les entreprises et un retard fonctionnel conséquent, surtout dans les suites logicielles périphériques (internes ou tierces) de SDS, SDN, sauvegarde, VDI, cloud, etc etc.&lt;/p&gt;
&lt;p&gt;Pourtant sur le papier, Oracle VM a de bons arguments pour séduire les administrateurs : un noyau robuste (RHEL + Xen), sans coût de licence et avec un coût de support (souscription comme chez Redhat) en 24×7 à 500$ / serveur / an en prix public, très en deçà de la concurrence moyenne !&lt;/p&gt;
&lt;p&gt;Cerise sur le gâteau, &lt;strong&gt;contrairement à l’ensemble des autres solutions de virtualisation x86&lt;/strong&gt;, Oracle permet de ne licencier que les vCPU réellement affectées aux VMs Oracle VM sur lesquelles sont installés des produits Oracle. Et c’est probablement là que le bat blesse. Dans bon nombre d’entreprises, Oracle est devenu synonyme d’audit et de changement de règles de licencing au petit bonheur la chance&amp;hellip;&lt;/p&gt;
&lt;p&gt;Ce sont quand même de sérieux atouts et je ne voyais pas passer outre un PoC pour me faire une idée du produit.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Info :&lt;/strong&gt; Pour plus de lisibilité j’ai scindé l’article en 2 parties. Celle ci concerne les prérequis pour l’ensemble des composants et l’installation de la console (non trivial) et la seconde se concentrera sur la configuration de notre premier serveur (réseau, stockage, vms).&lt;/p&gt;
&lt;h2 id="prérequis"&gt;Prérequis
&lt;/h2&gt;&lt;h3 id="oracle-vm-virtualisation"&gt;Oracle VM (virtualisation)
&lt;/h3&gt;&lt;p&gt;Pour la partie virtualisation, Oracle VM se base sur RHEL et Xen. Et ces deux composants sont peu gourmands et assez flexibles en terme de compatibilité matérielle. Vous n’aurez aucun mal à trouver un vieux serveur pour faire un PoC comme je l’ai fais.&lt;/p&gt;
&lt;p&gt;On trouve assez facilement sur le site d’Oracle les valeurs minimum pour Oracle VM 3.4. A noter quand même que les liens qui remontent dans Google pointent parfois sur des versions antérieures. Attention donc.&lt;/p&gt;
&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;
Items
&lt;/td&gt;
&lt;td&gt;
Minimum Value
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Memory
&lt;/td&gt;
&lt;td&gt;
1.0 GB
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Processor Type
&lt;/td&gt;
&lt;td&gt;
64 bit i686 P4
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Processor Speed
&lt;/td&gt;
&lt;td&gt;
1.3 GHz x 2
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Available Hard Disk Space
&lt;/td&gt;
&lt;td&gt;
6 GB
&lt;/td&gt;
&lt;/tr&gt;
&lt;/table&gt;
&lt;h3 id="oracle-vm-manager"&gt;Oracle VM Manager
&lt;/h3&gt;&lt;p&gt;Pour ce qui est de la console de management Oracle VM Manager, les prérequis sont par contre plus élevés, mais c’est malheureusement une habitude avec les consoles d’administration de plateforme de virtualisation (les premiers vCenter / appliances Linux plantaient dès qu’on passait sous les 8 Go de RAM).&lt;/p&gt;
&lt;table&gt;
&lt;tr&gt;
&lt;td&gt;
Items
&lt;/td&gt;
&lt;td&gt;
Minimum Value
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Memory
&lt;/td&gt;
&lt;td&gt;
8.0 GB
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Processor Type
&lt;/td&gt;
&lt;td&gt;
64 bit
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Processor Speed
&lt;/td&gt;
&lt;td&gt;
1.83 GHz x 2
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Swap Space
&lt;/td&gt;
&lt;td&gt;
2.1 GB
&lt;/td&gt;
&lt;/tr&gt;
&lt;tr&gt;
&lt;td&gt;
Hard Disk Space
&lt;/td&gt;
&lt;td&gt;
5.5 GB in /u01
3 GB in /tmp
400 MB in /var
300 MB in /usr
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;Vous trouverez la liste des OS compatible sur le site d’Oracle au même endroit que l’ISO pour Oracle VM Manager :&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Oracle Linux 5 Update 5 64-bit&lt;/li&gt;
&lt;li&gt;Oracle Linux 6 64-bit&lt;/li&gt;
&lt;li&gt;Oracle Linux 7 64-bit&lt;/li&gt;
&lt;li&gt;Red Hat Enterprise Linux 5 Update 5 64-bit&lt;/li&gt;
&lt;li&gt;Red Hat Enterprise Linux 6 64-bit&lt;/li&gt;
&lt;li&gt;Red Hat Enterprise Linux 7 64-bit&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A noter, sans surprise, il peut s’agir soit d’une machine virtuelle soit d’un serveur physique.&lt;/p&gt;
&lt;h2 id="installation"&gt;Installation
&lt;/h2&gt;&lt;h3 id="configuration-doracle-vm-manager"&gt;Configuration d’Oracle VM Manager
&lt;/h3&gt;&lt;p&gt;Dans mon cas, j’ai installé OVMM sur un RHEL 7.&lt;/p&gt;
&lt;p&gt;Il est nécessaire d’avoir (au moins localement) une résolution du nom de la machine qui héberge l’oracle VM Manager. Idéalement, il est préférable d’avoir une résolution de nom par DNS donc, mais à minima, vous devez avoir une entrée similaire au retour de la commande hostname dans votre fichier /etc/hosts :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;# hostname
ovmm01.example.org
# vi /etc/hosts
[…]
192.168.100.10 ovmm01.example.org ovmm01
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;La documentation d’Oracle vous indique que selon votre contexte, vous pouvez soit désactiver complètement votre firewall soit ajouter les règles correspondantes. L’exemple donné dans la documentation (iptables) ne fonctionne pas avec firewalld installé par défaut sur RHEL 7. Voici les bonnes commandes :&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;firewall-cmd --get-active-zones
public
interfaces: eno16780032
firewall-cmd --permanent --zone=public --add-port=7002/tcpfirewall-cmd --permanent --zone=public --add-port=10000/tcp
firewall-cmd --permanent --zone=public --add-port=123/udp
firewall-cmd --reload
firewall-cmd --zone=public --list-ports
123/udp 10000/tcp 7002/tcp
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Ou si vous n’avez peur de rien (et que c’est un serveur de test)&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;systemctl stop firewalld
systemctl disabled firewalld
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Pour une bonne introduction avec les commandes firewalld je vous conseille &lt;a class="link" href="https://www.certdepot.net/rhel7-get-started-firewalld/" target="_blank" rel="noopener"
&gt;le post suivant&lt;/a&gt;&lt;/p&gt;
&lt;h3 id="prérequis-complémentaires"&gt;Prérequis complémentaires
&lt;/h3&gt;&lt;p&gt;Monter le fichier ISO sur le serveur sur lequel sera installé Oracle VM Manager. Oracle a mis au point un script qui permet de paramétrer les prérequis (utilisateur oracle, limites, /u01, …).&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;mount /dev/cdrom /mnt
cd /mnt
./createOracle.sh
Missing required package, Oracle VM Manager requires &amp;#39;iptables-services&amp;#39; to be installed, you can use &amp;#39;yum install iptables-services&amp;#39; to install it.
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;La encore, petit oubli d’Oracle ! Le script createOracle.sh utilise iptables et pas firewalld. Il ne fonctionne donc pas sur RHEL7 alors que cet OS est censé être supporté ! On ne peut pas utiliser ce script, il faut faire les modifications à la main (heureusement simples) !&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;mkdir /u01
chmod 755 /u01
groupadd dba
groupadd -g 54321 oinstall
useradd -u 54321 -g dba -G oinstall -d /home/oracle oracle
/bin/chown oracle:dba /home/oracle
vi /etc/security/limits.conf
oracle hard nofile 8192
oracle soft nofile 8192
oracle soft nproc 4096
oracle hard nproc 4096
oracle soft core unlimited
oracle hard core unlimited
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Une fois les modifications réalisées, on peut lancer l’installeur à proprement parler.&lt;/p&gt;
&lt;h3 id="installation-du-vm-manager"&gt;Installation du VM Manager
&lt;/h3&gt;&lt;p&gt;Lancer l’installeur présent sur l’ISO.&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;[root@ovmm01 mnt]# ./runInstaller.sh
Oracle VM Manager Release 3.4.1 Installer
Oracle VM Manager Installer log file:
/var/log/ovmm/ovm-manager-3-install-2016-07-20-150727.log
Please select an installation type:
1: Install
2: Upgrade
3: Uninstall
4: Help
Select Number (1-4): 1
Verifying installation prerequisites ...
Conflicts when MySQL install. Oracle VM Manager requires &amp;#39;mariadb-libs&amp;#39; to be uninstalled, you can use &amp;#39;yum remove mariadb-libs&amp;#39; to uninstall it.
Configuration verification failed ...
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Dans mon cas la première installation n’a pas fonctionné. Pour une raison que j’ignore, mon installation contenait déjà mariadb-libs dans une version entrant en conflit avec le MySQL embarqué par OVMM. Etrangement ils préfèrent qu’on utilise MySQL plutôt que MariaDB ;-). Je l’ai donc désinstallée comme demandé, mais attention aux dépendances qui sont désinstallées dans la foulée !&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;yum remove mariadb-libs
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Et on recommence&amp;hellip;&lt;/p&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Verifying installation prerequisites ...
Starting production with local database installation ...
One password is used for all users created and used during the installation.
Enter a password for all logins used during the installation:
Invalid password.
Passwords need to be between 8 and 16 characters in length.
Passwords must contain at least 1 lower case and 1 upper case letter.
Passwords must contain at least 1 numeric value.
&lt;/code&gt;&lt;/pre&gt;&lt;blockquote&gt;
&lt;p&gt;Tu pouvais pas me le dire avant ? ;-)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre tabindex="0"&gt;&lt;code&gt;Enter a password for all logins used during the installation:
Enter a password for all logins used during the installation (confirm):
********
Please enter your fully qualified domain name, e.g. ovs123.us.oracle.com, (or IP address) of your management server for SSL certification generation, more than one IP address are detected: 192.168.20.94 192.168.122.1 [ovmm01.example.org]: ovmm01.example.org
Verifying configuration ...
Start installing Oracle VM Manager:
1: Continue
2: Abort
Select Number (1-2): 1
Step 1 of 7 : Database Software ...
Installing Database Software...
[...]
Oracle VM Manager UI:
https://ovmm01.example.org:7002/ovm/console
&lt;/code&gt;&lt;/pre&gt;&lt;p&gt;Vous pouvez maintenant vous connecter à l’URL donnée en fin d’installation.&lt;/p&gt;
&lt;p&gt;&lt;img src="https://blog.zwindler.fr/2016/10/Oracle-VM-manager_login.avif"
loading="lazy"
&gt;&lt;/p&gt;
&lt;h2 id="sources"&gt;Sources
&lt;/h2&gt;&lt;ul&gt;
&lt;li&gt;&lt;a class="link" href="http://docs.oracle.com/cd/E64076_01/" target="_blank" rel="noopener"
&gt;docs.oracle.com/cd/E64076_01/&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://www.oracle.com/technetwork/server-storage/vm/downloads/index.html" target="_blank" rel="noopener"
&gt;www.oracle.com/technetwork/server-storage/vm/downloads/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://docs.oracle.com/cd/E64076_01/E64078/html/index.html" target="_blank" rel="noopener"
&gt;docs.oracle.com/cd/E64076_01/E64078/html/index.html&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class="link" href="http://docs.oracle.com/cd/E64076_01/E64078/html/vmiug-server-installation.html" target="_blank" rel="noopener"
&gt;docs.oracle.com/cd/E64076_01/E64078/html/vmiug-server-installation.html&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;</description></item></channel></rss>