<?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>Linux @ Home &#187; virtualisierung</title>
	<atom:link href="http://www.linuxhome.ch/tag/virtualisierung/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.linuxhome.ch</link>
	<description>Pinguine, Politik undsoweiter...</description>
	<lastBuildDate>Thu, 29 Jul 2010 22:14:30 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=9565</generator>
		<item>
		<title>Xen VM&#8217;s auf LVM-Logical Volumes: Konsistente Backups und I/O-Wait im Griff</title>
		<link>http://www.linuxhome.ch/linux/xen-vms-auf-lvm-logical-volumes-konsistente-backups-und-io-wait-im-griff/</link>
		<comments>http://www.linuxhome.ch/linux/xen-vms-auf-lvm-logical-volumes-konsistente-backups-und-io-wait-im-griff/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 14:16:00 +0000</pubDate>
		<dc:creator>Chris</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[virtualisierung]]></category>
		<category><![CDATA[xen]]></category>

		<guid isPermaLink="false">http://www.linuxhome.ch/uncategorized/xen-vms-auf-lvm-logical-volumes-konsistente-backups-und-io-wait-im-griff/</guid>
		<description><![CDATA[Als nächsten Schritt in der vollständigen Migration aller Services auf virtuelle Server mit Xen wollte ich wegkommen von den unhandlichen Image-Dateien, welche niemals konsistent gesichert werden können und auch keine schnellen Zugriffszeiten bieten. Nach kurzem Überlegen und bestätigt durch Erfahrungen anderer Admins gab es einen einfachen Weg: LVM der Logical Volume Manager von Linux eignet [...]]]></description>
			<content:encoded><![CDATA[<img style='float: left; margin-right: 10px; border: none;' src='http://www.gravatar.com/avatar.php?gravatar_id=d6b1294fe73eea0bc9dc84a732e5e880&amp;default=http://use.perl.org/images/pix.gif' alt='No Gravatar' width=40 height=40/><p>Als nächsten Schritt in der vollständigen<a title="Migration von Heimservern auf Xen" href="http://www.linuxhome.ch/linux/virtualisierung-mit-xen-im-hauseinsatz-sinnvoll-oder-nur-eine-spielerei/"> Migration aller Services</a><a title="Migration von Heimservern auf Xen" href="http://www.linuxhome.ch/linux/virtualisierung-mit-xen-im-hauseinsatz-sinnvoll-oder-nur-eine-spielerei/"> auf virtuelle Server mit Xen</a> wollte ich wegkommen von den unhandlichen Image-Dateien, welche niemals konsistent gesichert werden können und auch keine schnellen Zugriffszeiten bieten. Nach kurzem Überlegen und bestätigt durch Erfahrungen anderer Admins gab es einen einfachen Weg: LVM der Logical Volume Manager von Linux eignet sich dafür bestens. Der Hauptgrund war erst, dass man sogenannte &#8220;Snapshots&#8221; von einem aktiven logischen Volume machen kann. Dieser Snapshot ist quasi statisch und repräsentiert somit einen konsistenten  und permanenten Zustand der Daten zum Zeitpunkt der Erstellung dieses Snapshots. Dadurch wird das Erstellen von konsistenten Backups sehr erleichtert. Wie sich zeigte, löste der Umstieg auf LVM aber auch noch ein anderes altbekanntes Problemchen&#8230;</p>
<h3>Das I/O-Wait Problem wird entschärft</h3>
<p>In all den Jahren meines beruflichen und privaten  Umgangs mit Computersystemen war es immer wieder dieser Flaschenhals, der die größten Performanceprobleme machte: I/O Wait: Der Prozessor wartet auf den Festplattencontroller, bis dieser seine Lese- oder Schreiboperation vollständig abgeschlossen hat.</p>
<p>Auch für meinen Backupserver (Backups via NFS und rsync) hiess das immer wieder Warten mit bis zu 90% I/O Wait, was den Server praktisch unbrauchbar macht für weitere Tätigkeiten. Mit den VM&#8217;s auf LVM fiel mir nun auf, dass die DomU&#8217;s zwar auch bis zu 100% I/O Wait haben, dass aber das Wirtssystem indessen keinen bis ganz wenig I/O Wait aufweist. Vermutlich liegt dies daran, dass die DomU gar nicht direkt auf die Hardware zugreift (obwohl im Endeffekt dieselben Backups auf dieselbe externe USB-Disk geschrieben wird bei mir). Auch die Geschwindigkeit, in der diese bis 20GB grossen Backups geschrieben sind, scheint mir subjektiv nicht viel kleiner zu sein als zuvor.</p>
<p>Ich bin kein Kernelspezialist und kann daher nur vermuten, dass die I/O-Wait-Last deswegen geringer ist, weil der Dual-Core in diesem Setup besser zur Geltung kommt, da die VM gezwungenermassen nur auf einem Kern läuft (je nach Konfiguration natürlich) und das Wirts-Betriebssystem nach wie vor 1-2 Kerne zur Verfügung hat (je nach Last). Man möge mich bitte aufklären, falls es andere Gründe sind, die zum besseren I/O-Wait-Verhalten führen.</p>
<p>Mir scheint fast, als sei Virtualisierung so etwas wie der Stein der Weisen, wenn es um die Gleichzeitigkeit von lese- und schreibintensiven Operation und anderen Services auf einer einzigen Maschine geht.</p>
<p>Auf dem Bild ist zu sehen, dass der Xen-Wirt (oberer Teil) nur sehr wenig I/O-Wait aufweist, während die VM (unterer Teil) praktisch nur noch I/O-Wait hat:</p>
<a href="">
					<img src="http://farm.static.flickr.com//_.jpg" alt="" />
				</a>
<p><span id="more-52"></span></p>
<h3>Backups mit Snapshots von LVM</h3>
<p>Einen Snapshot eines logical volumes zu erstellen ist simpel. Man muss nur zuvor darauf achten, dass das Kernel-Modul &#8220;dm_snapshot&#8221; geladen ist, ansonsten funktioniert das Ganze nicht:</p>
<pre>modprobe dm_snapshot lvcreate --snapshot --name=snap_myvol -L 200M /dev/VolGroup0/myvol</pre>
<p>Hier haben wir soeben einen Snapshot des logischen Volumes &#8220;myvol&#8221; kreiert. Der Snapshot liegt immer in der gleichen Volume Group wie das Original. In diesem Beispiel hat der Snapshot ca. 200MB zur Verfügung. Dies ist etwas kompliziert zu erklären: Der Snapshot an sich ist so gross wie das Original, wenn man ihn verwendet, ein Backup zu ziehen. D.h. wenn das Original 5GB gross ist, ist der Snapshot auch so gross. Was bedeuten nun die 200MB? Sie sind der Maximalwert der Änderungen, die am Original vorgenommen werden können in der Zeit in welcher wir den Snapshot benutzen. Deshalb braucht man viel weniger Platz als im Original, da man nur den Delta (die Veränderung) berücksichtigen muss. Man muss sich also immer überlegen, wieviel sich im Original in welcher Zeit ändert. Wenn man für den Backup vom Snapshot 10 Minuten benötigt und es sich beim Original um die Daten eines DNS-Servers handelt, dürften sogar 5 MB genügen.</p>
<h3>Einbinden von logischen volumes in Xen-DomU&#8217;s</h3>
<p>So sieht ein Beispiel der Einbindung von verschiedenen logischen Datenträgern in einer Xen-Konfigurationdatei aus:</p>
<pre>name = "vm_test"
uuid = "d43cc47c-4e49-5999-369d-3a5ccccf43c2"
maxmem = 2048
memory = 1700
vcpus = 1
bootloader = "/usr/bin/pygrub"
on_poweroff = "destroy"
on_reboot = "restart"
on_crash = "restart"
vfb = [ "type=vnc,vncunused=1" ]
disk = [ "phy:/dev/VolGroup1/vm_serv,xvda,w",
         "phy:/dev/VolGroup0/data,xvdb1,w",
         "phy:/dev/VolGroup2/backup,xvdb2,w",
         "phy:/dev/VolGroup1/export_home,xvdd1,w" ]
vif = [ "mac=00:16:33:bb:ff:44,bridge=xenbr0" ]</pre>
<p>Man beachte, dass ich hier einerseits ein unformatiertes logical volume als Grundlage der Serverinstallation selbst verwende (repräsentiert Disk xvda) und andererseits bereits formatierte Filesysteme auf logical volumes einbinde (repräsentiert beispielsweise die Partition xvdb2).  Man kann ungefähr die Möglichkeiten erahnen, die Xen einem damit bietet. Übrigens lassen sich Volumes auch per Label- oder UUID-Definition einbinden. Dies ist zum Beispiel ganz nützlich, wenn man eine externe HD verwendet, welche ja nicht immer dieselbe /dev-Zuweisung erhält:</p>
<pre> [ "phy:/dev/disk/by-label/extern_backup,xvdd1,w" ]</pre>
]]></content:encoded>
			<wfw:commentRss>http://www.linuxhome.ch/linux/xen-vms-auf-lvm-logical-volumes-konsistente-backups-und-io-wait-im-griff/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
	</channel>
</rss>
<!-- WP Super Cache is installed but broken. The path to wp-cache-phase1.php in wp-content/advanced-cache.php must be fixed! -->