Virtualization with load-balancing and hot-failover: Done.

This is really going the last post of my series on Oracle VM Server / VM Manager on inexpensive hardware.

Last week a second Dell Power Edge arrived, followed by a little NAS/iSCSI System, the ES-2100 from Eurostor, which is rebranded Thecus N5200 Pro. I do link Eurostor because i made some very nice contact with their tech support.

After running the Oracle VM Server on a 2.4 GHz Core 2 Duo Xeon with 4 Gb Ram for about 70 days non-stop, we decided to do the next step: Incarnating a second server with a shared storage.

The one server runs an paravirtualized OEL5 with 2 GB Ram which itself runs an Oracle 11g test instance with medium load, a hardware virtualized Windows XP with 512 MB Ram that runs a Jetty with a few services and since 2 weeks a hvm Debian that serves as a mailrelay for that Exchange of ours… Which has a now really less load as SpamAssasin takes care of all.

Setting up the second Dell was flawless, nothing new.

The iSCSI was another thing… First i deleted the RAID6 as we decided to go for RAID5. Stupid me set disk usage to 100%, went for the weekend, came back on monday and saw: Wow, no space for the iSCSI target. Damn it, all timeplans went bazoo… So deleting the RAID once again and back to start, this time with 20% for Disk Usage (you never know) and 80% for one iSCSI target (if this was my machine, i really had a purpose for 1.5TB storage… but here.. *sigh*).

So, another 8 hours later, i bought a cheap 8 port Gigabit switch, set up the ES-2100 for link aggregation and connected it to both Oracle VM Servers.

I roughly followed the steps described here, but as i changed some steps, let me describe them:

  • Installed the iscsi tools with:
    rpm -Uvh iscsi-initiator-utils-6.2.0.742-0.5.el5.i386.rpm
  • Discovering and removing unused services like that:
    iscsiadm -m discovery -t sendtargets -p 139.185.48.249

    Example of removing a node:

    iscsiadm -m node -p 10.2.0.250:3260,3 -T iqn.1992-04.com.emc:cx.apm00070202838.b0 -o delete

    Listing the remaining:

    iscsiadm -m node

    and having a new partition under /proc/partitions after

    service iscsi restart

The ocfs2 cluster configuration is as simple as described in the linked Oracle document. I recommend adding names and ipaddresses corresponding to the one in /etc /ocfs2/cluster.conf to /etc /hosts, as the o2cb services won’t start otherwise. One thing Oracle forgot to mention is to open port 7777 on both machines in the iptables configuration.

At first i made the mistake to mkfs.ocfs2 the device and forgot to create a partition. This worked for whatever reason, but i destroyed the filesystem and created a partition with fdisk (new partition, primary, the whole thing).

Next, i didn’t follow Oracle but decided the following:

  • Unmount the /OVS on the first server (the one with all the vms)
  • Adding the following stanza to /etc /fstab:
    /dev/sdb1               /OVS ocfs2   defaults        1 0
  • mount -a
  • Mount the old /OVS to somewhere else and rsychned it to the new location. I reached transferrates around 20MB/s with concurrent writes from the other server. Not but for a inexpensive device like that little iscsi thingy.
  • Added the the new server to the pool.
  • Rebooted both servers, just to be sure that they come back healty.
  • Restarted all vms, which worked greated over the iscsi.
  • Tested load-balancing and live migration and what can i say: Wow, it works. Fast and flawless. Great thing.

So in the end we have a safe setup with hardware costs under 5k € and a setup time from about 6 or 7 days which brought some good knowledge and know-how. I think we wouldn’t have achivied this based on a VMWare solution brought by external consultants. Maybe that would have ended like the last Dilbert in that series ;).

To bring some variety to this blog, here’s a picture of the current setup:

our virtualization setup

I one of the google visitors or the 2 readers have any questions, feel free to ask 🙂

See the other posts here: 1, 2, 3, 4, 5.

| Comments (1) »

19-Feb-08



3 days with Linux

Since Tuesday i installed Debian Linux 4 times on my new Dell Vostro 200.

The choice of hardware was kinda stupid. I thought, well this thing is not a special thingy but plain standard. Well, seems, it isn’t.

The first setback was, that the Debian installer booted from CD-Rom but didn’t recognize it afterwards. Yippie… I had to change the SATA Bios settings from IDE to RAID which means in reality, to AHCI. 2 things changed: Debian can be installed from CD-Rom and the dualboot Windows went nuts, i.e. crashed with a BSOD, even in safe mode. Solution to that was first switching back to IDE mode, installing some Intel driver for RAID thingies (really, there’s no raid in the machine… *sigh*), switch back et voila.

Next thing: The ethernet controller was to new. It’s kinda e1000 but not yet supported in the current testing kernel. The driver can be downloaded at intels site. I’ve chosen to skip network while installation and downloaded a full image. If you want to install from a netinstall image and have no 2nd nic at hand, here you’ll find a precompiled module. The blogs seems well written, but i wouldn’t call the Vostro a bunch of crap. The thing is very low noise, with Windows XP rock solid (at least at my workplace {i actually have two of them, at work and now at home}) and i appreciate the Dell pickup service. Another great howto is presented at the Ubuntu forums.

The next closed source thing i installed where the ATI drivers from here without a problem.

The things that lead to multiple reinstalls where the decision between KDE and GNOME. I just wanted to test them and didn’t want to purge every single package afterwards. In the end i went for GNOME.

So now i have a Desktop with the preinstalled Vista on a one partition and my new all day Debian system on a fully encrypted LVM partition. The later one was really no big deal to create with the Debian installer. The whole filesystem is encrypted except a boot partition and a relatively big space which i wanna spent on virtual machines.

prego stated that i should spent some energy into compiz. I already are accustomed to continuous zoom in the whole desktop, some nice effects and semi transparent windows through Mac OS X, for that to say, but i didn’t want to add non “official” repositories. In the end, i give it a try and followed the instructions here and used the instructions for the xorg.conf from here without that Xgl thingies. What can i say: It works and looks great. The wobbling windows are hilarious 😀

For my photo collection i already installed digiKam, which is a great tool.

Next steps are migrating my email from Apple Mail.app to a local IMAP server. Anyone suggestions which email client to use?

A friend tried to convince me several times to reinstall my Macbook for good but i don’t want to. Things used to work and broke with an OS update. And no, i’m not using *any* of the OS X system hacks. I used to be able to upgrade from release to release (hell, the iMac made it from 10.3.8 to 10.5.1 without a problem) and all of sudden i’m back in windows times: Upgrade and you’re doomed. Suck my dick… I don’t wanna go this path ever again. And then there the recent developments with Apple. I’ve been wearing a t with “Think different” know for about 5 years, i always like their products, the integration of Unix and eyecandy. But the apps are getting worse with every new release the last months. Apples behaviour to make you pay for a simple software upgrade (sarbane oxley my ass…, i’m expecting the first bugfix to be payed because the OS is no abo related model). OS Xs unablity to encrypt the whole volume (it can encrypt your home folder in some silly image file) without external tools (recently, Truecrypt can do this.

Stop. Must… breath… again.

In the end, i think three days without much sleep were well spend.

As before, i’ll keep you updated, if you like 🙂

| Comments (5) »

08-Feb-08


Weird java generics…

Generics are not totally bad but one can write really creepy things:

final FutureTask<Collection<LeitungsachseTK25>[]> ft = new FutureTask<Collection<LeitungsachseTK25>[]>(
    new Callable<Collection<LeitungsachseTK25>[]>() {
        public Collection<LeitungsachseTK25>[] call() throws Exception {

Seems like XML and Java finally married… 😉

| Comments (0) »

07-Feb-08


Apple’s making me sick…

iTunes changing music tagged Soundtrack to Filmmusik, another thread and guess what, i experienced the same feature.

I really like some of the “i take care of your problems stuff” like don’t thinking in mp3 files anymore but in a collection but this is nuts. I choose soundtrack as a genre intentionally and nothing else.

I really do like Apples iTunes but thats way over the top. Why not randomly rename the songs instead? And please nobody tell me i have a problem with id3tags. I tagged every single file with id3tag v2.3 after encoding them with lame, the tags are correct. Bah, i think i’m gonna puke.

| Comments (4) »

04-Feb-08