Foreword by Paul Vixie

From PrgmrWiki

next: Acknowledgments|right

    Virtualization is cool. I’ve always had a soft spot for virtualization, since as a
lifelong sysadmin I get pretty tired of the endless fine-tuning that goes into
building a successful network “host.” Especially when that fine-tuning evolves
into upgrades involving screwdrivers, recabling, and dust.

    While Xen wasn’t the first serious virtualization platform, it was the first
serious open source virtualization platform, so it was the first that I was willing
to invest my time in learning about, and the first I’d consider basing any
production-level systems on. Open source isn’t just a preference for me—I
dislike lock-in, so I hardly ever buy or deploy or depend on something that I
couldn’t replace with a different product offered by a competing vendor
sometime in the future.

    Like any serious open source system, Xen has the power of an ecosystem
in which anybody who wants to vend can pick a spot and start hacking, but
Xen also has the backing of a strong company whose employees contribute
to the open source version of their product. This kind of vertical openness
makes it possible for anyone (a hobbyist or a Fortune 500 company) to jump
into Xen, buy only what they want or need (or just get it all for free), and
have it remain compatible with the rest of the ecosystem. Thank you,
XenSource and Citrix, for all this.

    Confession time: I don’t use Xen for any of my personal projects. I just
don’t have enough systems in any one location, nor can I plan far enough in
advance—I’m too small to be able to afford virtualization’s efficiencies.

    Whenever I do need separation of privilege on the same physical servers,
I’ve been able to get away with FreeBSD jails or User Mode Linux. I also do
a fair amount of real-time work, in which I need my code to be close to the
hardware for design—and sometimes performance—reasons.

    For professional work, my company uses a mixture of proprietary
(VMware) and open source (Xen) virtualization and the results are outstanding.
Whether it’s to save money on hardware, save money on sysadmin
time, or enable new kinds of computing, virtualization is a winner and it’s
here to stay. I’ve seen Amazon and Google build gigantic clouds of virtualized
servers for their own use and for rental to customers, and this method has
driven down IT costs for both new and established companies of all sizes. It
probably saves power and lowers the industry’s carbon footprint as well.

    I’m struggling to find a way to communicate how amazingly cool this is.
We try to write programs that fit into a single process, but they end up taking
a whole Unix system because of all the processes and databases and shell
scripts and file systems and UIDs they slop over. So we end up dedicating
physical servers to applications that have no performance- or security-related
reason to be on dedicated servers; but each one takes up some rack space
and some sysadmin time, and each one generates some minimum amount of
heat, and so on. Then along comes virtualization, and we’re back to adding
physical servers only when we’ve got a good reason to do so, which usually
means for capacity reasons.

    Note that while I admire cloud computing, I also fear it. Amazon and
Google have their own virtualization APIs, and anyone who builds “version 1”
of a system to live inside one of these commercial clouds is probably signing
up to put “version 2” into the same cloud. Competition requires differentiation
and most vendors want to be different in capability, not just in cost
efficiency. In other words, lock-in is great for sellers but not so great for
buyers. Thus my attraction to enterprise virtualization—and specifically to
open source enterprise virtualization, with the resulting vertically open
ecosystem. I’ll build my own clouds whenever I need them—and with Xen,
so can you.

    A word about Luke. He was a kid who lived down the street from my
sister, and she asked me to give him a chance. So I hired him at an anti-spam
company called MAPS (yes, that’s spam spelled backwards, pretty neat,
huh?), and he turned out to be a dumbass kid, like we all were at that age.
In the time since then, he has distinguished himself as a virtualizer and now,
with this book, as a writer. Xen is cool stuff, but it’s also deep and wide and
dense—that is to say, it’s a hard topic. Luke and Chris have unscrambled Xen
into the linear form of a printed book in about the best way I can imagine
anybody doing it, and I learned quite a bit about Xen from reading my
advance copy. The book is also fun to read without the fun being distracting
or dilutive.

Go forth and virtualize!


Paul Vixie
La Honda, California
September 2009