Beating my head on a brick wall is both less painful and more rewarding...

Okay, I went and bought a nifty 1U server for virtualization to replace my previous 1U which has a whopping 433MHz Celery combined with an even more whopping 128MB of RAM. But, hey, it runs FreeBSD--which is very happy to just sit there and run and run and run--I think my average uptime between reboots is something like 300+ days. This is true even on relatively small hardware by today's standards. As opposed to the resource requirements of the bloated pigs that now comprise any of the semi-stable ... err, "enterprise" ... Linucies.

But, you know what, I'm still using the Celery (uptime 131 days solely because it had to move cabinets) 4 months later ... grrrr.

So, my first foray into this was to look into Xen.

Which only runs Dom0 under Linux. Sighhhhhh. It's okay--I've got lots of RAM and disk for the bloated pig. Didn't we learn our lessons about monocultures from Windows? I guess not ... but I digress.

Get used to digression.  I know I sure have.  Mmmm .. yak shaving.  Yay!

Fine. So, I want to install FreeBSD into a DomU. Paravirt won't work, so I figure we'll go with fully virtualized. I've got the xVT extensions (made sure to buy a processor with them). So, time to hunt for documentation...

Let me say a special word about the documentation surrounding Xen. I've been at this computer stuff a while now (too long to admit). I've seen good documentation; I've seen bad documentation; I've seen no documentation. I can work with those.

Xen has to be the first case I have ever seen of documentation with *negative* information content.

The number of broken links, links with mismatched versions, links with complete garbage, contradictory advice, advice that couldn't possibly have worked, advice that worked briefly for four days after the second full moon of the month, etc. is absolutely *staggering*. It's amazing that anybody actually ever gets this working.

Oh ... wait ... they never actually do.

That's not entirely true. As long as you're just a *insert-specific-distro* fanboy and only ever run *insert-specific-distro* in both Dom0 and DomU, life is probably okay.

For those of us who might, you know, want to actually run something different in the DomU than is running in the Dom0, well we can just go shove something long, thick and unlubricated up where the sun don't shine. But I digress.

So, after plowing through far too much manure ... err, documentation ... I managed to get the right commands, setup and config. Launch and ...

Crash. At the boot stage. *WHAT?!?!?!* This is FreeBSD. It runs on 386 hardware for the love of Pete. It would take actively hostile programming to break FreeBSD at the boot stage. This can't be right. I have to have done something wrong ...

Alas, no. The Xen geniuses broke real-mode support in Xen 3.1. But only 3.1--not 3.0 or the not-yet-released-at-the-time 3.2. And only for Intel processors. Oh, and it's too much trouble to backport a fix from 3.2 to 3.1.

You have *got* to be kidding me.

The Cascade of Attention Deficit Teenagers development model strikes again. I mean, bug fixing, how gauche ... that's, like, actual work .. omygawd.

We'll kindly overlook the fact that it worked in 3.0 and all you had to do was *NOT BREAK IT IN THE FIRST PLACE YOU IDIOTS* (but, of course, *other* things were broken in 3.0). But, you know, that would require testing, how gauche ... but I digress and repeat myself.

So, I decide to give VMWare a shot. Qemu really doesn't get a look for various reasons (mostly host integration, but the fact that the developers have been taking forever to figure out how to use gcc4 doesn't fill me with confidence.)

Now, I like VMWare. I run VMWare Fusion on my Mac. I've got 6 different images on my disk--FreeBSD 7, CentOS 5, DeadRat7.3, and 3 XP images for various reasons. It works.

So, I set up to use VMWare. Of course, I have to run Linux as a host. Sighhhhhh. But I repeat myself.

Fire up VMWare Server, launch the install, watch the familiar FreeBSD installer, put in the network options. Boot. Done. Joy.

So, I put the system in the rack and let it chew for a while to see if we're good. Life seems pretty okay. The system is working reasonably well even if it is full emulation of everything because I've got *way* too much CPU to spare. Even better, VMWare Server 2.0 is in beta so I figure I'll give it a try to see what's coming and put FreeBSD on it so that I'm ready to make the changeover when the official release of VMWare hits. Awesome.

Pull VMWare server 2.0 and install. Fire up the control panel for VMWare ... huh? I didn't ask for a browser window. Uh, oh. Their new virtualization control requires a plugin which is effectively VNC running in Java in a Firefox plugin. And, it's broken. Because, of course, nobody ever tests on Linux because the majority share is the only thing that matters and that's Windows and Internet Explorer. Aren't monocultures wonderful? But I repeat myself.

Okay, that's not happening even if it *wasn't* broken because I'd have to maintain a main instance with full X11 support and I'd have to administer everything remotely graphically. No. I use FreeBSD so that I can beat on things at the command line through a text console--requiring VNC is a non-starter. So, I go hunting for the command line tools to control Server 2.0 like I could for Server 1.0.

They don't seem to exist.  F*** me.  This is *not* happening.

Oh, yes, you guessed it. They clobbered not only the tools but the entire *API* so you can't even write your *own* tools. Even worse, the graphical console thing is only a stopgap and doesn't have all the functionality. Only VI Client will have all the functionality and, of course, will be available in your choice of OS:

Windows, Windows, or Windows.

Head ... meet wall.  Wall ... head.

The suggestion, of course, is to stay with VMWare Server 1.0 which runs and has the functionality I need. The problem, of course, is the fact that it relies on compiling a couple of kernel modules. But that's okay because we all know about the Herculean effort Linux puts into maintaining binary compatibility on kernel API's.

Err. Maybe not. What's going to happen is that those modules are going to break. Sooner rather than later, probably. At which point, VMWare is going to kindly fix and recompile those kernel modules, right?

It's okay. I'll wait here until you stop laughing. Hopefully you didn't destroy a keyboard with a beverage coming out your nose.

Fine.  Toss VMWare on the trashheap.  Now what?

Well, it looks like back to Xen. Do I have *any* other options that are looking any better? Actually, yes. During this time (4 *months*), OpenSolaris seems to have managed to somehow approach something resembling an operating system and runs Dom0. Rock. I've been wanting a real filesystem for a while now, and ZFS certainly fits the bill. Zones would probably be useful for most of the things that I would want virtualization for, but hopefully I can still launch a full virtualization environment. And I get DTrace as a bonus! Since things are still beta I'll pull the latest development snap as that should be completely up-to-date.

So, go pull the DVD, install ... churn churn churn ... start the xVM kernel.

And realize that it's Xen 3.1 ... again.

Bang ... ouch ... bang ... ouch ... bang ... ouch.

Ahhhhh, that feels sooo good ...

-a





--
[email protected]
http://www.kernel-panic.org/cgi-bin/mailman/listinfo/kplug-list

Reply via email to