Posts Tagged ‘Virtualization’

Windows Server 2008 R2 on XEN

Dienstag, Oktober 6th, 2009

Vor zwei Wochen gab es ja von mir einen Beitrag zu lesen, der die virtualisierung von Microsoft Windows Server 2008 R2 auf verschiedenen Plattformen beschrieben hat.

Ich habe versprochen noch einen Artikel nachzureichen, wenn ich die Möglichkeit mit der Freeware Version von XEN ausprobieren konnte. Ein Kollege war so nett, dass für mich auszuprobieren und hat einen Server und die dazugehörige VM vorbereitet.

Es wurde ein XEN Server 5.5 verwendet. Der Kollege hat den Server mit den default Einstellungen installiert und keine Veränderungen vorgenommen, ausser Datastore einbinden etc …

Zur großen Überraschung lies sich Windows Server 2008 R2 ohne Probleme mit dem Template für den Windows Server 2008 x64 installieren. Zügig schnell und ohne Handlungsbedarf unsererseits.

Natürlich auch noch ein paar Screenshots von der Aktion:

Windows Server 2008 R2 Xen 1 Windows Server 2008 R2 Xen 2 Windows Server 2008 R2 Xen 3 Windows Server 2008 R2 Xen 4

Bis jetzt sind wir auf keine Fehler gestossen und die Maschine läuft performant vor sich hin. Wie man das eben von einer anständigen Lösung zur Virtualisierung erwartet 😉

Mein Versprechen habe ich damit eingehalten. Falls jemand Fragen hat, oder noch den ein oder anderen Tip haben will, ist meine Mailadresse zu finden.

Stay virtual,

j.klein

Windows Server 2008 R2 virtualization

Donnerstag, September 24th, 2009

Bin jetzt die letzten Tage in ein neues Thema reingerutscht, was mich dazu gezwungen hat mich mit der neuen Variante des Microsoft Servers (Windows Server 2008 R2) zu beschäftigen. Diesen gibt es nur noch in der 64bit Variante und es ist keine 32bit Installation vorgesehen.

Als Fan von Virtualisierung in so gut wie jeder Art und Weise wollte ich mir das ganze also erst mal nicht auf Hardware installieren sondern virtuell zu Gemüte führen. Bis hier hin erst mal kein Problem. Lies sich auf einem aktuellen VMWare ESX Server 4.0.0 ohne große Probleme installieren und betreiben. Nun habe ich selten Probleme irgendwelche Maschinen in VMWare zum laufen zu bringen, deswegen wollte ich auch andere Wege ausprobieren ohne Hardware auszukommen.

Microsoft Windows Server 2008 x64 Hyper-V:

Erwartet hatte ich hier eigentlich, dass ich das ISO einbinde, starte und los geht die wilde Fahrt. Falsch … Bis zum Punkt des Partitionierens funktioniert alles einwandfrei. Danach kommt leider eine Meldung, dass der Treiber für das CD-Rom Laufwerk nicht gefunden wurde 🙁

Sieht dann aus wie auf dem Bildchen unten und lässt sich auch nicht mehr ändern:

Windows 2008 R2 Hyper-V

Ich bin mir allerdings fast sicher, dass es sich bei mir nicht um die ganz aktuellste gepatchte Version von Windows Server 2008 x64 Hyper-V handelt. Daher kann es gut sein, dass das Problem schon nicht mehr auftritt. War trotzdem enttäuscht, weils einfach nicht OOTB funktioniert hat.

VirtualBox Version 3.0.6 (32 bit + 64 bit)

Bis vor kurzem war auf meinem Notebook Windows 7 Ultimate 32 bit installiert. Genau auf dieser Basis hatte ich auch die 32 bit Version von VirtualBox installiert. Zu meiner anfänglichen Ernüchterung liess sich auch hier der Windows Server 2008 R2 nicht virtuell zum laufen bringen. Beim booten von der CD blieb die Maschine bei folgendem Bildchen stehen. Ich habe sowohl das Windows 2008 Server, als auch das Windows 7 64bit Profil versucht.

Windows 2008 R2 VirtualBox Error

Da ich allerdings sowieso schon länger mit dem Gedanken gespielt habe, meinen Client endlich mal auf Windows 7 Ultimate 64bit zu installieren habe ich das einfach mal versucht. Mit Hilfe der TechNet CD habe ich meinen Client neu betankt. Danach VirtualBox 3.0.6 installiert und einen neuen Versuch mit Windows Server 2008 R2 gestartet. Zu meiner großen Überraschung funktionierte die Installation jetzt einwandfrei und lief bis zum Ende durch. Eigentlich sollte VirtualBox aber auch die Virtualisierung von 64bit Betriebssystemen auf einem 32bit Host-System ermöglichen und ich habe auch genau das schon unter Linux und Windows versucht und war immer erfolgreich. Einen genaue Erklärung für das Phänomen habe ich also nicht. Ich habe auch viel zu wenige Posts im Forum von VirtualBox gefunden, dass es sich hierbei um ein generelles Problem handeln könnte. Daher die Aussage VirtualBox 3.0.6 auf der Basis Windows 7 Ultimate 64bit kann Windows Server 2008 R2 problemlos virtualisieren.

Windows Server 2008 R2 VirtualBox Login Windows Server 2008 R2 ServerManager Windows Server 2008 R2 Properties

Die Maschine läuft performant und bis jetzt konnte ich keine Probleme feststellen. Sogar die „Goodies“ wie die automatische Anpassung der Fenstergröße funktionieren, wenn die „Guest-Additions“ für Windows Server 2008 installiert und „3D Support“ aktiviert.

Microsoft Virtual PC 2007 SP1:

Mangels Support für 64bit Guest-Systeme scheidet diese Lösung von Anfang an aus.

Microsoft Virtual Server 2005:

Im Moment konnte ich leider nocht nicht damit testen, aber wenn alles gut läuft werde ich die Tage noch Gelegenheit haben das auszuprobieren.

Citrix XEN Server 5.5 (Freeware):

Im Moment konnte ich leider nocht nicht damit testen, aber wenn alles gut läuft werde ich die Tage noch Gelegenheit haben das auszuprobieren.

In diesem Sinne spricht mit den gängigen Mitteln nichts dagegen auch den Microsoft Windows 2008 R2 Server auf virtueller Basis laufen zu lassen und somit ein zukunftsorientiertes Konzept beizubehalten. Sollte ich Punkte vergessen haben, oder Fehler gemacht haben, bitte einfach per Kommentar einen kleinen „konstruktiven“ Hinweis geben.

Stay virtual,
j.klein

VirtualBox 2.0.4 Starter Update

Dienstag, November 4th, 2008

Seit 24/10/2008 ist VirtualBox in der Version 2.0.4 im Internet zum Download verfügbar. Ich habe mich gleich einen Tag später ans Werk gemacht und upgedated. Eigentlich sind keine grossen Änderungen zu verzeichnen. Einige Bug-Fixes (siehe Changelog). Der Starter wurde auf eine neue Version gehoben (2.2.4) und dann die neue Version rausgegeben.

Changelog:

  • VMM: better error reporting for VT-x failures
  • VMM: don’t overflow the release log with PATM messages (bug #1775)
  • VMM: fixed save state restore in real mode (software virtualization only)
  • GUI: work around a Qt bug on Mac OS X (bug #2321)
  • GUI: properly install the Qt4 accessible plugin (bug #629)
  • SATA: error message when starting a VM with a VMDK connected to a SATA port (bug #2182)
  • SATA: fixed Guru mediation when booting OpenSolaris/64; most likely applies to other guests as well (bug #2292)
  • Network: don’t crash when changing the adapter link state if no host driver is attached (bug #2333)
  • VHD: fixed bug which prevents booting from VHD images bigger than 4GB (bug #2085)
  • VRDP: fixed a repaint problem when the guest resolution was not equal to the client resolution
  • Clipboard: don’t crash when host service initialization takes longer than expected (Linux hosts only; bug #2001)
  • Windows hosts: VBoxSVC.exe crash (bug #2212)
  • Windows hosts: VBoxSVC.exe memory leak due to a Windows WMI memory leak (Vista only) (bug #2242)
  • Windows hosts: VBoxSVC.exe delays GUI startup
  • Linux hosts: handle jiffies counter overflow (VM stuck after 300 seconds of host uptime; bug #2247)
  • Solaris hosts: fixed host or guest side networking going stale while using host interface networking (bug #2474)
  • Solaris hosts: added support for using unplumbed network interfaces and Crossbow Virtual Network Interfaces (VNICs) with host interface networking
  • Solaris hosts: reworked threading model improves performance for host interface networking
  • Windows additions: fixed crash when accessing deep directory structures in a shared folder
  • Windows additions: improved shared folder name resolving (bug #1728)
  • Windows additions: fixed Windows 2000 shutdown crash (bug #2254)
  • Windows additions: fixed error code for MoveFile() if the target exists (bug #2350)
  • Linux additions: fixed seek() for files bigger than 2GB (bug #2379)
  • Linux additions: support Ubuntu 8.10
  • Linux additions: clipboard fixes (bug #2015)
  • Web services: improved documentation and fixed example (bug #1642)

Zwischenzeitlich ist allerdings schon wieder eine neue Starter-Version rausgekommen. Am 01/11/2008 ist der Starter in der Version 2.2.5 fertig geworden. Soweit ich das feststellen kann, ist der aber bis jetzt nur in der Portable-Version für Windows integriert. Man kann sich den Starter selber jedoch herunterladen und auf eigene Faust patchen.

VirtualBox funktioniert nach wie vor einwandfrei und man kann keine Einbussen bei Performance oder Aussehen feststellen. Lediglich die GUI macht einen flotteren Eindruck, als vorher. Das kann aber auch rein subjektiv an mir liegen, weil ich mir das nach dem patchen sehr erhofft habe 😀

Damit sich jeder an dem tollen Tool erfreuen kann, hier die Downloads.

Downloads:

->  [download#4]

->  [download#5]

->  [download#6]

->  [download#7]

->  [download#8]

->  [download#9]

Für alle, die VirtualBox noch überhaupt nicht kennen: Einfach runterladen und versuchen, es lohnt sich, auch ohne das man sich mit den ganzen Versions-Ständen oder Updates auskennt 🙂

Happy virtualizing,

j.klein

How to connect to a Novell 6.5 Server with SSH

Donnerstag, Oktober 23rd, 2008

Klingt komisch, ist aber so. Diese Frage ist kein absurdes Geschwafel im Arbeitsdelirium sondern eine wirklich gute Möglichkeit den Novell Server ab Version 6.5 zu administrieren.

Eine kleine Anleitung, wie man das bewerkstelligt, gibts hier:

(Ein funktionierender Novell 6.5 SP7 Server wird vorrausgesetzt.

1. CD einlegen
2. In der GUI von NetWare den INSTALL Dialog aufrufen
3. Als Install-Directory den Pfad zur CD angeben „NW65:“
4. Im darauf folgenden Fenster den Lizenzkram akzeptieren

Novell 6.5 Lizenz
5. Bei der Auswahl der Komponenten „OpenSSH“ auswählen
6. Warten bis die Installation abgeschlossen ist und ein reboot gemacht wurde
7. Danach im folgenden Dialog alle Passwort-Mechanismen unterstützen

Novell 6.5 Passwords
8. Auf der ServerConsole „SSHD“ eingeben und den SSH-Server starten

Novell 6.5 SSHD
9. Mit Putty auf den Server verbinden

Novell 6.5 SSH Putty


Kleiner Tip am Rande:

Wenn der Context in der „/etc/ssh/sshd_conf“ nicht richtig gesetzt ist, muss man sich mit einem vollen Context, als Username anmelden. Also z.B.  „cn=username,ou=users,o=testorg“

Man kann allerdings in der Konfiguration des SSH Servers sehr einfach Aliase setzen, die einem die lästige Schreibarbeit dann abnehmen. Ich weiss, dass es mit 2 Usern geht, allerdings weiss ich nicht, wie sich die Aliase bei z.B. 100 Usern verhalten. Abgesehen davon dass es in dem File dann ziemlich wüst aussehen dürfte 🙂

Ruhig mal mit den Linux Befehlen spielen, da findet man tolle Sachen raus. „bash“, „ls“, „export“ und „vi“ funktionieren zum Beispiel auch wunderbar auf Novell 6.5! Viel mehr Sachen habe ich aus zeitlichen Gründen bis jetzt noch nicht testen können ^^

Try a new kind of SSH,

j.klein

Novell 5.0 Upgrade Part I

Dienstag, Oktober 14th, 2008

Heute hatte ich in der Arbeit zusammen mit einem Kollegen die ehrenvolle Aufgabe einen Novell 5.0 NetWare Server aufzusetzen. Warum macht man das? Gute Frage… Der Kunde hat in seinem aktuellen Betrieb solche Systeme noch im Einsatz und es ist unsere Aufgabe diese Systeme durch State-of-the-Art Systeme zu ersetzen. Daher bleibt die unangenehme Aufgabe nicht aus, auch mal an Novell Server zu geraten.

Die Daten sind auf einem Novell 5.0 Server aber nicht einfach zu übernehmen. Dazu muss man zuerst ein Upgrade auf mindestens Version 5.1 machen. Ab hier wird nämlich CIFS unterstützt und man kann mit gängigen Windows Bordmitteln arbeiten. Die Crux liegt also darin einen Novell Server 5.0 auf Version 5.1 upzugraden, welches nicht ohne weiteres möglich ist. (Schon gar nicht wenn man schon lange nichts mehr auf diesem Gebiet gemacht hat). Nun ja, über diverse Seiten und Internetrecherche kamen wir zu dem Schluss dass ein Upgrade möglich ist, wenn man Novell 5.0 auf den Patchstand SP6a mit Hilfe des gleichnamigen Supportpacks bringt. Nach dieser Aktion sollte es möglich sein mit einem Upgrade auf die Version 5.1 zu kommen, ohne den Directory Dienst in der Version verändern zu müssen (das will man sich nicht antun).

Mein Vorschlag einen pensionierten Novelladmin unter Androhung von Gewalt zu einem Upgrade zu zwingen, war leider aus Konflikten mit dem Grundgesetz und den aktuellen Sicherheitsbestimmungen der Firma nicht realisierbar. (Aber clever) 🙂

Somit mussten wir uns wohl oder übel doch mit der Materie selber beschäftigen. Ich werde hierzu eine kleine Anleitung verfassen (die Stellen an denen wir von vorne beginnen mussten spare ich aus). Ich weiss zwar nicht, wer jemals wieder in die Lage kommen sollte, so etwas zu realisieren, aber man weiss ja nie …

In Part I dieser Doku wird die Installation von SP6a beschrieben. Die hat auch schon einen ganzen Tag in Anspruch genommen. Bei Gelegenheit werde ich dann Part II mit dem Upgrade auf 5.1 beschreiben.

Es wird davon ausgegangen, dass ein installierter Novell 5.0 Server vorliegt (das kriegt man grade noch hin). Bei uns läuft das System in einer virtuellen Umgebung. Auf Snapshots möchte man bei dieser Arbeit nicht verzichten. An dieser Stelle sei noch angemerkt, dass die Virtualisierung wider erwarten bis auf die SCSI Treiber wunderbar funktioniert hat. Aber dazu bitte den TIPP beachten.

TIPP: Nicht LSI als SCSI Devices hernehmen, sondern BusLogic. Die Treiber sind schon out of the box dabei.

Upgrade Novell 5.0 auf Novell 5.0 Support Pack 6a:

Von einer beliebigen Quelle im Internet organisiert man sich die Datei nw50sp6a.exe (158 MB). Aus rechtlichen Gründen kann ich dazu keinen direkten Link vergeben. Aber nach einer kostenlosen Registrierung kann man das von der Novell Seite herunterladen.

Das die Datei eine .exe Endung hat, heisst allerdings noch lange nicht, dass man sie auf den Server packen kann und dann einfach munter installiert.

An dieser Stelle muss ein Rechner vorhanden sein, der mit der neuesten Version des Novell-Clients beglückt worden ist. Über diesen meldet man sich mit administrativer Kennung im eigens dafür kreirten Novell Netzwerk an und hat somit Zugriff auf die Volumes SYS: und PUBLIC: auf dem Novell Server. Die heruntergeladene Supportpack Datei wird  nun auf den Client geschoben. Dort muss man sich eine DOS-Box öffnen (das dieses jeder hinkriegt setze ich vorraus)

Nun wechselt man in der DOS-Box in das Netzlaufwerk auf den Novell das SYS: Laufwerk gemapped hat. Von dort aus startet man dann die .exe Datei, die sich lokal auf dem Client befindet. Die entpuppt sich bei dieser Gelegenheit als  Self-Extracter.

Wichtig: Keinen Unterordner für das entpacken anlegen, da die Installationsroutine das nicht leiden kann.


Extrahieren des Support-Packs

Die Extraktion sollte dann ähnlich wie auf obigem Bildchen aussehen. Unter Linux erscheint bei solchen Vorgängen immer eine Nette Zeitangabe, bis zur Vollendung. Hier nicht, also mache ich die einfach. Nach 3 – 4 Tassen Kaffe (45 Minuten) kanns weitergehen 🙂
Sind diese Schritte erst einmal geschafft, ist es nicht mehr wirklich weit bis zum Erfolg.


NWCONFIG ist dein Freund:
Das Kommando „nwconfig“ ist, wie ein Kollege sagte der yast der 90er Jahre. Es wird also somit zum allround Tool unter Novell für die Installation von Treibern, Modulen, Paketen und Upgrades erhoben.
Nach der Eingabe des Kommandos erscheint ein debconf ähnliches GUI. Dort wählt man den Punkt aus, der auf dem Bildchen unten zu sehen ist.

nwconfig installation

Bewegt man NWCONFIG nach dieser Angabe dazu, dass man einen Pfad für die gewünschten Daten angeben darf (F3) kann man dort den Pfad angeben, den man zum entpacken der SupportPack-Datei verwendet hat:
SYS:NW50SP6A (und zwar genau so und nicht anders)

NWCONFIG Pfad

Findet Novell im angegebenen Pfad alle Dateien, die benötigt werden, fragt es nach, ob man ein Backup der Dateien machen möchte, die vom Upgrade Prozess verändert werden. In jedem Fall rate ich dazu diesen Punkt aktiviert zu lassen. (Wir haben dank Snapshot darauf verzichten können)

NWCONFIG Backup

Der Installationsprozess startet und berichtet, dass er das JAVA Modul entladen muss, damit auch diese Dateien zum Upgrade freigegeben werden können. Hier kann beherzt mit „Enter“ antworten.

NWCONFIG Java Unload

Nach dem Bestätigen fährt NWCONFIG mit dem kopieren der Dateien und der Installation fort.

NWCONFIG Installation

Einige zu kopierende Dateien später, fragt Novell dann nach der Adminkennung für die Anmeldung am Directory Server. Diese werden benötigt, da später im Upgrade Schema Changes für NLS notwendig sind. WICHTIG: Vollen Namen angeben  user.ou.tree !

NWCONFIG Credentials

Die Frage nach den Schema-Changes für NLS sollte man mit „Yes“ beantworten. Somit werden unter dem vorher angegebenen Benutzer alle Änderungen die notwendig sind durchgeführt.

NWCONFIG Schema-Changes

Sind auch die Schema-Changes vollendet, meldet NWCONFIG, den erfolgreichen Upgrade auf SupportPack Version 6a. Aber um die Installation abzuschliessen ist noch Reboot notwendig.

Nach diesem Reboot mit Hilfe von „VERSION“ prüfen ob auch alles richtig angezeigt wird. Das SupportPack sollte auch in der Ausgabe erscheinen  SupportPack Revision 06.

Das wäre geschafft. Der erste Schritt auf dem langen Weg zum Upgrade auf Novell 5.1 ist gemacht 🙂

An dieser Stelle herzlichen Dank an meinen Kollegen, der mir in den harten Zeiten Beistand geleistet hat und auch da war, wenn ich weinen musste 😀

Den Rest gibts dann zu einem späteren Zeitpunkt.

Have fun,

j.klein

Uptime Bug virtualisiertes Fedora Core

Donnerstag, September 25th, 2008

Habe gestern Abend zu Testzwecken in der Firma noch eine virtuelle Maschine mit Fedora Core aufgesetzt. NTP eingerichtet und alles wunderbar. Einen versuche habe ich gestartet, die Maschine in die Domain zu heben, allerdings schlug der wegen eines falschen Config-Files fehl. Dann hatte ich auch keine Lust mehr 😛

Heute Morgen stelle ich jedoch fest, dass die Maschine über Nacht eine ganz stattliche Uptime zu Stande gebracht hat. Ich kann mir im Moment noch nicht erklären, wie das zu Stande gekommen ist, aber vermute mal, das Fedora nicht so gerne virtualisiert wird.

Hier der passende Screenshot dazu:

Uptime Fedora Core

Uptime Fedora Core

Ist auf jeden Fall das meiste an Uptime was ich je zu Stande gebracht habe 🙂

Für die Rechenfans – Das entspricht ca. 46 Jahren ^^

Beat that,

j.klein

10g RAC Cluster mit VirtualBox

Freitag, September 19th, 2008

Heute Morgen im Netz habe ich ein wirklich krankes Setup mit VirtualBox gefunden!

>> Creating your own 10g RAC cluster at home using VirtualBox. <<

So lautet der Titel des Beitrages in einem Blog der über OpenSource Experimente berichtet.

Link zum Beitrag

Der Beitrag wartet zu einem guten Aufbau auch noch mit hilfreichen Tips zu „ISCSI over external USB Disks“ auf. Wer also auf so kranke Sachen steht sollte sich das auf jeden Fall mal anschauen ^^

Happy reading and a nice weekend,

j.klein

Virtuelle Maschine zum mitnehmen

Mittwoch, September 17th, 2008

Dank der schmalen Installation von VirtualBox ist es möglich, diese Software als Portable-Software zu benutzen. Sie benötigt also keine Installation und ist z.B. von einem USB-Stick startbar.

Ich habe mir die aktuellste Version auf http://vbox.hubutz.de/ heruntergeladen. Nach dem Download das ganze auf meinen USB-Stick gepackt und angefangen eine virtuelle Maschine (auf dem USB-Stick) anzulegen. Als OS habe ich mich für Debian entschieden und eine 1GB grosse virtuelle Platte sollte erst mal reichen. Widererwarten hat die Installation zackig funktioniert und ich habe nun ein Debian System, mit allen Schikanen, dass ich auf meinem USB Stick mit mir rumtragen kann. Das System lässt sich auf jedem beliebigen Rechner starten.

(Es sei angemerkt, dass es auch mit Windows XP Professional problemfrei funktioniert)

Habe es bei verschiedenen Kollegen ausprobiert und jedesmal bootete das System ohne Murren und Knurren. WIrklich eine feine Angelegenheit. Das ganze lässt sich ja auch noch weiterspinnen. Die Möglichkeiten sind hier denke ich noch lange nicht ausgeschöpft und lassen viel Freiraum für Fantasie 🙂

Der nächste Schritt sollte bei mir sein ein kleines „Damn Small Linux“ zum implementieren, was dann als Router fungieren kann. Mal sehen was aus diesem Projekt wird. Denke mal, es wird leider mangels Zeitwieder ein paar Monate nach hinten verschoben 🙁

Downloads:

VirtualBox 2.0 Portable

Try it out,

j.klein

Ausgleich von „Differenzen“

Montag, Juni 16th, 2008

Ich habe in der Firma, bei der ich arbeit eine nicht ganz optimal Umgebung von ESX – Servern „geerbt“.

Das heisst, kein Server ist gleich aufgebaut, keiner hat die selbe Version von ESX bzw. VI und keine Platten-Array gleicht dem anderen 🙂

Sind also optimale Vorraussetzungen zur Administration einer Umgebung in der Server zuverlässig virtualisiert werden sollen. Deswegen bin ich leider nicht drum herum gekommen ein paar Changes zu stellen, damit die Server Hardware und Software-Technisch abgeglichen werden. Des weiteren werden die Kisten natürlich auch auf den gleichen Stand der ESX Version gebracht. Dazu brauchst ein Storage, auf dem ich die Daten erst mal zwischenlagern kann, weil momentan die ganzen Daten auf den lokalen Platten rumfliegen. (auch TOP) 😛

Nun ja, ich bin jetzt mal gespannt ob alles so durch das „Management“ durchgeht, wie ich das erhoffe und ich alle Changes genehmigt bekomme. Muss ja schliesslich auch das ein oder andere Stück Hardware dazu gebaut werden 🙂

Wenn die Aktion fertig ist, sag ich mal bescheid, ob das alles so hinhaut, wie’s in meinem Hirn spukt ^^

Enjoy tonight’s soccer,

j.klein

Microsoft Hyper-V! Treten Sie einen Schritt zurück

Samstag, Juni 7th, 2008

Wie angekündigt, war ich gestern auf der Veranstaltung von Microsoft, die das Thema Hyper-V behandelte.

Als ich das erste mal was von Microsoft und Virtualisierung gelesen habe habe ich gedacht, dass Redmond einfach VMware aufkaufen wollte, um sich alle weiteren Mühen zu sparen. Aber dem war nicht so! Microsoft unternimmt tatsächlich den Versuch auf den Virtualisierungs-Zug aufzuspringen. Mehr oder weniger erfolgreich wie ich finde.

Auf der Veranstaltung war nun ein Redner, der die Zuhörerschaft davon überzeugen sollte/wollte, dass Hyper-V ein tatsächliches Konkourrenz-Produkt zu ESX VI3 sei. Bereits nach 5 Minuten war allen klar, dass es für ihn ein gutes Stück arbeit wird 🙂

Aber nun zu dem Produkt selber:

Um Hyper-V nutzen zu können, benötigt man einen installierten Windows 2008 Server 64bit (Std, Enterprise, Datacenter). Die Editionen machen hierbei nur einen Unterschied in der Lizenzierung (Std: 1VM, Enterprise: 4 VM’s, DataCenter: unlimited VM’s). Seinem installieren Server weist man dann die Rolle „Hyper-V Beta“ zu. Nachdem man diese aktiviert hat, kann man aber mit WSUS oder ähnlichem die Version RC1 des „Hyper-V“ nachziehen, dann verschwindet auch das Beta.

Nach dem nächsten Reboot passiert folgendes. Zwischen Hardware und den Windows Server 2008 x64 wird der „Hypervisor-Layer“ geschoben. Somit ist der vorher installierte Server schon die erste virtuelle Maschine auf dem Sytem (Parent Partition). Oben auf der Parent-Partition sitzt nun der „Virtualization Stack“. Das war schon das erste, wo ich ein bisschen geschluckt habe. Legt man nun via VMM (Virtual Machine Manager) einen neuen Server an, ist dieser auch sofort virtualisiert und nennt sich (Child Partition). Der gesamte Datenstrom (NIC, I/O, etc…) läuft über den „Virtualization Stack“ der Parent Partition. Legt man eine weitere Maschine an, passiert das selbe. Alle Daten über die Parent Partition. Die Treiber für die virtuelle Hardware werden übrigens auch noch von der Parent Partition gestellt 🙂

Hyper-V

Anhand dieses Bildes (was mich sehr an eins von VMware erinnert) kann man sich das ganze recht gut vorstellen. Alles rechts der Parent Partition greift auf die selbige. Diese schleift dann das ganze auf den Hypervisor und der wiederum auf die physikalische Hardware durch. Im allgemeinen nennt man sowas glaube ich „Bottleneck“ 😉

Aber das Problem scheint Microsoft selber schon in der Entwicklung erkannt zu haben und hat schnell noch was dazu gebastelt. Dazu muss ich jetzt noch ein Bildchen heranziehen, dass ein bisschen verwirrender aussieht. Aber daran kann man das ganze recht gut erklären. Lasst euch von den Pfeilen nicht irritieren, die haben in dem Zusammenhang keine Bedeutung.

Hyper-V

Normal ist jede VM mit einem „VMBus“ augestattet. Über den greift sie dann auf den „Virtualization Stack“ der Parent Partition zu. Es gibt allerdings noch eines von diesen tollen Features, die eigentlich gar keine sind, weil sie ein anderes Feature unverfügbar machen. Das nennt sich dann „Emulation“ man kann also auch Hardware in einer VM emulieren. Diese emulierte Hardware greift dann direkt auf den Hypervisor zu. Das geht aber soweit ich das gesehen habe nur mit NIC’s, da Platten-Devices auch an der „Parent Partition“ sichtbar sein müssen um auf einer VM zu funktionieren. Da werden die Daten dann einfach trotz emulierter Hardware durch die „Parent Partition“ geschleift.

Eines der besten Features der Virtualisierung fehlt komplett. Mehr Speicher zuweisen, als die physikalische Hardware bietet, um den Speicher optimal auszulasten. Kurz „Memory OverCommitment“. Man kann den VM’s nur so viel Speicher zuweisen, wie die Physik tatsächlich bereit stellt. Also 8GB Speicher wären 4 VM’s mit 2 GB Speicher, oder 1VM mit 8GB Speicher, usw… Das hat bei mir das zweite, wirklich grosse Schlucken verursacht, weil sich das auch auf spätere „Features“ auswirkt.

Quick-Migration nennt Microsoft das, was bei VMware VMotion heisst. Der einzige Unterschied ist, dass bei Microsoft ein Ausfall von bis zu 5 Minuten entsteht. Bei VMware geht das online. Ausserdem funktioniert Quick-Migration auch nur dann, wenn auf der anderen Maschine genug Speicher frei ist, dass die VM darauf laufen kann. Habe ich den ganzen Speicher der Maschine schon besetzt (sollte normal so sein), fliegt die VM ins Nirvana. Gehe ich von einer Standard-Config aus, haben meine VM’s 2048MB Speicher. Gehe ich davon aus, das ich 10 VM’s habe, sind das 20GB. Das heisst, ich muss auf jedem Host einige GB Speicher frei halten, damit die VM’s da überhaupt ankommen. Bei einer Config mit 2 Servern wären das 20 GB auf dem anderen Server. Aber da das meistens keinen Sinn macht, muss ich mir ja doch noch ein Stück zusätzliches Blech kaufen, damit die VM’s zuverlässig laufen. Dieses Stück Blech läuft dann aber immer nur auf sehr geringer Auslastung, weil ich den Speicher ja frei halten muss… Irgendwie, Naja weiss nicht ob das der Gedanke ist, der hinter der Virtualisierung steckt. Bei einem ESX Server mit dem selben Setup sollte man auch den Speicher freihalten – „sollte“. Es funktioniert aber auch, wenn er nicht frei ist. Die Maschine läuft zwar sehr langsam, aber sie läuft! Bei Hyper-V funktioniert es dann einfach nicht…

Sogar Betriebssyteme wie Linux sind als VM supported! Allerdings macht sich hier schnell Ernüchterung breit.

Supported CPU’s for Operating-Systems:

Windows Server 2008: 4 CPU’s

Windows Server 2003: 2 CPU’s

Windows Server 2000: 1 CPU

Linux + others: 1 CPU

Mit einem Linux System, dass nur 1 CPU benutzen darf, kann ich nicht wirklich viel anfangen 🙁

Aber eine tolle Konstellation ist möglich! Ich habe eine Linux-VM auf Microsoft virtualisiert, so wie vorgeschrieben. Dann kann ich einen Call bei Microsoft für mein virtuelles Linux aufmachen, wenn ich ein Problem habe 😀

Allerdings ist, glaube ich, bis jetzt nur SLES 10 supported 🙁

Meine persönliche Meinung zu Hyper-V ist, dass es in Sachen Virtualisierung ein gewaltiger Schritt zurück ist. Der Gedanke der hinter der Virtualisierung steckt, wurde bei Microsoft durch den Marketing-Wolf gejagt und die Soße, die unten raus kam wurde in Code (sprich: Kot) umgesetzt. Mit einigen Service-Packs in der Zukunft und Patches könnte das vielleicht mal interessant werden. Stand heute würde ich allerdings die Finger davon weglassen, weil damit meistens die Anschaffung zusätzlicher Hardware verbunden ist (wie ironisch) 😀

Meine Anfrage nach dem „Konsolidierungs-Faktor“ wurde bei Microsoft so beantwortet, dass es keinen gäbe. „Häh, wie es gibt keinen?“. Aber im nach hinein glaube ich dem guten Mann sogar.

Stay physical,

j.klein