Sonntag Jun 07, 2009

Links 20090607 - Amazon EC2 und S3, Karesansui

Karesansui Project - Eine OpenSource Virtualization Management Applikation basierend auf Xen und CentOS 5.3. Das Ganze kann man über den Webbrowser bedienen.
SkyNet Lives! (aka EC2 @ SmugMug) - Der Artikel ist noch vom letzten Jahr, aber trotzdem interessant. Das zeigt doch ganz gut, was mit Amazons Cloud (EC2 und S3 Storage) möglich ist.


Montag Apr 06, 2009

Links 20090406 - PLPython VMM KVM Golconde psutil Jajuk FlvToMp3

PLPython Part 2: Control Flow and Returning Sets
PLPython Part 3: Using custom classes, pulling data from PostgreSQL
PLPython Part 4: PLPython meets aggregates
PLPython Part 5: PLPython meets PostgreSQL Multi-column aggregates and SVG plots
Virtual Machine Manager - Damit kann man u.a. XEN und QEMU bzw. KVM virtuelle Maschinen verwalten. Der Manager enthält div. Tools u.a. Virt Install, Virt Clone, Virt Image und Virtual Machine Viewer.
Installing KVM Guests With virt-install On Ubuntu 8.10 Server
Golconde - Eine in Python geschriebene, lose gekoppelte Replikationslösung für PostgreSQL. Das Ganze arbeitet mit Queues und ist etwas flexibler als andere Lösungen. So müssen Quell- und Zieltabellen z.B. nicht unbedingt gleich sein.
psutil - Eine Python Library die Auskunft über laufende Prozesse gibt und für Linux, OS X, FreeBSD und Windows eine einheitliche API zur Verfügung stellt.
Jajuk Advanced Jukebox - Wer eine große oder etwas verstreute Musiksammlung hat, dem kann diese Jukebox vielleicht etwas beim Verwalten helfen.
FlvToMp3 - Eine KDE Applikation die ohne Qualitätsverlust aus einer Flash-Datei den Sound als MP3 speichert.


Mittwoch Mrz 11, 2009

KVM/Qemu: Wie konvertiert man eine VMware VMDK Datei zu einem KVM Image

Die Lösung ist relativ einfach. Entweder verwendet man qemu-img oder kvm-img (je nachdem welches Tool der Distribution beiliegt):

qemu-img convert -f vmdk -O qcow2 vmware-image.vmdk kvm-image.qcow2

Update 20090511: Das funktioniert aber nur solange man nur ein vmdk-File hat. Wenn das VMWare-Image auf mehrere Dateien aufgesplittet ist wie s001.vmdk, s002.vmdk, usw., dann muss man anders vorgehen. Man konvertiert alle diese Dateien ins RAW-Format und kopiert diese dann zusammen in ein File:

for I in *[0-9].vmdk; do kvm-img convert -f vmdk "$I" -O raw "tempdir/$I"; done
cat *.vmdk >> final_image.raw

Das final_image.raw kann man dann mit der KVM starten.


Mittwoch Feb 04, 2009

KVM, Qemu und XFS Filesystem

So sehr ich ja XFS als Filesystem schätze, muss ich doch ziemlich davon abraten, es in einer KVM (Kernel Virtual Maschine) zu verwenden. Normalerweise richte ich das Root-FS (also /) immer als ext3-Filesystem ein und /boot als ext2. /var, /tmp, /usr, /opt, /home, usw. immer als XFS. Das war all die Jahre auch eine gute und einwandfrei funktionierende Kombination. Falls was ist, kann man mit den Standardtools Root-FS und /boot eventl. reparieren. Solange / und /boot noch tun, hat man ja ohnehin alle Tools drauf, um eventl. die XFS-Partitionen zu reparieren. Den Bedarf hatte ich aber noch nie - bis auf 3 mal in den letzten Monaten in Zusammenhang mit einer KVM.

Da XFS ja ziemlich aggressives Write-Caching betreibt, ist die allgemeine Empfehlung XFS hauptsächlich dann zu verwenden, wenn man eine USV vor dem Rechner hat oder einen Contoller, dessen Cache und Festplatte mit einer Batterie gegen plötzlichen Stromausfall gesichert ist.

So betrachtet, gelten beide Bedingungen nicht für die KVM. Ich kann die KVM ja jeder Zeit mit einem kill vom Host aus abschießen. Oder eine Kernel-Panic des Hosts würde auch die KVM killen. Das ist dann, als ob ich den Stecker für die KVM ziehen würde. Obwohl ich damit auf einem physikalischen Rechner noch nie Probleme hatte, scheint das in einer KVM gravierendere Auswirkungen zu haben. Das Ganze gilt insbesondere dann, wenn man das Virtio Block Device (VIRTIO_BLK) verwendet (das ist der Virtio Plattentreiber, der nicht emuliert werden muss, sondern soz. näher am Host-IO-Treiber sitzt und dadurch schneller arbeiten kann - fällt u.a. dadurch auf, das man ein /dev/vda Device hat).

Ich kann aufgrund meiner Erfahrungen aktuell nur empfehlen, ext3 in einer KVM zu verwenden. Die Probleme mit XFS traten dann und wann auf, wenn die KVM (aus welchen Gründen auch immer), unerwarteter Weise beendet wurde. I.d.R. konnte man das Filesystem wieder herstellen, aber mir hat es auch schon Zwei komplett zerlegt. Mit ext3 ist mir das noch auf keinem KVM-System passiert. Komisch... Normalerweise kenne ich das immer umgekehrt ;-)

Ich vermute mal, das einer der Gründe für die Probleme die fehlende Unterstützung in VIRT_BLK für Barriers ist. Das sieht dann mit dmesg z.B. so aus:

Filesystem "vda7": Disabling barriers, trial barrier write failed
XFS mounting filesystem vda7

Wenn ich die Sache mit den Barriers richtig verstanden habe, dann sind die dafür zuständig, das das Filesystem das darunterliegende Device informieren kann, wenn es Daten flushen, d.h. also wegschreiben soll. Wenn das nicht passiert und die Kiste säuft ab, dann kann das ziemliche Folgen für das Filesystem haben. Oft wird empfohlen, bei XFS die Option nobarrier zu setzen, um die Performance zu steigern. Das sollte man sich aber genau überlegen...

Update 20090206:

Zu dem Thema u.a. qcow2 vs. raw Format für KVM Images siehe auch hier:
Poor Write I/O Performance on KVM-79
Use writeback caching by default with qcow2
Re: Use writeback caching by default with qcow2
XFS FAQ

Interessant finde ich auch die Möglichkeit, LVM direkt als Laufwerk für eine KVM zu nutzen, wie in einem der Postings erwähnt wird (-drive file=/dev/vg/volume). War mir noch gar nicht bekannt...

Update 20090329:

Die XFS FAQ empfiehlt bei Qemu/KVM bei der -drive Option cache=none anzugeben, da hier anscheinend nicht mal auf einen fsync Verlass ist. Ich werde trotzdem bei ext3 als Filesystem in einer KVM bleiben.


Freitag Aug 01, 2008

Qemu, KVM, Anaconda - lvm: Cannot allocate memory

Nachdem ich gerade am Testen von Red Hat Enterprise 5 mit Qemu/KVM bin und mir Anaconda beim Initialisieren der Festplattenpartitionen die Meldung

lvm: Cannot allocate memory

um die Ohren gehauen hat, wollte ich die Welt teilhaben lassen an der Lösung ;-) Ich hatte Qemu gestartet mit

/opt/kvm/current/bin/qemu-system-x86_64 -hda rhel52.img -cdrom /opt/cds/rhel-5-server-x86_64-dvd.iso -boot d -m 256

Der Witz ist, 256 MB Speicher reichen nicht! Es müssen mindestens 512 MB sein. Ich hab's dann probiert mit

/opt/kvm/current/bin/qemu-system-x86_64 -hda rhel52.img -cdrom /opt/cds/rhel-5-server-x86_64-dvd.iso -boot d -m 640

und das funktioniert dann.


Freitag Mai 23, 2008

Weekly Links 20080523

From camera to website: Building an open source video streamer
Virtualizing without Virtualizing - Hier gehts um die schroot
Oracle: Choosing An Optimal Stats Gathering Strategy - Wie man mit dem Oracle Optimizer richtig umgeht, beschreibt dieser Artikel
Richard Footes Oracle Blog - Viele interessante Artikel und Statements für Oracle Admins
Creating charts on Web pages with Java and GChart - Charts und Graphen mit Java und GChart erzeugen
Introduction to Media Computation: A Multimedia Cookbook in Python - Das Buch hier liegt als PDF vor, ist aber schon von 2004.
RT: Request Tracker - Ein OpenSource Ticket System auch für größere Unternehmen, das schon länger am Markt ist.
LimitRequestBody: Apache Limiting User Upload File Size - Wie man die Uploadgröße einer Datei beschränken kann.
PostgreSQL: Converting tsearch2 to Postgres 8.3



Dienstag Feb 13, 2007

Today's Links

Command Line SMTP Mailer für Windows - Wer auf der Kommandozeile unter Windows Mails verschicken möchte, dem hilft dieses kleine Tool.
FreeCSSTemplates.org - Freie CSS Templates - und ganz viele davon ;-)
Here's a Way to Look for Extra Dimensions - Etwas mehr zu der "Theorie von Allem".
Five ways to use Windows apps in Linux - Eine interessante Übersicht über die Möglichkeiten Windows Applikationen unter Linux laufen zu lassen.
TagSoup - Ein Java HTML Parser, der nicht auf wohlgeformtes XML/HTML achtet, sondern auch mit Seiten umgehen kann, wie sie in der "freien Wildbahn" vorkommen (chaotisch eben ;-)...
Qt Jambi - Trolltechs Java Cross Plattform GUI
Speaking UNIX, Part 7: Command-line locution
Fldigi and amateur radio on Linux
A hacker's-eye view of Nokia's N800 Internet Tablet
100 Line Captcha JSP
Introduction to Microformats

Technorati Tags: , , , , , , , , , , , , , , , , , ,

 


Mittwoch Feb 07, 2007

Today's Links

Classic Commercials: Commodore VIC-20
Java 2007: The year in preview
Speaking UNIX, Part 7: Command-line locution
Manage your media library with Data Crow - Opensource Java Applikation mit der man grosse Bild-, Video-, Buchbestände usw. verwalten kann.
Tellico is a KDE application for organizing your collections. It provides default templates for books, bibliographies, videos, music, video games, coins, stamps, trading cards, comic books, and wines.
SCJP 5.0 Mock exams and links - Sun Certified Java Programmer Links
Postgresbook - Hans Jürgen Schönig und Ewald Geschwinde haben hier eine sehr interessante Informationsquelle über PostgreSQL zusammengestellt
Looking ahead to Nagios 3.0
New skins for Swing applications - Ein paar sehr schöne Skins für Java Swing
A03 Look And Feel - Ebenfalls ein sehr ansprechendes Skin für Java Swing
fastutil: Fast & compact type-specific collections for Java
Create uniform namespace using autofs with NFS Version 3 clients and servers
VirtualBox On FC6 / CentOS 4 / OpenSuSE 10.2
Create and Manage Virtual Machines Using VirtualBox (Ubuntu)
Create virtual Machines Using Virtualbox in Debian

Technorati Tags: , , , , , , , , , , , , , , , , , , , , , , , ,


Montag Jan 15, 2007

Today's Links

PG-Forum.de - Das deutsche PostgreSQL Forum
PostgreSQL Forums - Das englische PostgreSQL Forum
Deutsche PostgreSQL User Group
PostgreSQL Table Auditing module - Dieses Modul loggt Änderungen in einer Tabelle (insert, update, delete) mit.
PostgreSQL diff - Vergleicht zwei Schema Dumps und generiert eine Datei, um das alte Schema updaten zu können.
PostgreSQL Backup & Recovery - PostgreSQL Hotbackup mit dem pg_hotbackup Skript
A Primer on Spring's Data Access Object (DAO) Framework - Eine gute Einführung in das Thema
Common units in postgresql.conf - PostgreSQL 8.2 erlaubt nun Angaben in MB, KB und GB in der postgresql.conf
Firefox Extension Split Browser - Ermöglicht die Teilung des Browserfensters und das gleichzeitige Anzeigen mehrerer Webseiten.
dp.SyntaxHighlighter - JavaScript Syntax Highlighter
Nokia N800 Video Walkthrough
Desktop Virtualization with VMware Player and Workstation
The History of Hacking - Eine nette Videodokumentation (in Englisch). Lief irgendwann auch mal im Fernsehen.
Vinyl-Schallplatten digitalisieren - Kleine Anleitung dazu.
Linux Kernel in a Nutshell - Das Buch von O'Reilly gibt's hier zum kostenlosen Download
Flash MP3 Player / Flash FLV Player - Zwei sehr praktische und gut gemachte Flash Applikationen

Technorati Tags: , , , , , , , , , , , , , , , , , , , , , ,