<?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>Emile "iMil" Heitor 's home &#187; Xen</title>
	<atom:link href="http://imil.net/wp/tag/xen/feed/" rel="self" type="application/rss+xml" />
	<link>http://imil.net/wp</link>
	<description>life, unix and stuff</description>
	<lastBuildDate>Sun, 13 May 2012 10:43:50 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.2</generator>
		<item>
		<title>Tu te CALMES le dom0</title>
		<link>http://imil.net/wp/2011/11/13/tu-te-calmes-le-dom0/</link>
		<comments>http://imil.net/wp/2011/11/13/tu-te-calmes-le-dom0/#comments</comments>
		<pubDate>Sat, 12 Nov 2011 22:58:22 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[grub]]></category>
		<category><![CDATA[oops]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=666</guid>
		<description><![CDATA[Voici ce que crachait l&#8217;un de mes dom0 Debian/Squeeze sous Xen 4.0:

Nov 10 05:32:22 yavin kernel: [838380.839883] BUG: soft lockup - CPU#0 stuck for 61s! [swapper:0]
Nov 10 05:32:22 yavin kernel: [838380.839883] Modules linked in: dummy xt_tcpudp iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack xt_physdev iptable_filter ip_tables x_tables xen_evtchn xenfs bridge stp ext2 w83627hf w83793 hwmon_vid loop [...]]]></description>
			<content:encoded><![CDATA[<p>Voici ce que crachait l&#8217;un de mes <i>dom0</i> Debian/Squeeze sous Xen 4.0:</p>
<pre>
Nov 10 05:32:22 yavin kernel: [838380.839883] BUG: soft lockup - CPU#0 stuck for 61s! [swapper:0]
Nov 10 05:32:22 yavin kernel: [838380.839883] Modules linked in: dummy xt_tcpudp iptable_nat nf_nat nf_conntrack_ipv4 nf_defrag_ipv4 xt_state nf_conntrack xt_physdev iptable_filter ip_tables x_tables xen_evtchn xenfs bridge stp ext2 w83627hf w83793 hwmon_vid loop snd_pcm snd_timer snd radeon soundcore snd_page_alloc ttm drm_kms_helper parport_pc drm parport pcspkr evdev i2c_i801 i2c_algo_bit rng_core serio_raw i2c_core container shpchp pci_hotplug i3000_edac button processor edac_core acpi_processor ext3 jbd mbcache dm_mod raid1 md_mod sd_mod crc_t10dif ata_generic uhci_hcd ata_piix libata thermal floppy ehci_hcd scsi_mod thermal_sys usbcore nls_base e1000e [last unloaded: dummy]
</pre>
<p>Le tout saupoudré de quelques <i>stack traces</i> du meilleur effet:</p>
<pre>
Nov 11 19:52:20 yavin kernel: [976376.042974]  <irq>  [<ffffffff8119db40>] ? xen_swiotlb_unmap_page+0x0/0x5
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffff8100e635>] ? xen_force_evtchn_callback+0x9/0xa
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffff8100ecf2>] ? check_events+0x12/0x20
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffff8119db40>] ? xen_swiotlb_unmap_page+0x0/0x5
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffff8100ecdf>] ? xen_restore_fl_direct_end+0x0/0x1
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffff810e8594>] ? kfree+0xc6/0xcb
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffff81257bad>] ? skb_release_head_state+0xb4/0xc8
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffff812578da>] ? __kfree_skb+0x9/0x7d
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffffa000d2b4>] ? e1000_put_txbuf+0x5a/0x6c [e1000e]
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffffa000d363>] ? e1000_clean_tx_irq+0x9d/0x21e [e1000e]
Nov 11 19:52:20 yavin kernel: [976376.042974]  [<ffffffffa001165f>] ? e1000_clean+0x5c/0x235 [e1000e]
</ffffffffa001165f></ffffffffa000d363></ffffffffa000d2b4></ffffffff812578da></ffffffff81257bad></ffffffff810e8594></ffffffff8100ecdf></ffffffff8119db40></ffffffff8100ecf2></ffffffff8100e635></ffffffff8119db40></irq></pre>
<p>Et j&#8217;en passe. Bref, ça pue.</p>
<p>Après m&#8217;être documenté quelque peu sur les erreurs constatées, deux actions semblent avoir stabilisé la situation. Premièrement, plusieurs <a href="http://kerneltrap.org/node/2678">posts</a> dans quelques forums indiquent que l&#8217;installation de <code>intel-microcode</code> et <code>microcode.ctl</code> permet de &#8220;réparer&#8221; certains bugs embarqués dans les processeurs Intel. Je m&#8217;execute:</p>
<pre>
# apt-get install intel-microcode microcode.ctl
</pre>
<p>Deuxièmement, comme le conseille la section <a href="http://wiki.xen.org/xenwiki/XenBestPractices">Best Practices</a> de Xen.org, il est de bon ton de:</p>
<ul>
<li>Fixer la quantité de mémoire du dom0 afin d&#8217;éviter le ballooning</li>
<li>Attacher un core (&#8220;cpu pinning&#8221;) au <i>dom0</i></li>
</ul>
<p>Ainsi, j&#8217;ajoute la ligne suivante au fichier <code>/etc/default/grub</code>:</p>
<pre>
GRUB_CMDLINE_XEN="dom0_mem=1024M dom0_max_vcpus=1 dom0_vcpus_pin"
</pre>
<p>Et précise dans <code>/etc/xen/xend-config.sxp</code>:</p>
<pre>
(dom0-min-mem 1024)
</pre>
<p>Ne disposant, sur cette machine, que de deux cores, je n&#8217;exclurai pas le CPU0 de la configuration des <i>domU</i>, mais fais confiance à l&#8217;hyperviseur pour équilibrer les ressources efficacement, sachant que désormais le CPU0 est &#8220;pinné&#8221; au <i>dom0</i>. Reste alors à régénérer la configuration de <code>grub</code>:</p>
<pre>
# update-grub
</pre>
<p>Et, malheureusement, de rebooter. Pas le choix ici.</p>
<p>Moyennant ces ajustements, mon <i>dom0</i> ne semble plus souffir, alors que ses <i>domUs</i> compilent à tour de bras.</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/11/13/tu-te-calmes-le-dom0/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MIX ALL THE SOURCES!!!</title>
		<link>http://imil.net/wp/2011/10/31/mix-all-the-sources/</link>
		<comments>http://imil.net/wp/2011/10/31/mix-all-the-sources/#comments</comments>
		<pubDate>Mon, 31 Oct 2011 16:00:55 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[domU]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=657</guid>
		<description><![CDATA[Ce matin, j&#8217;ai mis à jour le dom0 Debian d&#8217;une de mes machines. Passionnant me direz-vous. L&#8217;opération a consisté en la migration de Lenny vers Squeeze. De plus en plus interessant hein ? L&#8217;upgrade s&#8217;est effectué sans trop de peine, après quelques apt-get -f install et autres réinstallations de packages ayant sauté dans la bataille, [...]]]></description>
			<content:encoded><![CDATA[<p>Ce matin, j&#8217;ai mis à jour le dom0 Debian d&#8217;une de mes machines. Passionnant me direz-vous. L&#8217;opération a consisté en la migration de Lenny vers Squeeze. De plus en plus interessant hein ? L&#8217;<i>upgrade</i> s&#8217;est effectué sans trop de peine, après quelques <code>apt-get -f install</code> et autres réinstallations de packages ayant sauté dans la bataille, rien de palpitant. Me voici donc avec un kernel 2.6.35-2 sur un Xen 4 flambant neuf.</p>
<p>Ce dom0 accueille des domU NetBSD. Des NetBSD 5.0.2 pour être précis. Et c&#8217;est le drame: Le <a href="http://gnats.netbsd.org/44743">PR 44743</a> indique en effet:<br />
<i><br />
Subject: Network doesn&#8217;t work on DomU NetBSD 5.1 which is run on Debian Squeeze Dom0 (Xen 4)<br />
</i><br />
Ce à quoi Dieu^WManuel Bouyer répond:<br />
<i><br />
No, copy mode support was added to the backend (dom0) before 5.1, but<br />
 it was added to the frontend (domU) after 5.1 was released. So you need<br />
 something newer from the netbsd-5 branch.<br />
</i><br />
Vous voyez poindre le bordel ? &#8220;Mais migre, bigre de couillon&#8221; me direz-vous, et vous aurez raison, seulement cette machine construit des packages (via <i>bulk build</i>, voir le post précédent) pour un certain nombre d&#8217;autres machines, elles aussi en 5.0.2. Bref, rien n&#8217;est simple. J&#8217;ai donc adopté une méthode &#8220;alternative&#8221; (aussi appelée la méthode *rhon* *rhon* *huiiiiii*): patcher le noyau 5.0.2 avec les <i>bits and pieces</i> nécessaires en provenance de <i>netbsd-5</i>. Finalement, cela n&#8217;a pas été si compliqué. Il suffit de <code>cvs up -rnetbsd-5 -dP</code> dans <code>src/sys/arch/xen</code> et <code>src/sys/arch/x86</code> puis de relancer un <code>config, make depend, make</code> pour obtenir un noyau domU 5.0.2 muni du support <i>copy mode</i>.</p>
<p>&#8220;All went better than expected&#8221;.</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2011/10/31/mix-all-the-sources/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Crassshhhh</title>
		<link>http://imil.net/wp/2010/03/13/crassshhhh/</link>
		<comments>http://imil.net/wp/2010/03/13/crassshhhh/#comments</comments>
		<pubDate>Sat, 13 Mar 2010 10:15:39 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[bridge]]></category>
		<category><![CDATA[Free]]></category>
		<category><![CDATA[NAT]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[pf]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=431</guid>
		<description><![CDATA[C&#8217;est remarquable cette propension des petits lutins bleus de la nuit à aller bousiller les seules machines qui ne sont pas backupées, ils savent tout, ils voient tout, et ce sont de sacrés petits pervers de merde.
Hier matin, alors que je m&#8217;apprétais à faire le tour de mes mails avant de partir au boulot, je [...]]]></description>
			<content:encoded><![CDATA[<p>C&#8217;est remarquable cette propension des petits lutins bleus de la nuit à aller bousiller les seules machines qui ne sont pas <i>backupées</i>, ils savent tout, ils voient tout, et ce sont de sacrés petits pervers de merde.</p>
<p>Hier matin, alors que je m&#8217;apprétais à faire le tour de mes mails avant de partir au boulot, je constate avec effroi que &#8220;je ne sors plus&#8221;. Comportement plus qu&#8217;étrange, ma passerelle récupère bien l&#8217;IP publique Free via DHCP, le ping passe quelques secondes, puis s&#8217;arrête, plus rien. Inévitablement, je commence à blâmer Free -bien qu&#8217;objectivement, je n&#8217;ai pas recontré de problèmes majeurs depuis des mois-, puis par acquis de conscience, teste le lien sur une machine differente. Ça passe.</p>
<p>Mon ancienne passerelle était un peu bancale, il faut l&#8217;avouer; il s&#8217;agissait d&#8217;une Sun Netra X1 gracieusement léguée par monsieur <i>ange</i> pendant Solutions Linux 2008, qui faisait tourner un OpenBSD 4.1 qui paniquait environ tous les trois mois.</p>
<p>Il ne m&#8217;en fallait pas plus pour plancher sur une nouvelle <i>gateway</i>, sous NetBSD cette fois. M&#8217;est alors apparu l&#8217;idée de faire fonctionner cette passerelle dans un <a href="http://wiki.xensource.com/xenwiki/DomU">domU</a>, après tout, en <i>bridgeant</i> l&#8217;interface qui reçoit le réseau Free à une interface Xen, et de la même manière, en <i>bridgeant</i> l&#8217;interface raccordée à mon LAN, cela devrait fonctionner sans accroc: et bien c&#8217;est le cas.</p>
<p>Voici les fichiers impliqués dans ce mic-mac:</p>
<p>Sur le <a href="http://wiki.xensource.com/xenwiki/Dom0">dom0</a>, je déclare mes interfaces comme suit :</p>
<pre>
$ cat /etc/ifconfig.fxp0 # LAN
inet 192.168.0.10 netmask 255.255.255.0
$ cat /etc/ifconfig.fxp1 # Free
up
</pre>
<p>Puis je déclare des <a href="http://www.netbsd.org/docs/guide/en/chap-net-misc.html#chap-net-misc-bridge">bridges</a> sur ces interfaces :</p>
<pre>
$ cat /etc/ifconfig.bridge0 # LAN
create
!brconfig $int add fxp0 up
$ cat /etc/ifconfig.bridge1 # Free
create
!brconfig $int add fxp1 up
</pre>
<p>Ce qui nous donne, dans la configuration du domU :</p>
<pre>
$ cat /usr/pkg/etc/xen/exar
#kernel = "/home/imil/xen/netbsd-5.0.2-INSTALL_XEN3_DOMU.gz"
kernel = "/home/imil/xen/netbsd-5.0.2-XEN3_DOMU-pf.gz"
memory = 256
name = "exar"
vcpus = 1
disk = [ 'file:/home/imil/xen/exar.img,0x03,w' ]
disk += [ 'file:/home/imil/iso/amd64cd-5.0.2.iso,0x04,r' ]
vif = [ 'bridge=bridge0' ]
vif += [ 'bridge=bridge1' ]
bootdev = "/dev/xbd0a"
</pre>
<p>Notez le nom du noyau qui sert à faire booter cette VM, <code>netbsd-5.0.2-XEN3_DOMU-pf.gz</code>. En effet, un <code>modload /usr/lkm/pf.o</code> fait misérablement <i>crasher</i> le domU, il est donc nécessaire de se fendre d&#8217;une recompilation du noyau domU en incluant à la configuration :</p>
<pre>
pseudo-device   pf                      # PF packet filter
pseudo-device   pflog                   # PF log if
</pre>
<p>Sur le domU-passerelle, on constate la présence des deux interfaces :</p>
<pre>
$ ifconfig -a
xennet0: flags=8863<up ,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        capabilities=2800<tcp4csum_tx ,UDP4CSUM_Tx>
        enabled=0
[...]
xennet1: flags=8863<up ,BROADCAST,NOTRAILERS,RUNNING,SIMPLEX,MULTICAST> mtu 1500
        capabilities=2800<tcp4csum_tx ,UDP4CSUM_Tx>
        enabled=0
[...]
</tcp4csum_tx></up></tcp4csum_tx></up></pre>
<p>Leur configuration est triviale :</p>
<pre>
exar$ cat /etc/ifconfig.xennet0 # LAN
inet 192.168.0.254 netmask 255.255.255.0
exar$ cat /etc/ifconfig.xennet1 # Free
up
!dhclient $int
</pre>
<p>Et voila !</p>
<p>On active le NAT gràce à <a href="http://www.openbsd.org/faq/pf/fr/index.html">pf</a> :</p>
<pre>
ext_if="xennet1"
int_if="xennet0"

nat on $ext_if from !($ext_if) -> ($ext_if:0)
</pre>
<p>Et me voila à nouveau en mesure de raconter ma vie trépidante sur l&#8217;Intarwebz.</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2010/03/13/crassshhhh/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Les migrations de la rentrée</title>
		<link>http://imil.net/wp/2009/10/05/les-migrations-de-la-rentree/</link>
		<comments>http://imil.net/wp/2009/10/05/les-migrations-de-la-rentree/#comments</comments>
		<pubDate>Mon, 05 Oct 2009 12:34:04 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[GCU]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Xen]]></category>
		<category><![CDATA[Zone0]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=307</guid>
		<description><![CDATA[On peut lire sur GCU que nous avons passé une partie du week end, après un bafr bien arrosé, à mettre à jour Zone0.GCU-Squad.org, machine qui héberge le site, et moult services du groupe.
Il faut l&#8217;avouer, cette mise à jour fut une promenade de santé en comparaison de sa cauchemardesque installation voila deux ans. Je [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.gcu.info/2009/10/annonce-de-service/">On peut lire sur GCU</a> que nous avons passé une partie du week end, après un bafr bien arrosé, à mettre à jour <a href="http://www.unixgarden.com/index.php/administration-systeme/adminspotting-zone0-le-serveur-parfait">Zone0.GCU-Squad.org</a>, machine qui héberge le site, et moult services du groupe.</p>
<p>Il faut l&#8217;avouer, cette mise à jour fut une promenade de santé en comparaison de sa cauchemardesque installation voila deux ans. Je me propose tout de même de vous raconter les quelques manipulations qui furent nécessaires à sa migration vers 2009.</p>
<p>Rappelez-vous, Zone0 c&#8217;était :</p>
<ul>
<li>Un quad-core <a href="http://wiki.xensource.com/xenwiki/HVM_Compatible_Processors">VT-capable</a></li>
<li>Une debian etch</li>
<li>Un noyau Linux 2.6.18 patché en raison d&#8217;un bug du driver du controlleur RAID 3ware</li>
<li>En conséquence du point précedent, un Xen 3.1 roulé sous les aisselles en provenance de <a href="http://www.xen.org/">Xen.org</a>
</li>
</ul>
<p>Contre toute attente, un simple <code>:%s/etch/lenny/g</code> suivi d&#8217;un <code>apt-get update &#038;&#038; apt-get dist-upgrade</code> a rectifié la situation bancale d&#8217;un Xen et d&#8217;un noyau non-issus de debian, ce qui rendait tout upgrade très périlleux.</p>
<p>Il est à noter qu&#8217;en raison du passage de <i>lvm1</i> à <i>lvm2</i>, il a été nécessaire de se refendre d&#8217;un <code>apt-get dist-upgrade</code>, alors seulement l&#8217;installation d&#8217;un nouveau noyau utilisera les nouveaux <i>hooks</i> de <i>lvm2</i> pour générer un <code>initrd</code> correct. Le noyau installé est en l&#8217;occurrence <code>linux-image-2.6.26-2-xen-amd64</code>.</p>
<p>Un reboot plus tard, le dom0 2.6.26 était controllé par Xen 3.2.</p>
<p>Pour être tout à fait honnête, nous avons planché quelques minutes sur un problème lié à l&#8217;ancienne installation. En effet, les domUs <i>hvm</i> ne démarraient pas, et nous constations que qemu-dm, l&#8217;executable en charge de virtualiser les péripheriques, était en état <i>defunct</i>. La raison était en réalité simplissime, les configurations de nos domUs faisaient appel aux fichiers <code>/usr/lib/xen/boot/hvmloader</code> et <code>/usr/lib/xen/bin/qemu-dm</code>, or c&#8217;étaient les anciens binaires qui se trouvaient là, ceux installés par la version 3.2 issue du package debian se trouvent dans <code>/usr/lib/xen-default</code> (qui est un lien logique vers <code>/usr/lib/xen-3.2-1</code>). Rien de bien méchant.</p>
<p>Une fois rebootée, c&#8217;en était fini pour notre session au datacenter, et il me revenait de mettre à jour les deux domUs NetBSD. Double (quadruple donc) mise à jour, puisqu&#8217;en plus de migrer les deux systèmes vers NetBSD 5.0.1, en raison de <a href="http://imil.net/wp/?p=264">l&#8217;incroyable gain de performance</a> que j&#8217;avais constaté entre le mode HVM et Paravirtualisé de Xen, j&#8217;avais prévu de profiter de cet upgrade massif pour basculer les domUs NetBSD en mode paravirtualisé.</p>
<p>Là encore, rien de terrifiant, dans la configuration des domUs, j&#8217;ai simplement remplacé :</p>
<pre>
kernel = '/usr/lib/xen-3.2-1/boot/hvmloader'
builder = 'hvm'
device_model = '/usr/lib/xen-3.2-1/bin/qemu-dm'
</pre>
<p>par</p>
<pre>
kernel = '/home/xen/NetBSD/5.0.1/netbsd-XEN3PAE_DOMU.gz'
</pre>
<p>Après avoir booté les domUs sur ce kernel domU modifié, il n&#8217;a s&#8217;agit <a href="http://www.netbsd.org/docs/current/#updating-from-snapshot">que d&#8217;une procédure d&#8217;upgrade des plus classiques</a>, suivie de la mise à jour des <i>packages</i> à l&#8217;aide de <code>pkg_comp</code> (recréé pour correspondre au système réel) puis <code>pkg_chk</code>.</p>
<p>Les machines, virtuelles et réelles, semblent bien se comporter, et je suis désormais complètement convaincu par la supériorité du mode paravirtualisé, les temps de réponse sont simplement sidérants.<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2009/10/05/les-migrations-de-la-rentree/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Xen, ssh et Xnest, segmenter pour travailler proprement</title>
		<link>http://imil.net/wp/2009/06/20/xen-ssh-et-xnest-segmenter-pour-travailler-proprement/</link>
		<comments>http://imil.net/wp/2009/06/20/xen-ssh-et-xnest-segmenter-pour-travailler-proprement/#comments</comments>
		<pubDate>Sat, 20 Jun 2009 12:40:21 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Xen]]></category>
		<category><![CDATA[Xnest]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=277</guid>
		<description><![CDATA[Pkgin utilisable, je me suis engagé à l&#8217;intégrer dans PackageKit afin que NetBSD dispose rapidement d&#8217;une interface graphique permettant de manipuler des packages.
Je ne souhaitais pas polluer ma machine de développement avec une myriade de librairies et utilitaires graphiques, aussi ai-je installé un domU NetBSD 5.0 prévu à cet effet.
Afin de simuler l&#8217;utilisation d&#8217;une station [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://imil.net/pkgin/">Pkgin</a> utilisable, je me suis engagé à l&#8217;intégrer dans <a href="http://www.packagekit.org/pk-using.html">PackageKit</a> afin que NetBSD dispose rapidement d&#8217;une interface graphique permettant de manipuler des packages.</p>
<p>Je ne souhaitais pas polluer ma machine de développement avec une myriade de librairies et utilitaires graphiques, aussi ai-je installé un domU NetBSD 5.0 prévu à cet effet.<br />
Afin de simuler l&#8217;utilisation d&#8217;une station de travail sans pour autant installer plusieurs téras de logiciels, j&#8217;ai choisi <a href="http://www.xfce.org/?lang=fr">xfce4</a>. Son installation est désormais simplissime (quoi, j&#8217;ai le droit de me brosser un peu) :</p>
<pre>
$ sudo pkgin in xfce4
</pre>
<p>Il faudra placer les variables suivantes dans le fichier <i>/etc/rc.conf</i> du domU</p>
<pre>
rpcbind=YES
famd=YES
dbus=YES
hal=YES
</pre>
<p>pour démarrer <del>l&#8217;usine à gaz</del> la machinerie <i>fam,dbus,hal</i>.</p>
<p>Vous connaissez probablement le drapeau <i>-X</i> de <code>ssh(1)</code> permettant de faire transiter du traffic <i>X11</i> à travers la session <i>ssh</i>. Il conviendra de placer la variable suivante dans le fichier <i>/etc/ssh/sshd_conf</i> du serveur (du domU dans notre cas) afin d&#8217;autoriser <code>sshd(8)</code> à <i>forwarder</i> le protocole X11 :</p>
<pre>
X11Forwarding yes
</pre>
<p>Moyennant quoi, on se connecte au domU de cette façon :</p>
<pre>
$ ssh -X mondomu
</pre>
<p>Nous afficherons alors une session <i>X11</i> à l&#8217;aide du server <code>Xnest(1)</code>. Il suffira de renseigner le fichier <i>~/.xinitrc</i> comme pour un serveur <i>X</i> classique :</p>
<pre>
xfce4-session
</pre>
<p>Et de démarrer son environnement de cette façon :</p>
<pre>
$ xinit -- /usr/X11R7/bin/Xnest
</pre>
<p>Afin d&#8217;obtenir ce résultat :<br />
<a href="http://imil.net/gfx/xnest-domu.png"><br />
<img src="/gfx/xnest-domu.png" width="550"/><br />
</a></p>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2009/06/20/xen-ssh-et-xnest-segmenter-pour-travailler-proprement/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
		<item>
		<title>Xen et NetBSD 5, la compil</title>
		<link>http://imil.net/wp/2009/04/05/xen-et-netbsd-5-la-compil/</link>
		<comments>http://imil.net/wp/2009/04/05/xen-et-netbsd-5-la-compil/#comments</comments>
		<pubDate>Sun, 05 Apr 2009 19:23:29 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=264</guid>
		<description><![CDATA[Pour tester &#8220;en vrai&#8221; mon fameux pkg_dry (work in progress, pas du tout utilisable, pas d&#8217;affolement), je devais posséder une VM NetBSD 5 &#8220;poubelle&#8221;. Seulement, depuis quelques temps déjà, je sais que cette version panic&#8216;e sur KVM, VirtualBox et Xen HVM. Aussi me suis-je décidé à Xenifier ma machine de developpement NetBSD qui n&#8217;a pas [...]]]></description>
			<content:encoded><![CDATA[<p>Pour tester &#8220;en vrai&#8221; mon fameux <a href="http://cvs.gcu.info/viewvc.py/pkg_dry/">pkg_dry</a> (work in progress, pas du tout utilisable, pas d&#8217;affolement), je devais posséder une VM NetBSD 5 &#8220;poubelle&#8221;. Seulement, <a href="http://mail-index.netbsd.org/port-i386/2008/12/23/msg001001.html">depuis quelques temps déjà</a>, je sais que cette version <i>panic</i>&#8216;e sur <i>KVM, VirtualBox et Xen HVM</i>. Aussi me suis-je décidé à Xenifier ma machine de developpement NetBSD qui n&#8217;a pas d&#8217;instructions VT, afin d&#8217;y faire tourner un domU en paravirtualisation.</p>
<p>Voici la compilation des documents utiles :</p>
<ul>
<li><a href="http://www.netbsd.org/ports/xen/howto.html">Le HOWTO officiell NetBSD/xen</a> (pas à jour)</li>
<li><a href="http://wiki.netbsd.se/How_to_set_up_a_guest_OS_using_xen3">Le HOWTO du wiki NetBSD</a></li>
<li><a href="http://mail-index.netbsd.org/port-xen/2008/12/29/msg004605.html">Un post sur port-xen</a> qui donne quelques informations supplémentaires</li>
</ul>
<p>Ce qu&#8217;il faut savoir :</p>
<ul>
<li>Il n&#8217;est plus nécessaire d&#8217;utiliser <i>grub</i> pour démarrer le noyau Xen, le <i>bootloader</i> standard fonctionne parfaitement</li>
<li>En ajout à la doc du wiki NetBSD, j&#8217;ai du spécifier le <code>bootdev</code> dans mon <code>/boot.cfg</code>, le cas écheant, le noyau tentait de booter sur sd0a</li>
<li>De la même manière, dans la conf de mon domU, j&#8217;ai du ajouter la directive <code>bootdev = "/dev/xbd0a"</code></li>
<li>J&#8217;utilise des images et non de vrais disques, la ligne correspondante dans la conf du domU est: <code>disk = [ 'file:/home/imil/xen/slave-1.img,0x03,w', 'file:/home/imil/iso/netbsd-i386.iso,0x04,r' ]</code></li>
</ul>
<p>À noter que je suis extremement impressionné par la rapidité d&#8217;un domU paravirtualisé, n&#8217;ayant jusqu&#8217;à présent utilisé que des guests HVM.<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2009/04/05/xen-et-netbsd-5-la-compil/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>rtl8139, la carte des winners</title>
		<link>http://imil.net/wp/2008/04/08/rtl8139-la-carte-des-winners/</link>
		<comments>http://imil.net/wp/2008/04/08/rtl8139-la-carte-des-winners/#comments</comments>
		<pubDate>Tue, 08 Apr 2008 13:31:34 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=191</guid>
		<description><![CDATA[Ce midi, le domU GCU était injoignable. Une connexion VNC nous permet de voir que le noyau vomissait depuis quelques minutes une floppée de :

rtk0: unable to allocate Tx cluster

Une rapide recherche nous amène sur ce post qui, comme on pouvait le soupçonner, explique que les cartes de type rtl8139 sont moisies, mais que dans [...]]]></description>
			<content:encoded><![CDATA[<p>Ce midi, le domU GCU était injoignable. Une connexion VNC nous permet de voir que le noyau vomissait depuis quelques minutes une floppée de :</p>
<pre>
rtk0: unable to allocate Tx cluster
</pre>
<p>Une rapide recherche nous amène sur <a href="http://mail-index.netbsd.org/netbsd-users/2006/10/13/0008.html">ce post</a> qui, comme on pouvait le soupçonner, explique que les cartes de type rtl8139 sont moisies, mais que dans l&#8217;urgence, l&#8217;ajout de la directive :</p>
<pre>
options		NMBCLUSTERS=4096
</pre>
<p>à la conf kernel permet de résoudre le problème.<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2008/04/08/rtl8139-la-carte-des-winners/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>NetBSD hvm et rtl8139</title>
		<link>http://imil.net/wp/2008/01/27/netbsd-hvm-et-rtl8139/</link>
		<comments>http://imil.net/wp/2008/01/27/netbsd-hvm-et-rtl8139/#comments</comments>
		<pubDate>Sun, 27 Jan 2008 14:20:46 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[NetBSD]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=179</guid>
		<description><![CDATA["re0: watchdog timeout"
Voila tout ce que nous obtenions lorsque nous choisissions le driver NIC rtl8139 pour un domU NetBSD ou OpenBSD.
Finalement, c&#8217;est une réponse de Manuel Bouyer sur port-xen qui donne la solution: Désactiver re* ! C&#8217;est alors rtk* qui prend la main, et là, point de timeout, de latences ou autres dysfonctionnement, &#8220;juste ça [...]]]></description>
			<content:encoded><![CDATA[<p><code>"re0: watchdog timeout"</code></p>
<p>Voila tout ce que nous obtenions lorsque nous choisissions le driver NIC rtl8139 pour un domU NetBSD ou OpenBSD.<br />
Finalement, c&#8217;est <a href="http://mail-index4.netbsd.org/port-xen/2006/10/25/0001.html">une réponse de Manuel Bouyer sur port-xen</a> qui donne la solution: Désactiver <code>re*</code> ! C&#8217;est alors <code>rtk*</code> qui prend la main, et là, point de timeout, de latences ou autres dysfonctionnement, &#8220;juste ça marche&#8221;.<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2008/01/27/netbsd-hvm-et-rtl8139/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>3.1, it&#8217;s the magic numbeeer</title>
		<link>http://imil.net/wp/2007/09/19/31-its-the-magic-numbeeer/</link>
		<comments>http://imil.net/wp/2007/09/19/31-its-the-magic-numbeeer/#comments</comments>
		<pubDate>Wed, 19 Sep 2007 11:19:45 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=151</guid>
		<description><![CDATA[alors moi je dis: y.e.s.
Upgrade de Xen en 3.1 sur mon lappy boulot, juste pour voir, et YES, enfin ce !@#!@# de module b44 (BCM4401-B0) fonctionne out-of-the-box !
Il s&#8217;agit d&#8217;une debian testing, pour laquelle j&#8217;ai suivi ce tuto, excepté pour la partie mkinitrd qui pedalait dans le vide, je lui ai donc préféré mkinitramfs, utilisé [...]]]></description>
			<content:encoded><![CDATA[<p>alors moi je dis: y.e.s.</p>
<p>Upgrade de Xen en 3.1 sur mon lappy boulot, juste pour voir, et YES, enfin ce !@#!@# de module b44 (BCM4401-B0) fonctionne out-of-the-box !<br />
Il s&#8217;agit d&#8217;une debian testing, pour laquelle j&#8217;ai suivi <a href="http://www.howtoforge.com/debian_etch_xen_3.1">ce tuto</a>, excepté pour la partie <code>mkinitrd</code> qui pedalait dans le vide, je lui ai donc préféré <code>mkinitramfs</code>, utilisé de cette façon :</p>
<pre>
# mkinitramfs -o /boot/initrd.img-2.6.18-xen 2.6.18-xen
</pre>
<p></p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2007/09/19/31-its-the-magic-numbeeer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>64 / 2</title>
		<link>http://imil.net/wp/2007/09/19/64-2/</link>
		<comments>http://imil.net/wp/2007/09/19/64-2/#comments</comments>
		<pubDate>Wed, 19 Sep 2007 09:05:48 +0000</pubDate>
		<dc:creator>iMil</dc:creator>
				<category><![CDATA[Blogroll]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[OpenBSD]]></category>
		<category><![CDATA[Virtualisation]]></category>
		<category><![CDATA[Xen]]></category>

		<guid isPermaLink="false">http://imil.net/wp/?p=150</guid>
		<description><![CDATA[Décidemment, le &#8220;choix&#8221; de l&#8217;OS d&#8217;un domU n&#8217;est pas si large qu&#8217;il n&#8217;y parait&#8230;
Nous avions statué l&#8217;archi suivante pour zone0 :
. dom0: debian stable amd64 + Xen 3.1
. domU services: OpenBSD 4.1 amd64
. domU shells: OpenBSD 4.1 amd64
. domU www1: NetBSD 3.1 x86
. domU www2: NetBSD 3.1 x86
Le choix de NetBSD x86 avait été dicté [...]]]></description>
			<content:encoded><![CDATA[<p>Décidemment, le &#8220;choix&#8221; de l&#8217;OS d&#8217;un domU n&#8217;est pas si large qu&#8217;il n&#8217;y parait&#8230;<br />
Nous avions statué l&#8217;archi suivante pour zone0 :</p>
<p>. dom0: debian stable amd64 + Xen 3.1<br />
. domU services: OpenBSD 4.1 amd64<br />
. domU shells: OpenBSD 4.1 amd64<br />
. domU www1: NetBSD 3.1 x86<br />
. domU www2: NetBSD 3.1 x86</p>
<p>Le choix de NetBSD x86 avait été dicté par le fait que l&#8217;installation même de la version 64 bits s&#8217;avérait impossible, cette dernière ne trouvant jamais le media cd0.</p>
<p>Du fait de l&#8217;architecture de services un peu particulière que nous avions à l&#8217;esprit, nous avons du compiler certains ports OpenBSD&#8230; et là, mauvaise surprise, un bête ./configure faisait loader la machine à 3 et prenait en moyenne un quart d&#8217;heure, à raison de 3 secondes par ligne ! Après quelques recherches, nous trouvons <a href="http://groups.google.com/group/comp.unix.bsd.openbsd.misc/browse_thread/thread/563d6e26a8c4b6fb/cf3bcf15ad9b5223">quelques threads</a> sur des <a href="http://marc.info/?l=openbsd-misc&#038;m=116599642212687&#038;w=2">problèmes similaires</a>, mais toutes les pistes évoquées -même un vilain patch du cpu.c du noyau- ne donnent aucun résultat.</p>
<p>Hier soir, nous nous sommes donc rabattus sur la version x86 d&#8217;OpenBSD, et comme on pouvait s&#8217;y attendre: plus de soucis. Les deux domUs carburent, les ./configure et autres compilations sont rapides, et les machines virtuelles semblent stables, mêmes soumises à quelques stress tests de forking et de memoire.</p>
<p>Il semble que le problème concerne l&#8217;utilisation de fork() -qu&#8217;un ./configure utilise evidemment massivement-.</p>
<p>L&#8217;archi finale est donc :</p>
<p>. dom0: debian stable amd64 + Xen 3.1<br />
. domU services: OpenBSD 4.1 x86<br />
. domU shells: OpenBSD 4.1 x86<br />
. domU www1: NetBSD 3.1 x86<br />
. domU www2: NetBSD 3.1 x86</p>
<p>Une dernière astuce, pour une raison que j&#8217;ignore, une de plus, le boot cd cd41.iso fait paniquer le domU dès le chargement du noyau, aussi, pour installer OpenBSD 4.1, j&#8217;ai utilisé l&#8217;image cdemu qui n&#8217;a posé aucune complication.</p>
<p>Rackage imminent.<br />
</p>
]]></content:encoded>
			<wfw:commentRss>http://imil.net/wp/2007/09/19/64-2/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Served from: imil.net @ 2012-05-23 09:25:01 by W3 Total Cache -->
