book review – Virtualization with Xen by David E. Williams

As part of my learning process, I orderd “Virtualization with Xen” by David E. Williams and Juan Garcia. The book focuses on virtual machines based on the Xen technology.

An outline of the book is:

1. Introduction to Virtualization

 – what is virtualization, why virtualize, how does virtualization work, types of virtualization, common use case for virtualization

2. Introducing Xen

 – What is Xen, Xen’s Virtualization model, CPU Virtualization, Memory Virtualization, I/O Virualization

3. Deploying Xen

 – Instaling Xen on Free Linux, Installing the XenServer product family, other Xen installation methods, Configuring Xen

4. The Admin Console

 – Native Xen command line tools, XenServer Admin Console, Using the admin console

5. Managing Xen with Third Party Management Tools

 – Qluster openQRM, intalling openQRM, Enomalism, Project ConVirt and XenMan

6. Deploying a Virtual Machine in Xen

 – workload planning and VM Placement, installing modified guests, installing unmodified guest, installing windows guests, physical to virtual migrations of existing systems, P2V migration, importing and exporting existing VMs

7. Advanced Xen Concept

 – advanced storage concepts, advanced networking concepts, building a Xen cluster, XenVM migration, XenVM backup and recovery, full virtualization in Xen

8. Future of Virtualization

 – unofficial Xen road map, virtual infrastructure in tomorrow’s datacenter

Appendix A – glossay of terms

Appendix B – other virtualization technogies and how they compare

In my opinion, this is a good background book. It does help sort out some of the technology behind the OracleVM but much of the book does not apply. The cost justification argument is an interesting discussion but difficult to apply. The discussion that you can save in power and cooling cost per year by using two servers instead of five servers that are 15% utilized is a difficult argument to follow. For most data centers, the servers will not be turned off for a log period but retasked to another application. If an application server or web server were 15% utilized, clustering at the software layer would typically be done. This is probably the weakest part of the discussion but overall the book is a very good technical book. The discussion on consolidation, reliability, and security is a good one. Few people talk about security when they talk about virtualization. The discussion on memory and IO management is a very good description. Inside the Xen kernel is a way of partitioning IO so that one domain does not dominate all of the IO and the same is true for memory. The installation and configuration chapter is a good discussion that applies to the OracleVM but the Admin console an other tools does not really apply. The chapter on third-party management tools also does not apply to the OracleVM installation. The deploying a virtual machine in Xen assumes that you are using the Xen console and shows procedures and processes specific to this type of installation. This chapter does not match directly to the OracleVM installation process and procedures. The advanced Xen concepts chapter is probably the jem of this book.

Overall, the $60 for this book was money well spent. 200 of the 350 pages are relevant and well written. The two CDs that are included with the book contains a bootable image to install Xen on your computer as well as documentation and Linux packages for the management console. The distribution comes with Xen 3.2.0 and the Linux tools discussed in the book.