<?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>Ultimobyte &#187; Virtualizzazione</title>
	<atom:link href="http://www.ultimobyte.org/tag/virtualizzazione/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.ultimobyte.org</link>
	<description></description>
	<lastBuildDate>Fri, 20 Jan 2012 09:53:25 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Virtualizzazione con KVM</title>
		<link>http://www.ultimobyte.org/2009/10/28/virtualizzazione-con-kvm/</link>
		<comments>http://www.ultimobyte.org/2009/10/28/virtualizzazione-con-kvm/#comments</comments>
		<pubDate>Wed, 28 Oct 2009 11:36:35 +0000</pubDate>
		<dc:creator>admin</dc:creator>
				<category><![CDATA[Articolo Tecnico]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Virtualizzazione]]></category>

		<guid isPermaLink="false">http://www.ultimobyte.org/?p=596</guid>
		<description><![CDATA[KVM (Kernel-based Virtual Machine) è un sistema di virtualizzazione integrato nel kernel di linux (kvm.ko) su hardware x86 che disponga delle &#8220;virtualizzation extensions&#8221;. Per controllare che un processore disponga del supporto hardware deve essere presente nel file /proc/cpuinfo la stringa vmx&#124;svm (questa verifica può essere fatta digitando il comando ~#egrep &#8216;(vmx&#124;svm)&#8217; /proc/cpuinfo).  Verificato questo elemento si può procedere [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/kvmbanner-logo2.png"><img class="alignleft size-medium wp-image-597" title="kvmbanner-logo2" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/kvmbanner-logo2.png" alt="" width="300" height="93" /></a>KVM (<strong>Kernel-based Virtual Machine</strong>) è un sistema di <strong>virtualizzazione integrato nel kernel</strong> di linux (kvm.ko) su hardware x86 che disponga delle &#8220;virtualizzation extensions&#8221;. Per controllare che un processore disponga del supporto hardware deve essere presente nel file /proc/cpuinfo la stringa vmx|svm (questa verifica può essere fatta digitando il comando <em><span style="color: #008000;">~#egrep &#8216;(vmx|svm)&#8217; /proc/cpuinfo</span></em>).  Verificato questo elemento si può procedere all&#8217;installazione. Prima di tutto scarichiamo i pacchetti</p>
<p><em><span style="color: #008000;">sudo apt-get install virt-manager libvirt-bin kvm</span></em></p>
<p><strong>libvirt-bin</strong> è un toolkit il cui scopo è gestire diversi <strong><span style="color: #333333;"><span style="text-decoration: underline;">hypervisor</span></span></strong> (= la tecnologia di virtualizzazione scelta) tra cui<strong> XEN, QEMU </strong>e appunto <strong>KVM</strong>.</p>
<p><strong>virt-manager</strong> è una applicazione desktop che ci permette di svolgere per via grafica praticamente tutte le più comuni operazioni relative alla creazione e gestione della macchina virtuale (detta anche <strong><span style="color: #333333;"><span style="text-decoration: underline;">domain</span></span></strong>).</p>
<p>Una volta installato il software necessario lanciamo il virt-manager</p>
<p style="text-align: center;"><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/virt-manager.png"><img class="alignnone size-full wp-image-601" title="virt-manager" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/virt-manager.png" alt="" width="500" height="371" /></a></p>
<p style="text-align: left;"><span id="more-596"></span>A questo punto cliccare con il tasto dx sulla riga &#8220;localhost (System)&#8230;&#8221; e scegliere la voce &#8220;New&#8221;. Apparirà il wizard per la creazione della macchina virtuale:</p>
<p style="text-align: left;"><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard1.png"><img class="aligncenter size-full wp-image-602" title="wizard1" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard1.png" alt="" width="499" height="473" /></a></p>
<p style="text-align: left;">Cliccando su Forward andiamo avanti con l&#8217;installazione&#8230;</p>
<p style="text-align: left;"><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard3.png"><img class="aligncenter size-full wp-image-603" title="wizard3" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard3.png" alt="" width="500" height="472" /></a></p>
<p style="text-align: left;">
<p style="text-align: left;">Scegliere a questo punto il sistema operativo che si vuole installare</p>
<p style="text-align: left;"><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard4.png"><img class="aligncenter size-full wp-image-604" title="wizard4" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard4.png" alt="" width="499" height="475" /></a></p>
<p>Scegliere l&#8217;immagine ISO o il CD/DVD per caricare il sistema operativo da installare. (Per creare un immagine iso sotto linux è sufficiente &#8211; una volta inserito il cd &#8211; digitare il comando <em><strong>cat /dev/cdrom &gt; </strong>image-name.iso </em>)</p>
<p><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard5.png"><img class="aligncenter size-full wp-image-605" title="wizard5" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard5.png" alt="" width="500" height="473" /></a></p>
<p>A questo punto va scelta la dimensione del disco virtuale da cerare (Se il disco dovrà essere molto grande non conviene allocare subito l&#8217;intero spazio)</p>
<p><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard6.png"><img class="aligncenter size-full wp-image-606" title="wizard6" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard6.png" alt="" width="500" height="472" /></a></p>
<p>Scegliere il &#8220;default virtual network&#8221;</p>
<p><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard7.png"><img class="aligncenter size-full wp-image-607" title="wizard7" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard7.png" alt="" width="500" height="474" /></a></p>
<p>&#8230;e la quantità di RAM da allocare</p>
<p><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard8.png"><img class="aligncenter size-full wp-image-608" title="wizard8" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/wizard8.png" alt="" width="499" height="472" /></a></p>
<p>A questo punto partirà l&#8217;installazione del Sistema Operativo&#8230;</p>
<p><a href="http://www.ultimobyte.org/wp-content/uploads/2009/10/schermata-2009-10-28-a-122159.png"><br />
<img class="aligncenter size-full wp-image-609" title="schermata-2009-10-28-a-122159" src="http://www.ultimobyte.org/wp-content/uploads/2009/10/schermata-2009-10-28-a-122159.png" alt="" width="500" height="423" /></a></p>
<p>Terminata l&#8217;installazione, il nostro nuovo sistema operativo (in questo caso windows xp) è pronto per essere utilizzato. Potremo navigare uscendo nattati con l&#8217;indirizzo della macchina che ospita il sistema virtualizzato (detta <strong><span style="color: #333333;"><span style="text-decoration: underline;">nodo</span></span></strong>), ma la cosa interessante è quella di configurare la rete della nostra macchina linux come un bridge. In questo modo è come se la macchina virtualizzata avesse &#8220;accesso diretto&#8221; alla scheda di rete fisica&#8230;Tutto ciò che possiamo fare con switch e macchine reali possiamo farlo anche con bridge e macchine virtuali.</p>
<p>Ecco come procedere (nodo: ubuntu server 8.04; domain: windows xp)</p>
<p>Sulla macchina fisica (ubuntu):</p>
<p>- scaricare le bridge utils (<em><span style="color: #008000;">apt-get install bridge-utils</span></em>)</p>
<p>- editare il file di gestione della rete (vi /etc/network/interfaces) e sostituire la configurazione nel seguente modo:</p>
<p>*nel caso si utilizzasse indirizzamento statico*</p>
<pre>auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet static
        address 192.168.0.10 #sostituire l'IP con quello corretto
        network 192.168.0.0 #sostituire la network con quella corretta
        netmask 255.255.255.0 #sostituire la netmask con quella corretta
        gateway 192.168.0.1 #sostituire il gateway con quello corretto
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0</pre>
<p>*nel caso si utilizzasse dhcp*</p>
<pre>auto lo
iface lo inet loopback

auto eth0
iface eth0 inet manual

auto br0
iface br0 inet dhcp
        bridge_ports eth0
        bridge_stp off
        bridge_fd 0
        bridge_maxwait 0</pre>
<p>Così facendo viene creata l&#8217;interfaccia br0 (ricordarsi di fare un restart della rete &#8211;&gt; <span style="color: #008000;"><em>sudo /etc/init.d/networking restart</em></span>)</p>
<p>Arrivati a questo punto è come se la macchina fisica (il nodo) fosse uno switch a cui è stato dato l&#8217;ip statico o in dhcp. A questo punto su questo switch (bridge) possiamo attaccare altre macchine virtuali (i domain).</p>
<p>Per &#8220;agganciare&#8221; la macchina virtuale al nostro bridge dobbiamo editare il file xml che rappresenta la nostra macchina virtuale vm1 (<span style="color: #008000;"><em>vi /etc/libvirt/qemu/vm1.xml</em></span> ) e cambiamo</p>
<pre>    &lt;interface type='network'&gt;
      &lt;mac address='%MAC%'/&gt;
      &lt;source network='default'/&gt;
    &lt;/interface&gt;</pre>
<p>con</p>
<p><span style="color: #008000;"><em></em></span></p>
<pre><em>    &lt;interface type='bridge'&gt;
      &lt;mac address='%MAC%'/&gt;
      &lt;source bridge='br0'/&gt;
    &lt;/interface&gt;</em></pre>
<p>A questo punto il gioco è fatto. Per ottimizzare il tutto non ci resta che installare sotto Windows i driver paravirtulizzati della scheda di rete (virtio &#8211; <a title="driver NetKVM" href="http://www.linux-kvm.org/page/WindowsGuestDrivers/Download_Drivers" target="_blank">NetKVM</a>) scaricarli direttamente dalla macchina virtuale. A questo punto va spenta la vm, va modificato il file xlm nel seguente modo</p>
<pre><em>    &lt;interface type='bridge'&gt;
      &lt;mac address='%MAC%'/&gt;
      &lt;source bridge='br0'/&gt;</em><em>
      &lt;model type='virtio'/&gt;</em>
<em>    &lt;/interface&gt;</em></pre>
<p>e va riavviata la macchina.</p>
<p><em></em></p>
]]></content:encoded>
			<wfw:commentRss>http://www.ultimobyte.org/2009/10/28/virtualizzazione-con-kvm/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

