Utiliser VMWare ESXi sur un Mac
Transcription
Utiliser VMWare ESXi sur un Mac
Utiliser VMWare ESXi sur un Mac Extrait du MosX.org http://www.mosx.org Utiliser VMWare ESXi sur un Mac - Dossiers - Date de mise en ligne : mardi 24 fvrier 2015 Description : Il y a bien longtemps que je nai posté darticles sur le site. En fait, je ne trouvais pas de sujet suffisamment intéressant pour le faire. Mais, grâce à Yoann Gini, et surtout à son excellent blog, je me suis penché sur un sujet très intéressant : la virtualisation. Je connaissais la théorie des gros serveurs de virtualisation, je connaissais également les solutions de virtualisation, mais je n'avais pas cherché plus loin depuis longtemps, n'en ayant pas le besoin, et depuis le temps, ça a évolué. MosX.org Copyright © MosX.org Page 1/23 Utiliser VMWare ESXi sur un Mac Le besoin Ce qui m'a poussé à approfondir le sujet est tout bête. J'ai au travail 3 XServes, 2 qui tournent et un en spare. J'en suis très satisfait, ils sont blindés en RAM et j'ai des SSDs dans les racks. Mais… étant des early-2008, je ne peux aller plus haut que Lion Server. Si Snow Leopard reste à mon avis toujours le meilleur des systèmes serveur d'Apple, il faut bien se résoudre sur un point, le fait qu'il ait 6 ans n'est pas rassurant. Quelques solutions ne tournent carrément plus dessus et Lion devient de plus en plus un pré-requis minimum pour beaucoup de logiciels. D'un autre côté, Lion Server est certainement un des pires OS serveurs d'Apple, tout simplement parce qu'il n'est pas fini, vraiment pas. En fait Lion Server est devenu correct… quand il est devenu Mountain Lion Server. Sur mes XServe, j'ai également deux machines virtuelles pour faire tourner des Windows Server avec VMWare Fusion. Mes deux serveurs sont largement sous-utilisés, mais malgré cela, une des deux VMs Windows (le serveur Compta) n'est pas au top niveau perfs. Fusion, c'est bien, mais ça occupe un max de resources inutilement. Le blog de Yoann, et spécialement son article sur la virtualisation m'ont donné matière à réfléchir. L'idée serait donc au final de monter un hyperviseur sur chaque XServe et d'héberger mes OSX Servers en VM, avec les machines Windows. L'avantage est indéniablement une question de perf pour les machines Windows, mais aussi (ce n'est qu'une partie infime des avantages) : • • la possibilité de faire tourner un OSX Server plus récent que Lion Server la possibilité de migrer plus facilement les services, en pouvant mettre le nouveau serveur en parallèle de l'ancien… sur la même machine. • la possibilité éventuelle de séparer les services sur des VMs différentes • voir même la possibilité d'installer un Mac OS X non serveur sur le XServe (l'un des serveurs ne sert actuellement qu'à héberger des serveurs 4D et n'a pas besoin d'être un OS serveur pour ça, mais là, il y a une question de licence complexe que j'aborderais peut-être plus tard) • faciliter la migration des serveurs d'une machine à l'autre en cas de panne matériel. Le terrain de jeu Mais comme je voulais prendre mon temps pour tester, casser, refaire, recasser tout ça, j'ai pris un terrain de jeu beaucoup plus simple : • • • un Mac Mini G4 sous Mac OS X Server 10.4 (mosx.org) un Mac Mini relativement récent (mid 2011) sur lequel je voulais installer Yosemite Server. un mini NAS (ReadyNAS 102, suffisant pour des tests) J'ai bien un autre Mini G4 en spare au cas ou celui qui héberge le site tombe en rade, mais bon, 10.4, c'est vieux, et Copyright © MosX.org Page 2/23 Utiliser VMWare ESXi sur un Mac un serveur datant de 2005, j'avais honte. J'avais des licences pour tous les OS Serveurs à partir du 10.6. L'idée est donc de tout basculer sur le Mac Mini 2011, doté d'un SSD et d'un HD, et de migrer progressivement vers Yosemite Server. Après avoir migré du G4 vers le Intel en passant à un Snow Leopard Server, j'étais près à commencer les tests. Les outils Pour ceux qui ne connaissent pas, je conseille grandement la formation en ligne gratuite qu'offre vmware sur la virtualisation et les différents composants de leur suite logicielle : Virtualisation de Data Centers VMware - Principes de base Techniquement cela n'apporte pas grand chose, mais cela va permettre de connaître les termes utilisés et de dégrossir le sujet. Ce que vous avez besoin pour virtualiser vos serveurs : • • un hyperviseur : ESXi (appelé aussi VMware vSphere Hypervisor) une clé USB Et c'est tout… ou presque ! Pour être honnête, quelques autres choses sont plus qu'utiles : • • VMWare Fusion Pro : simplifiera grandement la tâche de transfert des machines virtuelles sur le serveur ESXi une VM sous Windows (7 minimum) pour y installer vSphere Client vCenter n'est pas une obligation, surtout si vous avez peu de serveurs et peu de machines virtuelles. Cela va compliquer les choses pour les sauvegardes, la gestion à chaud des VMs, le monitoring, etc. Mais nous verrons dans un autre article que l'on peut faire beaucoup sans vCenter, en utilisant uniquement ce que l'on a dans la version gratuite de ESXi. Un point sur les questions de licences Apple Pour ce qui est de la virtualisation sur Mac, les avis divergent quant à ce qu'on a le droit de faire selon ce qu'on comprend du contrat de licence d'Apple. Pour une étude plus poussé de ce qui est autorisé ou non, spécialement si on parle d'utilisation d'un hyperviseur. Je vous invite à consulter l'article de Yoann qui donne une explication détaillée du contrat de licence. Voici la position qui semble être la moins « risquée » : • Sur une machine Apple, vous pouvez faire tourner jusqu'à DEUX machines virtuelles Apple (Mac OS X) simultanément (à condition que vous ayez les licences pour) et autant de machines virtuelles sous d'autres OS que vous voulez. • Les VMs sous Mac OS X non serveur ne sont sensées être utilisées que pour développer, tester des logiciels, ou pour un usage personnel. Copyright © MosX.org Page 3/23 Utiliser VMWare ESXi sur un Mac Installation de ESXi La première chose à faire est de télécharger l'image iso de ESXi. Cela se fait à partir du site de VMWare. Aujourd'hui, la version 5.5 est la dernière disponible : Télécharger VMware vSphere Hypervisor (ESXi). Vous vous retrouvez avec un fichier image dont il va falloir copier le contenu sur une clé USB. Malheureusement cela ne marche pas avec « Utilitaire de Disque ». Une clé de 1Go suffit amplement, plus n'est bien entendu pas gênant. Le processus de création de la clé de démarrage s'est énormément simplifié avec les dernières versions de ESXi... Sauf si vous tentez de suivre la procédure standard de création d'une clé USB bootable... :) La première chose à faire est de préparer la clé. On peut le faire avec « Utilitaire de Disque », mais c'est encore plus simple avec le terminal. Commençons donc par identifier l'identifiant de périphérique de la clé USB : diskutil list Dans mon exemple, ma clé est /dev/disk2. La commande pour effacer et préparer la clé est simplement : diskutil eraseDisk FAT32 ESXI MBR /dev/diskX (attention à mettre le X correspondant à votre clé USB !!!) Copyright © MosX.org Page 4/23 Utiliser VMWare ESXi sur un Mac Ensuite double-cliquez sur l'image ISO que vous avez téléchargé du site VMWare et copiez via le Finder l'ensemble des fichiers sur la clé nouvellement formatée. Après cela, la clé et prête et vous pouvez la brancher au Mac sur lequel vous voulez installer ESXi et démarrer dessus en appuyant sur ALT au démarrage et en choisissant le volume « EFI Boot ». ESXi démarre et après un certain temps va commencer l'installation. Ici, je fais le test sur un MacBook Pro contenant 2 disques, et je vais installer ESXi sur le deuxième disque. Copyright © MosX.org Page 5/23 Utiliser VMWare ESXi sur un Mac Copyright © MosX.org Page 6/23 Utiliser VMWare ESXi sur un Mac Attention, le disque que vous sélectionnez sera entièrement effacé, vous ne pouvez pas sélectionner un seul volume du disque, c'est tout ou rien. Choisissez le type de clavier et un mot de passe root. Une fois installé, il faut débrancher la clé avant de presser Entrée pour redémarrer. (Note : Si vous gardez un volume Mac OS X sur votre Mac, celui-ci va démarrer par défaut sur le volume Mac. Il n'est pas possible de configurer le démarrage sur ESXi via les préférences systèmes. Vous pouvez alors installer un utilitaire de démarrage comme rEFInd qui vous permet de gérer plus finement le démarrage de votre Mac.) Configuration de base de ESXi Une fois redémarré sur ESXi, vous arrivez sur l'interface suivante : Copyright © MosX.org Page 7/23 Utiliser VMWare ESXi sur un Mac Nous allons faire les paramétrages de base, une fois ceux-ci effectués, vous n'aurez quasiment plus jamais à revenir sur la console du serveur. Pressez la touche F2 pour accéder au paramètres. Vous pouvez ici changer les paramètres réseau de votre serveur. Il est également important d'activer le shell et SSH , surtout si vous restez avec la version gratuite de ESXi. C'est en effet moins utile avec vSphere puisque cela vous donne accès à des outils performants pour gérer les serveur. Copyright © MosX.org Page 8/23 Utiliser VMWare ESXi sur un Mac Installation de vSphere Client Il est nécessaire d'avoir un Windows (7 minimum) pour pouvoir installer vSphere Client. Vous trouverez la dernière version du client pour Windows bien caché sur le site de VMWare : vSphere Client Download L'installation se fait ensuite sans aucune configuration particulière. Copyright © MosX.org Page 9/23 Utiliser VMWare ESXi sur un Mac Vous pouvez ignorer pour l'instant l'alerte sur la licence d'évaluation. Création d'une machine virtuelle sur votre serveur ESXi. La manière la plus simple de créer une machine virtuelle Mac OS X sur votre serveur ESXi, est de d'abord la créer... Dans VMWare Fusion Pro... :) Une fois cela fait, le point à savoir est que la version gratuite de ESXi ne permet pas de gérer avec vSphere Client les machines virtuelles de type 10 ou supérieur. En fait, depuis la dernière mise à jour, on peut effectivement gérer un minimum de ces machines, mais certaines fonctionnalités sont désactivées. Le problème est que par défaut, les nouvelles VMs créées par Fusion sont de type 10 ou même 11. Il est donc préférable de changer le type de version de la VM avant de la transférer sur ESXi. Cela se fait relativement simplement : • Dans les préférences de la VM, il faut simplement aller dans l'onglet Compatibilité, options avancées, et de sélectionner la version 9. Copyright © MosX.org Page 10/23 Utiliser VMWare ESXi sur un Mac J'en vois au fond de la salle qui s'agitent... Oui, en effet, dans la plupart des cas, il va vous mettre une erreur, disant que la machine n'accepte pas les disques SATA, ou que la version du système n'accepte pas ce type de machine ou... Rien de plus simple, il faut tout simplement corriger la machine. Le cas peut être différent pour d'autres systèmes, mais pour Mac OS X, les points suivants devraient suffir : • changer le type des disques de SATA en SCSI Copyright © MosX.org Page 11/23 Utiliser VMWare ESXi sur un Mac • • de la même manière, changer le type du lecteur CD/DVD en SCSI changer le type de système d'exploitation pour qu'il soit accepté pour la version que vous souhaitez (OS X 10.8 pour la version 9) IMPORTANT : Assurez-vous que la case Fractionner en plusieurs fichiers dans les paramètres des différents disques est décochée. Sans cela, le transfert se fera sans erreur apparente, mais le disque transféré sera vide ! Ensuite, il faut se connecter au serveur ESXi avec Fusion Pro. Dans le menu Fichier=>Se Connecter au serveur... Copyright © MosX.org Page 12/23 Utiliser VMWare ESXi sur un Mac Et dans la liste des Machines virtuelles, faire glisser la VM de vos VMs locales vers le serveur ESXi. Il demande alors de choisir le « disque » de destination (datastore), une fois le choix fait, le transfert se lance. Copyright © MosX.org Page 13/23 Utiliser VMWare ESXi sur un Mac Migration d'une machine existante vers une VM Pour une VM OSX, si la machine à transférer n'est pas la machine sur laquelle vous avez installé ESXi, la manière la plus simple est d'installer un système vierge et d'utiliser l'assistant de migration via le réseau. Dans les autres cas, cela peut se compliquer un peu :) Voici une manière que vous pouvez utiliser pour transférer une machine sous OSX vers votre serveur ESXi si vous ne souhaitez ou ne pouvez pas utiliser l'Assistant. L'inconvénient est qu'elle nécessite sur votre Mac de travail le double d'espace disque que la taille de la machine à transférer. (Il existe une manière plus simple mais je ne l'ai pas encore testé. Je détaillerai plus une fois que je l'aurai mise en pratique : il faut créer une image disque du/des volumes à migrer comme dans le point 7 ci-dessous ; ensuite, copier cette/ces images disque sur un serveur HTTP et notez Copyright © MosX.org Page 14/23 Utiliser VMWare ESXi sur un Mac son/leur URLs ; enfin, créez votre VM et lancez là, mais au lieu de lancer l'installation, allez dans Utilitaire de disque et faites une restauration en mettant l'URL en source de la restauration.) 1) Si vous n'avez pas encore de VM OSX, créez en local une machine virtuelle Mac OS X avec VMWare Fusion Pro et installez le système. Nommons là OSX-Temp. Cette machine ne servira que pour des transferts, vous pouvez donc lui allouer un disque relativement petit (15 à 20 Go devraient suffire). 2) Créez une autre VM (qui sera celle sur laquelle nous allons transférer votre système existant), nommons là par exemple MyOLD_OSX. Mais ne lancez aucune installation. Vérifiez que la taille du disque virtuel que vous attribuez à la machine est suffisamment gros. 3) Éteignez OSX-Temp, puis allez dans les paramètres de la VM et ajoutez un périphérique de type Disque dur existant . 4) Choisissez le disque de la VM que nous venons de créer (MyOLD_OSX) et faites bien attention à cocher la case Partager ce disque virtuel avec la machine qui l'a créé. Copyright © MosX.org Page 15/23 Utiliser VMWare ESXi sur un Mac 5) Redémarrez OSX-Temp et vous devriez voir un nouveau disque, vierge, sur le bureau. C'est celui de MyOLD_OSX. 6) Assurez vous que dans OSX-Temp, vous avez accès en partage à au moins un dossier de votre Mac local. Copyright © MosX.org Page 16/23 Utiliser VMWare ESXi sur un Mac 7) Faites une image disque du volume du Mac à migrer (avec Carbon Copy Cloner par exemple) et copiez la dans le dossier partagé en (6). 8) Assurez vous que vous avez bien accès à l'image disque dans OSX-Temp. Double-cliquez dessus pour monter le volume dans OSX-Temp. 9) Avec Carbon Copy Cloner (ou autre utilitaire de copie), transférez le contenu de l'image disque vers le disque partagé de MyOLD_OSX 10) Eteignez OSX-Temp et retirez le disque dans les préférences (sans l'effacer). 11) Démarrez MyOLD-OSX et vérifiez qu'elle tourne correctement. 12) Éteignez la VM et transférez là sur le serveur ESXi. Il y a aussi des manières de faire avec VMWare Converter installé sur Windows 7, mais ce n'est pas forcément plus simple… ATTENTION : Gestion de l'énergie ! Il y a un point important à ne pas oublier, c'est la gestion de l'énergie. Copyright © MosX.org Page 17/23 Utiliser VMWare ESXi sur un Mac Cela se fait à deux niveaux. Tout d'abord, au sein des VMs. Soyez sûr de ne pas activer les options de réduction de l'énergie dans les VMs. Il n'est pas conseillé de mettre en veille les disque, et encore moins la machine virtuelle en elle-même au bout d'un temps d'inactivité. L'extinction de l'écran après inactivité est également inutile et peut parfois poser des soucis quand on veut prendre la main sur la VM. Mais il y a un point très important : l'économiseur d'écran ! La plupart des économiseurs d'écran sont très gourmands en resources et vont donc utiliser complètement inutilement les resources de l'hôte ESXi pour afficher un économiseur d'écran qui ne sera vu par personne. Personnellement, j'ai laissé l'économiseur Message / Nom de l'ordinateur qui ne fait qu'afficher le nom de la machine. Celui-là ne semble pas utiliser trop de resources. Attention également, si vous avez un utilisateur connecté en permanence sur la VM, à ne pas avoir un fond d'écran qui change régulièrement, cela utilise aussi des resources inutilement. Si vous n'avez aucun utilisateur auto-connecté, les préférences de l'économiseur d'écran sont prises depuis… le premier compte admin créé !!! (en tout cas sur Yosemite) Ensuite, la gestion de l'énergie de la machine faisant tourner ESXi. Si vous souhaitez pouvoir définir certaines options, comme le fait de redémarrer après une coupure de courant, ou de programmer un démarrage automatique, voir même pour les Xserve si vous voulez configurer l'accès LOM… Il vous FAUT démarrer sous Mac OS X. Prévoyez donc un système Mac OS X démarrable (sur clé USB ou disque externe) vous permettant de configurer ces options. Copyright © MosX.org Page 18/23 Utiliser VMWare ESXi sur un Mac Acheter (ou pas) une licence de vSphere... Je vais vous montrer dans d'autres articles que, moyennant quelques scripts shell , l'utilisation de la licence gratuite de ESXi est suffisante pour un usage basique. Nous allons donc commencer par saisir dans ESXi le numéro de série pour la licence gratuite qui est disponible après avoir téléchargé l'image d'installation. Vous pourrez ensuite acheter une licence si vous avez besoin de plus que ce que la licence gratuite vous propose. (là encore le suivi de la formation/présentation des différents produits vmware est un plus non négligeable pour comprendre ce dont vous pourriez avoir besoin) Pour saisir le numéro de série, vous avez 2 moyens : • • Utiliser vSphere Client Utiliser la ligne de commande. Dans le premier cas, c'est relativement simple, il faut juste avoir vSphere Client installé et disponible. Il faut alors aller dans la partie Configuration de l'hôte, puis dans Fonctions autorisées . Et enfin cliquer sur le lien Modifier… en haut à droite. Copyright © MosX.org Page 19/23 Utiliser VMWare ESXi sur un Mac Pour ceux qui refusent d'installer vSphere Client sur un Windows, votre salut se trouve dans SSH et la ligne de commande : vim-cmd vimsvc/license --show |head -15 vous permettra de voir l'état de votre licence actuelle. Copyright © MosX.org Page 20/23 Utiliser VMWare ESXi sur un Mac vim-cmd vimsvc/license --set XXXXX-XXXXX-XXXXX-XXXXX-XXXXX |head -15 vous permettra de saisir votre numéro de licence et d'apercevoir le résultat de la commande. Parlons un peu des licences payante maintenant. Le type de licence que vous allez prendre va dépendre du nombre d'hôtes ESXi que vous souhaitez gérer et des fonctions que vous souhaitez avoir. ESXi licence des gratuite vSphere Essential Kit vSphere Essential Kit Plus Comparaison offres de base ESXi Virtualisation non centralisée et avec outils de Présentati Virtualisation avec gestion centralisée Virtualisation avec gestion centralisée et continuité d'activité. -Licence 1 an (renouvelable) : 280Euros -Licence 1 an (renouvelable) : 2275Euros Licence illimité à partir de 545Euros Licence illimité à partir de 4510Euros gestion limités on Prix 0Euros Copyright © MosX.org Page 21/23 Utiliser VMWare ESXi sur un Mac Produit vSphere Hypervisor ESXi Ce kit comprend des licences pour 3 serveurs physiques (2 Ce kit comprend des licences pour 3 serveurs physiques (2 processeurs chacun max) : - Gratuit Avantage s pas de limitation du nombre d'hôtes• - Pas de gestion centralisée Inconvéni ents • vSphere Hypervisor (ESXi) • vCenter Operations Manager Foundation • vCenter Operations Manager Foundation • vCenter Server Essentials • vCenter Server Essentials • VMware Data Protection • VMware High Availability • VMware vMotion • VMware Replication • VMware vShield Endpoint - accès à une gestion centralisée par vCenter accès à une gestion centralisée par vCenter • accès à vSphere Web Client accès à vSphere Web Client • accès à vMotion et autres solutions de gestion dynamique des VMs - vMotion non inclu • • vSphere Hypervisor (ESXi) - Prix accessible • • processeurs chacun max) : • Gestion par CLI ou WebClient sous• pas de gestion dynamique et transparente des VMs - prix • limité à 3 hôtes ESXi limité à 3 hôtes ESXi Windows Pour les autres versions de vSphere (Standard, Entreprise, Entreprise Plus, etc.) le tarif est donné par processeur et propose quelques options plus poussées de gestion dynamique et des outils de surveillance. La licence 1 CPU de vSphere Standard est ainsi disponible à partir de 1200Euros, soit 2400Euros pour un Xserve bi-processeur. Ou encore 6000Euros pour des licences Standard pour 5 Mac Mini . Un point à prendre en compte toutefois, plutôt important. Quelle que soit le type de licence que vous achetez, seules les machines officiellement validées seront supportées, et ceci n'inclut pas les Mac Mini…. Donc, même en payant 6000Euros de licence pour pouvoir faire tourner vSphere/vCenter sur vos 5 Mac Mini, en cas de soucis, vous n'aurez pas accès au support. Au jour d'aujourd'hui, les machines supportées sont : • • les Mac Pro depuis 2010 la dernière version des Xserve (Early 2009) Vous pouvez avoir la liste à jour sur La page de compatibilité Limitations de ESXi Tout n'est pas tout rose au pays de la virtualisation pour nous. Déjà, au niveau du support officiel, comme je le précisait plus haut, aucun Mac Mini, aussi sympas soient-ils pour héberger ESXi, ne sont officiellement supportés. Copyright © MosX.org Page 22/23 Utiliser VMWare ESXi sur un Mac Cela tourne bien, et beaucoup de monde les utilise dans cette configuration, mais aucun support ne sera fourni. Un autre problème qui peut être très gênant, et qui doit en tout cas être pris en compte, la non-gestion de certaines particularités matérielles du monde Apple : • • • • impossible d'utiliser la carte RAID Apple des Xserve, ni les disques connectés à celle-ci. impossible d'utiliser un périphérique Firewire difficile d'utiliser un périphérique Thunderbolt (en fait, il suffit d'avoir le driver ESXi du periphérique…) les disques USB devraient être supportés mais redirigé par défaut dans les VMs, pas possible d'utiliser un disque USB comme datastore par exemple. Donc la seule solution pour le stockage avec ESXi est de tout stocker en interne ou sur le réseau. Si vous optez pour un gestion centralisée des hôtes avec vCenter, le stockage réseau est de toute façon plus que conseillé pour ne pas être limité. Conclusion Mon nouveau serveur est en place, faisant tourner une VM en 10.6 Server hébergeant mosx.org et une VM en Yosemite server faisant tourner uniquement le serveur de Caching pour l'instant. Je n'ai pas eu le temps de migrer quoi que ce soit du 10.6 au 10.10 pour l'instant mais ça tourne très correctement. J'ai également d'autres VMs qui ne tournent pas en continu dessus. Les deux VMs des serveurs sont hébergées en interne sur le SSD du Mac Mini et je les sauvegarde tous les soirs par un script sur ReadyNAS monté en NFS sur le Mac Mini. Malgré les limitations cités juste au dessus, l'intérêt de migrer mes XServes est toujours bien présent. Dans mon cas, voici comment je vois la solution finale : • • • • chaque XServe installé avec ESXi en licence gratuite. les VMs seront installées sur les SSDs dans les caddies des XServes ma baie RAID actuelle montée en iSCSI à la VM du serveur principal (iSCSI géré par ESXi et non par OSX) achat d'une deuxième baie RAID en iSCSI ou NFS uniquement pour les sauvegardes des VMs (à voir si je peux utiliser mes baies Firewire/USB en USB sur la nouvelle baie RAID) Il faut par contre que je vérifie comment supprimer la carte RAID qui est dans un de mes XServes. Copyright © MosX.org Page 23/23