<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Hypervisor.fr &#187; vib</title>
	<atom:link href="http://www.hypervisor.fr/?feed=rss2&#038;tag=vib" rel="self" type="application/rss+xml" />
	<link>http://www.hypervisor.fr</link>
	<description>French Bare-Metal weblog</description>
	<lastBuildDate>Wed, 26 Jun 2024 22:42:28 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>iperf for ESXi</title>
		<link>http://www.hypervisor.fr/?p=5091</link>
		<comments>http://www.hypervisor.fr/?p=5091#comments</comments>
		<pubDate>Tue, 13 May 2014 07:11:09 +0000</pubDate>
		<dc:creator>NiTRo</dc:creator>
				<category><![CDATA[Performance]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[iperf]]></category>
		<category><![CDATA[network benchmark]]></category>
		<category><![CDATA[vib]]></category>
		<category><![CDATA[VmkAccess]]></category>

		<guid isPermaLink="false">http://www.hypervisor.fr/?p=5091</guid>
		<description><![CDATA[MAJ 23/05/2015 : Et un petit screenshot du firewall pour la route:


Aussi farfelu que cela puisse paraître, une nouvelle partie de notre homelab est *temporairement* connecté sur du CPL. Et du coup, &#8220;les débits doivent être pourris ?!&#8221; me demanderez vous. Et bien figurez vous que nous nous sommes posé la même question au moment [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><em><span style="color: #ff0000;">MAJ 23/05/2015</span> : Et un petit screenshot du firewall pour la route:</em></p>
<p style="text-align: center;"><em><a href="http://files.hypervisor.fr/img/iperf/firewall.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/iperf/firewall.png" alt="" width="455" height="479" /></a><br />
</em></p>
<p style="text-align: justify;">Aussi farfelu que cela puisse paraître, une nouvelle partie de notre homelab est *temporairement* connecté sur du <a href="http://fr.wikipedia.org/wiki/Courants_porteurs_en_ligne" target="_blank">CPL</a>. Et du coup, &#8220;les débits doivent être pourris ?!&#8221; me demanderez vous. Et bien figurez vous que nous nous sommes posé la même question au moment de connecter un ESX sur cette portion de notre réseau domestique !</p>
<p style="text-align: center;"><img class="aligncenter" src="http://files.hypervisor.fr/img/iperf/plc.png" alt="" width="478" height="310" /></p>
<p style="text-align: center;">
<p style="text-align: justify;">Pour tester un segment de réseau rien de tel qu&#8217;<a href="http://en.wikipedia.org/wiki/Iperf" target="_blank">iperf</a> évidement mais nous ne voulions pas faire le test entre 2 VM, entre 2 ESX c&#8217;est beaucoup plus intéressant&#8230; Nous avons donc déterré <a href="http://www.vm-help.com/forum/viewtopic.php?f=16&amp;t=3047&amp;sid=e88c53ae49bdaf811da0b626440a39ed" target="_blank">un vieux post du forum vm-help où danisoto détail que le binaire iperf i386 pour rhel5 fonctionne nativement sur ESXi</a>. C’était à l’époque d&#8217;ESXi 4 mais le binaire fonctionne toujours aussi bien sur ESXi 5.5 :</p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/iperf/iperf_legacy.png"><img class="aligncenter" src="http://files.hypervisor.fr/img/iperf/iperf_legacy.png" alt="" width="476" height="212" /></a></p>
<p style="text-align: justify;">Après quelques tests où nous avons du désactiver (<a href="http://kb.vmware.com/kb/2005284" target="_blank">temporairement</a>) le firewall d&#8217;ESXi faute de règle associée, nous avons pensé qu&#8217;il serait bien pratique d&#8217;avoir une jolie vib avec une version uptodate d&#8217;iperf, <a href="http://kb.vmware.com/kb/2008226" target="_blank">une règle de firewall custom</a> et une &#8220;SecPolicy&#8221;&#8230;</p>
<p style="text-align: left;">Un petit coup d&#8217;<a href="http://www.v-front.de/p/esxi5-community-packaging-tools.html" target="_blank">ESXi5-CPT</a> plus tard, et nous voila avec une vib contenant la version 2.0.5-1 i386 d&#8217;iperf (pour laquelle <a href="http://pkgs.org/centos-5/epel-i386/iperf-2.0.5-1.el5.i386.rpm.html" target="_blank">nous avons honteusement pompé le binaire d&#8217;un rpm</a> plutôt que de le compiler nous même #shame) et la règle de firewall qui ouvre le port 5001 en TCP/UDP :</p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/iperf/iperf_vib_tcp_p4.png"><img class="aligncenter" src="http://files.hypervisor.fr/img/iperf/iperf_vib_tcp_p4.png" alt="" width="476" height="357" /></a></p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/iperf/iperf_vib_udp.png"><img class="aligncenter" src="http://files.hypervisor.fr/img/iperf/iperf_vib_udp.png" alt="" width="476" height="285" /></a></p>
<p style="text-align: justify;">Pour information, nous n&#8217;avons pas pu compiler de version 2.0.5-11 ni de version 3.x fonctionnelle mais la v2 semble la plus répandue à ce jour et la version 2.0.5-1 ne semble pas souffrir de bug majeur.</p>
<p style="text-align: left;">Ce petit exercice nous a permis de découvrir <a href="http://www.v-front.de/2012/11/a-daemons-vib-part-3-building-software.html" target="_blank">le &#8220;VMkernel Access Control System&#8221; (SecPolicy) qu&#8217;Andreas décrit dans l&#8217;un de ses posts dédiés à la création d&#8217;une vib</a>. Sans son aide on y serait encore&#8230; Vielen Dank! Au passage, pour faire passer la secpolicy, il faut impérativement le level &#8220;VMwareAccepted&#8221; ce qui rend le &#8211;no-sig-check obligatoire malheureusement.</p>
<p style="text-align: left;">Pour ceux qui ont la chance de pouvoir accéder au net depuis leur ESXi, <a href="http://vibsdepot.v-front.de/wiki/index.php/List_of_currently_available_ESXi_packages" target="_blank">la vib est disponible sur le vibsdepot d&#8217;Andreas</a>, sinon c&#8217;est ici :</p>
<div class="wp-caption aligncenter" style="width: 110px"><a href="http://files.hypervisor.fr/zip/iperf-2.0.5-1.x86_64.vib" target="_blank"><img class="  " title="iperf-2.0.5-1" src="http://files.hypervisor.fr/img/super_mario_piranha_plant.png" alt="" width="100" height="100" /></a><p class="wp-caption-text">iperf-2.0.5-1</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.hypervisor.fr/?feed=rss2&amp;p=5091</wfw:commentRss>
		<slash:comments>4</slash:comments>
		</item>
		<item>
		<title>Différentiel de vib par cluster &#8211; MAJ</title>
		<link>http://www.hypervisor.fr/?p=4880</link>
		<comments>http://www.hypervisor.fr/?p=4880#comments</comments>
		<pubDate>Thu, 19 Sep 2013 17:39:48 +0000</pubDate>
		<dc:creator>NiTRo</dc:creator>
				<category><![CDATA[VMware]]></category>
		<category><![CDATA[compliance]]></category>
		<category><![CDATA[esxcli]]></category>
		<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[powershell]]></category>
		<category><![CDATA[vib]]></category>

		<guid isPermaLink="false">http://www.hypervisor.fr/?p=4880</guid>
		<description><![CDATA[MAJ 03/10/2015 : mise à jour du script (version 1.2) correction de bug et ajout sur GitHub.
MAJ 10/10/2013 : mise à jour du script (version 1.1) correction de bug.
Après avoir fait des tests de drivers Emulex sur un cluster, nous avons voulu savoir quelle version de la vib lpfc820 était installée sur chaque host. Pas [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><em><em><span style="color: #ff0000;">MAJ 03/10/2015</span> : mise à jour du script (version 1.2) correction de bug et ajout sur GitHub.</em></em></p>
<p style="text-align: justify;"><em><em><span style="color: #ff0000;">MAJ 10/10/2013</span> : mise à jour du script (version 1.1) correction de bug.</em></em></p>
<p style="text-align: justify;">Après avoir fait des tests de drivers Emulex sur un cluster, nous avons voulu savoir quelle version de la vib lpfc820 était installée sur chaque host. Pas évident même avec VUM, nous avons donc fait un petit coup de get-esxcli sur tous les ESX pour comparer la list mais bon voila, c&#8217;était pas pratique non plus. Au passage, nous nous sommes aperçu que certaines vib du constructeur n&#8217;étaient pas à la même version sur tous les serveurs. On a dû faire chauffer le notepad++ !</p>
<p style="text-align: justify;">Voici donc un script de <strong>reporting de vib</strong> qui renvoi la liste des serveurs dont certaines vib sont différentes de la majorité du cluster :</p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/vibdiffview.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/vibdiffview.png" alt="" width="501" height="494" /></a></p>
<p style="text-align: left;">Vous avez la possibilité d&#8217;utiliser les paramètres suivants :</p>
<ul>
<li>cluname : nom du cluster dont sera tirée la liste des ESX connectés au vcenter</li>
<li>fullviblist : 1 renvoi une liste non filtrée dans un out-gridview</li>
<li>compactviblist : 1 renvoi une liste filtrée (ESX et vib)</li>
<li>compactviblistout : &#8220;csv&#8221; ou &#8220;view&#8221; pour avoir la liste en csv ou dans un out-gridview plutot quand dans la console</li>
</ul>
<p>Vous pouvez l’exécuter sur plusieurs cluster grâce à une simple boucle :</p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/vibdiffclusters.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/vibdiffclusters.png" alt="" width="466" height="114" /></a></p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/vibdiffconsole.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/vibdiffconsole.png" alt="" width="468" height="115" /></a></p>
<p style="text-align: justify;">En mode compacte, seules les vib qui comportent une différence sont remontées et la colonne &#8220;<strong>majority</strong>&#8221; représente le serveur de référence (un de ceux qui ont exactement les mêmes vib et à la même version). Le symbole <strong>==</strong> indique que la version de la vib est identique à la vib de la majorité.</p>
<div class="wp-caption aligncenter" style="width: 110px"><a href="https://github.com/v-team/powercli-toolbox/blob/master/get-clustervibdiff.ps1" target="_blank"><img class="  " title="get-vibdiff" src="http://files.hypervisor.fr/img/super_mario_piranha_plant.png" alt="" width="100" height="100" /></a><p class="wp-caption-text">get-vibdiff</p></div>
]]></content:encoded>
			<wfw:commentRss>http://www.hypervisor.fr/?feed=rss2&amp;p=4880</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Infiniband@home : votre homelab à 20Gbps</title>
		<link>http://www.hypervisor.fr/?p=4662</link>
		<comments>http://www.hypervisor.fr/?p=4662#comments</comments>
		<pubDate>Thu, 30 May 2013 06:54:52 +0000</pubDate>
		<dc:creator>NiTRo</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Performance]]></category>
		<category><![CDATA[Test]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[ZFS]]></category>
		<category><![CDATA[10GbE]]></category>
		<category><![CDATA[FC]]></category>
		<category><![CDATA[HCA]]></category>
		<category><![CDATA[infiniband]]></category>
		<category><![CDATA[iometer]]></category>
		<category><![CDATA[vib]]></category>

		<guid isPermaLink="false">http://www.hypervisor.fr/?p=4662</guid>
		<description><![CDATA[MAJ 07/03/2014 : Le beta test du package ib-opensm-3.3.15 pour ESXi 5.5 est terminé et Andreas Peetz nous a fait l&#8217;honneur de le publier sur son vibdepot. Toutes les informations d&#8217;usage sont disponibles sur son wiki mais nous reprécisons que ce package n&#8217;est pas supporté pour VSAN à cause du timeout trop important en cas [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;"><em><span style="color: #ff0000;">MAJ 07/03/2014</span> : Le beta test du package ib-opensm-3.3.15 pour ESXi 5.5 est terminé et <a href="http://vibsdepot.v-front.de/wiki/index.php/Welcome" target="_blank">Andreas Peetz nous a fait l&#8217;honneur de le publier sur son vibdepot</a>. Toutes les informations d&#8217;usage sont disponibles sur son wiki mais nous reprécisons que ce package <strong>n&#8217;est pas supporté pour VSAN</strong> à cause du timeout trop important en cas de (ré)élection du master opensm.</em></p>
<p style="text-align: justify;"><em><span style="color: #ff0000;">MAJ 30/01/2014</span> : Suite à d&#8217;autres problèmes de stabilité avec ESXi 5.5, nous retirons la version x64. Une nouvelle version est actuellement en beta test, n’hésitez pas à nous contacter pour la tester.</em></p>
<p style="text-align: justify;"><em><span style="color: #ff0000;">MAJ 26/11/2013</span> : Suite à des problèmes de stabilité, <a href="http://files.hypervisor.fr/zip/ib-opensm-3.3.15-64.x86_64.vib" target="_blank">nous avons compilé la version 3.3.15 en 64bit</a> et remis à disposition <a href="http://files.hypervisor.fr/zip/ib-opensm-3.3.15.x86_64.vib" target="_blank">la 3.3.15 32bit</a> en lieu et place de la version 3.3.16</em></p>
<p style="text-align: justify;"><em><span style="color: #ff0000;">MAJ 22/10/2013</span> : Nouvelle vib en <a href="https://twitter.com/hypervisor_fr/status/392413281354129409">version 3.3.16-64 qui apporte le <strong>support d&#8217;ESXi 5.5</strong></a> (les binaires et librairies sont maintenant en 64bit) et rétrocompatible en 5.1 (probablement 5.0 aussi).</em></p>
<p style="text-align: justify;"><em><span style="color: #ff0000;">MAJ 02/10/2013</span> : Mise à jour du vib avec la version 3.3.16 d&#8217;opensm. <strong>Aucune version compatible avec ESXi 5.5</strong> pour le moment.</em></p>
<p style="text-align: justify;">Suite à notre <a href="http://www.hypervisor.fr/?p=4093" target="_blank">post sur l&#8217;EZ Compact 6 il y a quelques mois</a>, nous avons été victimes de &#8220;<strong>l&#8217;effet SSD</strong>&#8221; qui donne l&#8217;impression que n&#8217;importe quelle grappe de disques SAS 15K en stripping est une grosse brouette. En effet, après avoir goutté à un agrégea de SSD vous devenez immédiatement addict aux <strong>latences extrêmement faibles</strong> ainsi qu&#8217;aux débits improbables qui vous font douter de la bande passante théorique du PCIe. Mais pour en profiter au delà du serveur dans lequel se trouve vos précieux, il faut <strong>un protocole de transport plus rapide et performant que du simple GbE</strong>. Suite à quelques recherches, le choix du <a href="http://en.wikipedia.org/wiki/Fibre_Channel#Fibre_Channel_topologies" target="_blank">Fibre Channel en mode FC-P2P ou FC-AL</a> s’avérait être le plus pratique (pas besoin de switch, seulement des cartes HBA et des fibres pour les relier) et peu coûteux compte tenu de l&#8217;immense marché de l&#8217;occasion.</p>
<p style="text-align: center;"><a href="http://www.epubbud.com/read.php?g=8MVD69ZN&amp;tocp=17" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/fc_p2p_al.jpg" alt="" width="350" height="200" /></a></p>
<p style="text-align: justify;">Un petit tour sur eBay et nous voila avec notre <strong>FC@home</strong> qui nous a permis de faire des tests intéressants comme ceux pour <a href="http://www.hypervisor.fr/?p=4389" target="_blank">notre post sur le MRU ranking</a> mais aussi de profiter pleinement des performances des SSD. Le seul &#8220;inconvénient&#8221; du FC est de ne transporter que du block et donc de ne permettre qu&#8217;un accès à des LUN. Sur une petite baie de stockage ZFS c&#8217;est un réel problème car <strong>cela oblige à prendre certaines précautions concernant la taille des LUN présentées pour profiter des snapshots et de la compression</strong>. Il y a donc de fortes chances que vous soyez dans l&#8217;obligation de réserver une quantité d&#8217;espace non négligeable <strong>pour éviter de saturer le zpool</strong>.</p>
<p style="text-align: justify;">Nous partons alors en quête de cartes réseau <strong>10GbE</strong> avec lesquelles nous pourrions faire du NFS mais aussi des vmotion à des vitesses indécentes. Malheureusement ce matériel reste encore très cher pour un particulier à l&#8217;heure actuelle y compris d&#8217;occasion. Après quelques recherches, nous avons trouvé une solution très abordable (en occasion toujours) permettant de faire du block ainsi que du réseau à des débits hallucinants et avec des temps de latence extrêmement faibles : l&#8217;<strong><a href="http://devopsreactions.tumblr.com/post/49763071666/playing-with-infiniband-hardware-for-the-first-time" target="_blank">infiniband</a></strong> !</p>
<p style="text-align: center;"><a href="http://www.infinibandta.org/logo_library/library.html" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/ib_black_logo.png" alt="" width="105" height="136" /></a></p>
<p>L&#8217;infiniband est un type de <a href="https://cw.infinibandta.org/document/dl/7268" target="_blank">réseau très particulier permettant à la base de transporter des messages</a> :</p>
<blockquote><p>The basic idea behind InfiniBand is simple; <strong>it provides applications with an easy-to-use messaging service</strong>. This service can be used to communicate with other applications or processes or to access storage.</p></blockquote>
<p style="text-align: justify;">Grace à des ULP (<strong>Upper Layers Protocol</strong>) il est possible de transporter différents protocoles tels que du SCSI, de l&#8217;IP, du NFS ou du Lustre et même de faire du <strong>RDMA</strong> pour certains comme dans le cas du <a href="http://en.wikipedia.org/wiki/SCSI_RDMA_Protocol" target="_blank">SRP</a> ou du <a href="https://developer.nvidia.com/gpudirect" target="_blank">GPUDirect</a>. Au fil de nos recherches nous avons pu remarquer que malgré des débuts difficiles, l&#8217;architecture infiniband semble s&#8217;imposer petit à petit dans de nombreux domaines pour des raisons de flexibilité, de performances et de coûts.</p>
<p style="text-align: center;"><a href="http://gigaom.com/2012/09/03/infiniband-back-from-the-dead/" target="_blank"><img class="aligncenter" src="http://gigaom2.files.wordpress.com/2012/09/infiband.jpg" alt="" width="366" height="334" /></a></p>
<p style="text-align: justify;">Pour en revenir à notre homelab, nous avons soigneusement cherché un modèle de carte dual port capable de fonctionner sur ESXi 5 ainsi que Nexenta 3 et <a href="http://www.nexentastor.org/boards/1/topics/245" target="_blank">c&#8217;est sur le forum de nexenta que nous avons trouvé la bonne affaire</a> : HP 448397-B21 (chip Mellanox ConnectX). A <strong><a href="http://www.ebay.com/sch/i.html?_from=R40&amp;_sacat=0&amp;_nkw=HP+448397-B21&amp;_sop=15" target="_blank">50€ sur ebay</a></strong> nous en avons donc commandé <a href="https://twitter.com/hypervisor_fr/status/319017217842892800/photo/1" target="_blank">3 ainsi que les câbles CX4 pour les connecter</a> (infiniband supporte le back-to-back à l&#8217;instar du FC et de l&#8217;ethernet).</p>
<p style="text-align: center;">
<p style="text-align: justify;">Tout semblait &#8220;se dérouler sans accrocs&#8221; mais alors que nous relisions <a href="http://www.mellanox.com/related-docs/prod_software/Mellanox_IB_OFED_Driver_for_VMware_vSphere_User_Manual_Rev_1_8_1.pdf" target="_blank">le User Manual des drivers Mellanox</a> en attendant que les cartes nous soient livrées, un paragraphe allait radicalement changer la nature de notre aventure :</p>
<blockquote><p>The driver package requires InfiniBand Subnet Manager (SM) to run on the subnet. <strong>The driver package does not include an SM</strong>.<br />
<strong>If your fabric does not include a managed switch/gateway, an SM application should be installed on at least one non-ESXi Server machine in the subnet</strong>. You can download an InfiniBand SM such as OpenSM from www.openfabrics.org under the Downloads section.</p></blockquote>
<p style="text-align: justify;">En effet, contrairement à FC ou ethernet, les cartes infiniband (HCA) ne suffisent pas à constituer un réseau fonctionnel (et sans SM sur le subnet, les ports IPoIB sont down), il faut un <strong>Subnet Manager</strong> pour gérer la topologie du réseau infiniband et ce composant n&#8217;existe pas (publiquement) pour ESXi, pas jusqu&#8217;à maintenant en tout cas&#8230;</p>
<p style="text-align: justify;">Un SM étant nécessaire pour chaque subnet, notre design en &#8220;triangle&#8221; (2 ESXi + 1 Nexenta) nécessitait forcement un SM coté ESXi pour gérer le subnet entre les 2 ESXi (pour le vmotion) et un SM pour chacun des liens ESXi/Nexenta (pour le SCSI et le NFS). Et dans un excès d&#8217;optimisme, nous voila parti à essayer de <strong>compiler OpenSM pour ESXi</strong> et en faire un vib <img src='http://www.hypervisor.fr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/infiniband/HP-448397-B21.jpg" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/HP-448397-B21.jpg" alt="" width="366" height="276" /></a></p>
<p style="text-align: justify;">Nous avons commencé grâce <a href="http://www.virtuallyghetto.com/2011/02/how-to-compile-statically-linked-rsync.html" target="_blank">au post de William Lam</a> basé sur le post de <a href="http://www.zemris.fer.hr/~sgros/sysadm/esxi_hacks.shtml" target="_blank">Stjepan Groš</a> et avons réussi à <a href="https://twitter.com/hypervisor_fr/status/318015826198413312" target="_blank">compiler une version fonctionnelle</a> après avoir résolu des problèmes de dépendances (libibmad, libibumad et libwrap) et de chemins dans les sources (umad.h). Nous avons ensuite du faire face à un problème de cpu loop (osm_vendor_ibumad.c) que nous n&#8217;aurions pu résoudre sans l&#8217;aide précieuse de <strong>Hal Rosenstock</strong>, de chez Mellanox (très actif sur <a href="http://lists.openfabrics.org/" target="_blank">la mailing list d&#8217;openfabrics</a>). Finalement, après avoir mijoté un script d&#8217;init, nous avions une version capable de démarrer un SM par subnet, supportant un fichier de partition (topologie du réseau) et capable de réassigner les <a href="http://www.mellanox.com/pdf/whitepapers/InfiniBandFAQ_FQ_100.pdf" target="_blank">LIDS</a> (équivalent des adresses MAC ou des WWN) en cas de besoin. <strong>Yatta !</strong></p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/infiniband/ib_vib_info.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/ib_vib_info.png" alt="" width="506" height="234" /></a></p>
<p style="text-align: justify;">Nous n&#8217;avons eu qu&#8217;à utiliser l’excellent <a href="http://www.v-front.de/2012/11/update-esxi5-community-packaging-tools.html" target="_blank">ESXi Community Packaging Tools</a> d&#8217;Andreas Peetz (autrement plus abouti que <a href="http://labs.vmware.com/flings/vib-author" target="_blank">VIB Author</a>) pour packager un joli vib à déployer avec esxcli (<a href="http://www.v-front.de/2012/11/a-daemons-vib-part-3-building-software.html" target="_blank">VUM ne supportant pas l&#8217;indispensable &#8211;no-sig-check</a>) et hotplug ! De plus, OpenSM est capable de supporter plusieurs instances sur le même subnet où une seule sera MASTER et les autres STANDBY.</p>
<p style="text-align: justify;">Voici donc <strong>le seul et unique vib qui vous permettra de faire du back-to-back entre 2 ESXi</strong> ou entre ESXi et n&#8217;importe quoi d&#8217;autre :</p>
<div class="wp-caption aligncenter" style="width: 110px"><a href="http://files.hypervisor.fr/zip/ib-opensm-x86-3.3.15-1.x86_64.vib"><img class="   " title="ib-opensm-x86-3.3.15-1.x86_64.vib" src="http://files.hypervisor.fr/img/super_mario_piranha_plant.png" alt="" width="100" height="100" /></a><p class="wp-caption-text">ib-opensm x86</p></div>
<div class="wp-caption aligncenter" style="width: 110px"><a href="http://files.hypervisor.fr/zip/ib-opensm-x64-3.3.15-6.x86_64.vib"><img class="   " title="ib-opensm-x64-3.3.15-6.x86_64.vib" src="http://files.hypervisor.fr/img/super_mario_piranha_plant.png" alt="" width="100" height="100" /></a><p class="wp-caption-text">ib-opensm x64</p></div>
<p>Un petit tour par l&#8217;onglet configuration d&#8217;ESXi :</p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/infiniband/vmhba_mlx4.png" title="vmhba_mlx4" rel="lightbox[4662]"><img class="alignnone size-thumbnail wp-image-4789" title="vmhba_mlx4" src="http://www.hypervisor.fr/wp-content/uploads/2013/05/vmhba_mlx4-150x150.png" alt="" width="150" height="150" /></a> <a href="http://files.hypervisor.fr/img/infiniband/vmnic_ib.png" title="vmnic_ib" rel="lightbox[4662]"><img class="alignnone size-thumbnail wp-image-4790" title="vmnic_ib" src="http://www.hypervisor.fr/wp-content/uploads/2013/05/vmnic_ib-150x150.png" alt="" width="150" height="150" /></a></p>
<p>Et enfin, quelques infos utiles :</p>
<ul>
<li>Les logs d&#8217;openSM sons placés dans /var/log/opensm/{LID}/opensm.log</li>
<li>Les fichiers partitions.conf (qui définie la topologie du réseau) sont à placer dans /scratch/opensm/{LID}/</li>
<li>Pour fixer le MTU à 4092, suivez le <a href="http://www.mellanox.com/related-docs/prod_software/Mellanox_IB_OFED_Driver_for_VMware_vSphere_User_Manual_Rev_1_8_1.pdf#page=20" target="_blank">User Manual de Mellanox</a> et utilisez ce <a href="http://files.hypervisor.fr/zip/partitions.conf" target="_blank">partitions.conf</a></li>
<li>Pour activer ibsrp/target sur Nexenta 3, suivez le <a href="http://files.hypervisor.fr/doc/Basic_COMSTAR_Quick-Start_Guide_for_SRP.pdf" target="_blank">Basic COMSTAR Quick-Start Guide for SRP</a></li>
</ul>
<p>Passons aux gros chiffres. On commence par une vague de vmotion :</p>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/infiniband/ipoib_vmotion.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/ipoib_vmotion.png" alt="" width="433" height="314" /></a></p>
<p style="text-align: left;">On continue avec un test d&#8217;IOPS avec <a href="http://labs.vmware.com/flings/io-analyzer" target="_blank">VMware I/O Analyzer</a> (appliance iometer) :</p>
<p style="text-align: left;"><a href="http://files.hypervisor.fr/img/infiniband/read_vmhba_mlx4_0.2.1-iops.png"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/read_vmhba_mlx4_0.2.1-iops.png" alt="" width="447" height="335" /></a></p>
<p style="text-align: left;"><a href="http://files.hypervisor.fr/img/infiniband/read_vmhba_mlx4_0.2.1-latency.png"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/read_vmhba_mlx4_0.2.1-latency.png" alt="" width="447" height="335" /></a>Et on termine par un test de throughput, toujours avec I/O Analyzer :</p>
<p style="text-align: left;"><a href="http://files.hypervisor.fr/img/infiniband/write_vmhba_mlx4_0.2.1-throughput.png"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/write_vmhba_mlx4_0.2.1-throughput.png" alt="" width="447" height="335" /></a></p>
<p style="text-align: left;"><a href="http://files.hypervisor.fr/img/infiniband/write_vmhba_mlx4_0.2.1-latency.png"><img class="aligncenter" src="http://files.hypervisor.fr/img/infiniband/write_vmhba_mlx4_0.2.1-latency.png" alt="" width="447" height="335" /></a></p>
<p style="text-align: left;">Il ne vous reste plus qu&#8217;à sécher vos larmes et aller vous faire plaisir sur eBay <img src='http://www.hypervisor.fr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p style="text-align: left;">Ces tests ont été réalisés sur 1 seul port 10Gbps DDR (soit 20Gbps) alors imaginez les résultats <a href="http://www.mellanox.com/page/products_dyn?product_family=161&amp;mtag=connectx_3_pro_vpi_card" target="_blank">avec des cartes 56Gbps</a>&#8230;</p>
<p style="text-align: left;"><em>PS : Un grand merci à vmdude pour son aide et à tous les autres pour nous avoir supporté pendant notre période &#8220;infiniband cay le bien&#8221; <img src='http://www.hypervisor.fr/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hypervisor.fr/?feed=rss2&amp;p=4662</wfw:commentRss>
		<slash:comments>63</slash:comments>
		</item>
		<item>
		<title>[SDK] Les petits secrets du HostPatchManager</title>
		<link>http://www.hypervisor.fr/?p=3972</link>
		<comments>http://www.hypervisor.fr/?p=3972#comments</comments>
		<pubDate>Tue, 24 Jul 2012 23:39:58 +0000</pubDate>
		<dc:creator>NiTRo</dc:creator>
				<category><![CDATA[HowTo]]></category>
		<category><![CDATA[Tips & Tricks]]></category>
		<category><![CDATA[VMware]]></category>
		<category><![CDATA[HostPatch]]></category>
		<category><![CDATA[PowerCLI]]></category>
		<category><![CDATA[SDK]]></category>
		<category><![CDATA[vib]]></category>
		<category><![CDATA[VUM]]></category>

		<guid isPermaLink="false">http://www.hypervisor.fr/?p=3972</guid>
		<description><![CDATA[Pour un projet particulier, il nous a fallu trouver une méthode industrialisable pour patcher des ESXi 4.0 U1 &#62; U4 à chaud et sans maintenance mode. Evidemment la mise à jour nécessite un reboot pour être effective mais cela offre la possibilité (contrairement à VUM) de séparer totalement la partie patch de la partie &#8220;maintenance mode&#8221;/reboot afin de partager les taches entre 2 équipes par [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: justify;">Pour un projet particulier, il nous a fallu trouver une méthode industrialisable pour patcher des ESXi 4.0 U1 &gt; U4 <strong>à chaud et sans maintenance mode</strong>. Evidemment la mise à jour nécessite un reboot pour être effective mais cela offre la possibilité (contrairement à VUM) de séparer totalement la partie patch de la partie &#8220;maintenance mode&#8221;/reboot afin de partager les taches entre 2 équipes par exemple (et accessoirement d’être plus rapide que VUM).</p>
<p style="text-align: justify;">Nous savions que c&#8217;était techniquement envisageable compte tenu du fait qu&#8217;un <a href="http://www.hypervisor.fr/?p=1049" target="_blank">patch pour ESXi se résume à la copie d&#8217;une nouvelle build dans <span style="text-decoration: line-through;">la &#8220;bootbank&#8221; après avoir copier la build courante dans la &#8220;altbootbank</span>&#8220;</a> <a href="http://youtu.be/rTYULTkudSI?t=9m51s" target="_blank">la &#8220;bootbank&#8221; inactive</a>. Compte tenu du fait qu&#8217;ESXi est un OS stateless, le fait d’écraser la &#8220;bootbank&#8221; <span style="text-decoration: line-through;">et la &#8220;altbootbank&#8221;</span> pendant le fonctionnement ne pose pas de problème. Malgré tout, il nous a fallu chercher un peu pour trouver le bon paramètre à passer à &#8220;esxupdate&#8221; pour forcer la mise à jour (qui nécessite le &#8220;maintenance mode&#8221; par défaut) avec des vm en fonctionnement.</p>
<p style="text-align: justify;">Voici un petit oneliner qui vous permettra de reproduire cet exploit (oubliez le support vmware naturellement) :</p>
<pre class="brush: powershell; title: ; notranslate">(get-view (get-vmhost vsp41esx01*|get-view).configmanager.PatchManager).InstallHostPatchV2($null, &quot;http://www.hypervisor.fr/img/ESXi410-201206001.zip&quot;, $null, ((new-object Vmware.Vim.HostPatchManagerPatchManagerOperationSpec -Property @{cmdOption = &quot;--maintenancemode&quot;})))</pre>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/HostPatch/InstallHostPatch.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/HostPatch/InstallHostPatch.png" alt="" width="521" height="645" /></a></p>
<p style="text-align: justify;"><a href="http://www.vmware.com/support/developer/vc-sdk/visdk41pubs/ApiReference/vim.host.PatchManager.html#InstallV2" target="_blank">Comme le détail le SDK</a>, il est possible de choisir entre 3 sources de patch : metaUrls, bundleUrls ou vibUrls, tout dépendra du format du patch. Concernant le &#8220;maintenance mode&#8221;, toute la magie réside dans le paramètre &#8221;<strong>&#8211;maintenancemode</strong>&#8221; qui fait parti des &#8220;hidden options&#8221; d&#8217;esxupdate (malheureusement pas toutes commentées) :</p>
<blockquote><p>&#8211;HA<br />
&#8211;vib-view<br />
&#8211;maintenancemode<br />
&#8211;force<br />
&#8211;test <em>&#8216;Test update transaction only&#8211;do not change sytem.&#8217;</em><br />
&#8211;all<em> &#8216;Display all bulletins.  Default is to display only the applicable updates.&#8217;</em><br />
&#8211;long <em>&#8216;Produce more detailed response in query or info output.&#8217;</em><br />
&#8211;noobsoletes <em>&#8216;Ignore obsoletions during update.  (Enables downgrading to older bundles.)&#8217;</em><br />
&#8211;reinstall <em>&#8216;Re-install a bundle that is already installed.&#8217;</em><br />
&#8211;nodeps<br />
&#8211;nosigcheck<br />
&#8211;nocache<br />
&#8211;olderversion<br />
&#8211;cachesize<br />
&#8211;cleancache<br />
&#8211;compliant</p></blockquote>
<p>A l&#8217;opposé, il est aussi possible de <strong>désinstaller un patch </strong>(à chaud toujours), ce qui est malheureusement impossible à faire avec VUM :</p>
<pre class="brush: powershell; title: ; notranslate">(get-view (get-vmhost vsp41esx02*|get-view).configmanager.PatchManager).UninstallHostPatch(&quot;ESXi410-201101223-UG&quot;,((new-object Vmware.Vim.HostPatchManagerPatchManagerOperationSpec -Property @{cmdOption = &quot;--maintenancemode&quot;})))</pre>
<p style="text-align: center;"><a href="http://files.hypervisor.fr/img/HostPatch/UninstallHostPatch.png" target="_blank"><img class="aligncenter" src="http://files.hypervisor.fr/img/HostPatch/UninstallHostPatch.png" alt="" width="521" height="534" /></a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.hypervisor.fr/?feed=rss2&amp;p=3972</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
