Monthly Archives: December 2011

Xen @ Build a Cloud Day Boston

As I mentioned in the Xen Day post, was offered a slot at the Build an Open Source Cloud Day Boston. The Build a Cloud attendees were great. They were very engaged and asked lots of questions. The questions gave me a chance to cover several Xen topics that I tend to take for granted. In this post I’ll outline the talk that I gave and highlight some of the questions that were asked and discuss the answers.

The slides for the talk are available here:

I decided to name the talk “Why Choose Xen For Your Cloud?” so that I could cover the history of Xen in the cloud, specific architectural advantages of Xen, and then cover XCP and Project Kronos. I don’t think that a lot of people realize that “Global Public Computing”  (or Cloud Computing as we know it today) was an idea that led to Xen. In other words, the Xen hypervisor was the solution to the need to break up, isolate, and provide accounting for system resources. Xen was born in the cloud. It’s no surprise then that Amazon EC2, Slicehost (now Rackspace Cloud Servers), and many others have chosen Xen as the basis of their clouds.

As I mentioned about Xen Dom0 support getting into the mainline Linux kernel, I got my first question (something like) “Isn’t Xen support in the Linux kernel going away due to KVM?”. To which I answered no, but let me clarify.  The question makes more sense for someone who is both a Linux expert and virtualization novice since the Linux kernel community is very strict about what it allows into the kernel. For instance, multiple implementations of the same functionality will not be accepted, but an abstracted version that can support more than one specific implementation is often required (OpenVZ is not in mainline, but Linux container components, often inspired by OpenVZ concepts, are included) . The main reason that Xen Dom0 support and KVM are both in the Linux kernel is that Xen and KVM have different architectures. Xen is a type-!, stand-alone hypervisor and KVM is a type-2, integrated hypervisor (I dig into these concepts again soon). Next to further clarify, Xen the hypervisor will never be included in Linux nor is it intended to be. When Xen was first created the Linux kernel at the time was used as a basis, but in a very special way (as explained by Keir Fraser) – the kernel was cut horizontally and the low level bits became the Xen hypervisor and the top part became the first Dom0. The Xen hypervisor is first to the hardware, followed by guest domains (including Dom0), by intentional design and is a fundamental requirement for being a type-1 hypervisor.

Next, as I covered the basic architectural design of a Xen system and its security benefits I was asked to clarify the difference between a type-1 and type-2 hypervisor. I find that the best way to explain this in a practical way that others can quickly understand is by using VMware ESX (the bare-metal, type-1 hypervisor from VMware) and VMware Workstation (the workstation class, install on top of an existing OS, type-2 hypervisor from VMware) since VMware is very well known and people can understand the difference. This question and answer are a perfect lead-in for the architectural and security advantages of Xen. In short, Xen has a small, well-defined, clean, and disaggregatable trusted computing base. This is in contrast to type-2 solutions, but also in contrast to type-1 hypervisors that put more services (perhaps than necessary or desired) into the hypervisor itself. Xen has unique security advantages primarily due to its well-architected design.

Since we were given an hour and fifteen minute slot, the XCP slides are fleshed out a bit more than I have presented in the past. Fortunately, our Xen Day team had prepared some really great materials and I was able to easily leverage those materials and re-focus them for the Build A Cloud/USENIX LISA audience. In particular, it is important to note the XAPI class diagram and cover the basic structure in some detail. The idea being that it helps system admins become familiar with the terminology they will need to master the xe command, but also that these devops-minded admins will likely be interested in writing scripts/tools that make direct XAPI calls. XAPI is great API for the cloud.

The rest of the XCP discussion is centered around why XCP is a great cloud platform. One of the key concepts that XCP, Open vSwitch, and the management tools address is mult-tenancy (multiple independent entities that need to share the same cloud and yet be isolated). XCP really shines for this cloud-minded audience and at least a few people were convinced to skip out on some of the Build a Cloud Day sessions and attend some of the Xen Day afternoon sessions to find out more about XCP. Xen Day took a deep dive into XCP.

XCP and cloud orchestration is an incredible story especially considering that XCP 1.0 was released in 2011. XCP is used in the first commercially available OpenStack cloud from Internap. CloudStack, which is a mature and feature-rich product itself, has also added support for XCP. OpenNebula also recently added support for XCP.  XCP is a great de-facto open source platform to build a cloud on.

I’ve spent a lot of time (and presented in more detail) presentations on Project Kronos, which in a very short time has been developed and is nearing a initial release. Stay tuned to the blog for updates on Project Kronos status. Current documentation on installing and using Project Kronos is available on the Xen wiki:

Xen Day Boston

It was a cloudy day in Boston last week as hosted Xen Day Boston and CloudStack hosted Build an Open Source Cloud Day Boston.

Xen Day

First and foremost a big Thank You! to our Xen Day presenters: Patrick F. Wilbur, Steven Maresca, and Josh West. What a great and diversely talented team they were. I look forward to working with you all again soon.

You can read their bios on the Xen Day page, but let me tell you a bit about these guys and what makes them special. Pat lead off the day by presenting a condensed version of a Xen and XCP tutorial that is typically a day long tutorial itself.  Pat comes from an academic background with a lot of experience running training sessions and more famously as a co-author of “Running Xen”. His research is interesting because it takes a closer look at using virtual machines (virtual appliances more specifically) to provide a secure end-user system (secure academically, not just something to say in a commercial ;)).

Steve presented next about the Nuts and Bolts of XCP (especially its toolstack – XAPI). Steve has a day job as a systems analyst in an IT network security group at UConn. Perhaps more famously he is the lead developer of Zentific. Xen is his virtualization platform of choice because he can do *anything* with it. Steve did an amazing job covering the inner workings of XAPI, and why it is a great API. He also showed how easy it is to code against it  and provided example python scripts. He also described in detail how to use PXE to do automatic installs of XCP and guest VMs. The role-based access control (RBAC) explanation was also very good. (For more information see Marcus’ post on RBAC). Steve’s developer and systems background was a perfect match for the Xen Day as it was co-located with USENIX LISA ’11.

After an interactive demo session from the team –  installing XCP and doing a live demonstration of some of the XAPI possibilities, Josh West was up next describing a series of enterprise functional areas (Storage, High Availability/Fault Tolerance, Networking, and the Cloud) and their relationship to XCP. In other words, From the Data Center to the Cloud. Josh worked previously at TripAdvisor and set up a really neat XCP test lab for them. Josh’s real-life system administrator experience coupled with his passion for virtualization, the cloud, and Xen/XCP made his presentation of practical, real world use-cases amazing (some oohs and ahhs from the Xen Day attendees!).

Overall it was great to finally see some training material that is primarily focused on XCP!

The slides are available here:

We did not record the sessions, but we agreed that creating video tutorials and publishing these online later would be the better option. Watch the blog for more details!

Finally, we’d like to also say thank you to Citrix Bedford for providing hardware for use during Xen Day and also TripAdvisor for letting us use their test lab for preparation of the materials. (More on TripAdvisor and Xen Day). See also the video on the Xen Day page, where Ryan Pugatch goes into detail of how TripAdvisor is using XCP and why.

Build an Open Source Cloud Day

I’ll save the Build an Open Source Cloud details until another day, but until then - my slides here.

Improving the Project Kronos pages

We had a look at the documentation for Project Kronos, and decided that it needed some significant improvement, so there’s been a good deal of rewriting and restructuring.

You’ll now find a Project Kronos main page, with an introduction to the project, and a set of pages linked off it detailing the steps needed to go from a plain Debian or Ubuntu installation through to a working Xen + XCP implementation and working guest VMs.

We’ve also combined the documentation for Debian and Ubuntu into one set of instructions, noting differences where relevant.

Hopefully, this is going to make life much easier for people looking to try out XCP.

We’ve also tried to clarify the differences between the two ways of using XCP: as an ISO to install a complete system, or as a set of packages to set the XCP toolstack up as an addition to an existing Linux installation (as per Kronos).

TripAdvisor and Xen Day Boston 2011!, the world’s largest travel site, has donated access to their Xen Cloud Platform lab for the development of material for Xen Day!  They have built a fault tolerant 20TB SAN from recycled hardware to support their XCP lab infrastructure, using technologies such as DRBD and Pacemaker.  Come to Xen Day Boston 2011 and learn more!

TripAdvisor, headquartered in Newton MA, is currently hiring rockstar linux admins.  Systems Administrators at TripAdvisor get to take advantage of a non-silo environment which gives you the ability to touch a wide variety of technology across systems, networks, hardware, software, and storage.  Visit and apply today!

Improvements to Xen Documentation

Generated Xen Documentation

As you may remember from the last two Xen Documentation Days, we looked at creating Xen documentation from source. This has now been implemented and

are available from the website as well as in the Xen Wiki.

New and Improved Wiki

Xen has a new Mediawiki based wiki and most content has been migrated (a few less frequently used documents still need to be migrated). We put quite a lot of effort into making existing content more accessible through use of wiki categories. You can navigate the Wiki now by:

We expect that the Wiki will grow, but the Wiki content is already much more accessible than before. We don’t always know what you need: if you have a suggestion, just add a suggestion to the Talk/Discussion tab of a page. We still need to do quite a lot of work, such as:

  • Create more beginner documents
  • Refactor existing documents such as HowTos, Tutorials, etc. such that they can be more easily found (an example of how this will look like, can found under FAQs)
  • Create documents that help with performance tuning
  • Content that explain Xen’s Security functionality
  • Etc

I especially wanted to thank our passionate volunteers, who have helped migrate the content and started to translate wiki pages to other languages.

Services, Products, Projects and Case Studies

We also have re-worked the Xen Services, Products and Products Pages, which show Xen based Products, Projects, Services, Consultancy and Research. If you want to be added to these pages, please fill out this form.

We also introduced a page for Case Studies, that show why and how some of our community members use Xen.

XenSummit Asia Presentations and Videos are available

I have edited most of the XenSummit videos and started publishing them on the XenSummit Asia page. More videos will follow in the next few days.

Website Improvement Project

Now that we migrated all of our websites to Rackspace Hosting, we can start focussing on creating a new website. I would like to know what you think we need to fix: this we created as survey for you to let us know.

Letting the community know about Kronos

Now that we’ve got a page with instructions for Kronos on Oneiric (XAPI on Ubuntu), I was wondering about ways to let the community know that things are progressing. I’ve started with the simple step of adding some detail to the Xen page on the Ubuntu Community Documentation site, noting the availability of the new page. It could do with a good clear-out, but I don’t want to do that until we’ve got more, and better tested, instructions on the site.

Any other ideas are very welcome.