Monthly Archives: July 2014

Mirage OS v2.0: The new features

The first release of Mirage OS back in December 2013 introduced the prototype of the unikernel concept, which realised the promise of a safe, flexible mechanism to build highly optimized software stacks purpose-built for deployment in the public cloud (see the overview of Mirage OS for some background). Since then, we’ve been hard at work using and extending Mirage for real projects and the community has been steadily growing.

Today, we’re thrilled to announce the release of Mirage OS v2.0! Over the past few weeks the team has been hard at work writing about all the new features in this latest release, which I’ve been busy co-ordinating. Below are summaries of those features and links to in-depth blog posts where you can learn more:

Thomas Leonard's Cubieboard2

Thomas Leonard’s Cubieboard2

ARM device support: While the first version of Mirage was specialised towards conventional x86 clouds, the code generation and boot libraries have now been made portable enough to operate on low-power embedded ARM devices such as the Cubieboard 2. This is a key part of our efforts to build a safe, unified multiscale programming model for both cloud and mobile workloads as part of the Nymote project. We also upstreamed the changes required to the Xen Project so that other unikernel efforts like HalVM or ClickOS can benefit.

Irmin – distributed, branchable storage: Unikernels usually execute in a distributed, disconnection-prone environment (particularly with the new mobile ARM support). We therefore built the Irmin library to explicitly make synchronization easier via a Git-like persistence model that can be used to build and easily trace the operation of distributed applications across all of these diverse environments.

OCaml TLS: The philosophy of Mirage is to construct the entire operating system in a safe programming style, from the device drivers up. This continues in this release with a comprehensive OCaml implementation of Transport Layer Security, the most widely deployed end-to-end encryption protocol on the Internet (and one that is very prone to bad security holes). The series of posts is written by Hannes Mehnert and David Kaloper.

Modularity and communication: Mirage is built on the concept of a library operating system, and this release provides many new libraries to flexibly extend applications with new functionality.

  • Fitting the modular Mirage TCP/IP stack together” by Mindy Preston explains the rather unique modular architecture of our TCP/IP stack that lets you swap between the conventional Unix sockets API, or a complete implementation of TCP/IP in pure OCaml.
  • Vchan: low-latency inter-VM communication channels” by Jon Ludlam shows how unikernels can communicate efficiently with each other to form distributed clusters on a multicore Xen host, by establishing shared memory rings with each other.
  • Modular foreign function bindings” by Jeremy Yallop continues the march towards abstraction by expaining how to interface safely with code written in C, without having to write any unsafe C bindings! This forms the basis for allowing Xen unikernels to communicate with existing libraries that they may want to keep at arm’s length for security reasons.

All the libraries required for these new features are regularly released into the OPAM package manager, so just follow the installation instructions to give them a spin. A release this size probably introduces minor hiccups that may cause build failures, so we very much encourage bug reports on our issue tracker or questions to our mailing lists. Don’t be shy: no question is too basic, and we’d love to hear of any weird and wacky uses you put this new release to! And finally, the lifeblood of Mirage is about sharing and publishing libraries that add new functionality to the framework, so do get involved and open-source your own efforts.

XCP Wiki Pages Have Been Migrated to Wiki.XenServer.org

XCP is Dead; Long Live XenServer!

Last year was a momentous year for all things related to the Xen Project.  2013 saw Xen Project become a Linux Foundation Collaborative Project.  It also saw the separate XenServer project become Open Source under the auspices of Citrix Systems.  And, as a result of that, the need for XCP — the free (as in “free beer”) version of XenServer — dissolved.  Since XenServer is now Open Source and available to all, XCP is superfluous.

Now, historically, the Xen Project Wiki has hosted the XCP pages.  But given the major shifts of the past year, coupled with the fact that XCP is not part of Xen Project but XenServer, the hosting situation has now changed.  From now on, the archive of XCP pages will reside on the XenServer Wiki.

Where Can I Find the XCP Pages?

You can find the XCP archive on the XenServer Wiki under the XCP category:

https://wiki.xenserver.org/index.php?title=Category:XCP

Why Did We Need to Migrate the Pages at All?  Why Not Just Leave Them As Is?

As part of the migration of Xen Project to the Linux Foundation, it is necessary to clearly delineate which things belong to the Xen Project as opposed to things which belong to other parties.  XCP is not part of Xen Project and it does not belong to Linux Foundation.  Therefore, it should not reside on Xen Project websites.  It makes perfect sense for XCP to be hosted by XenServer.org, since it always has been part of the XenServer effort.

Why Migrate Pages at All?  If XCP is Obsolete, Why Not Just Delete the Pages?

Just because XCP is obsolete, it doesn’t mean it is not used.  There are still many, many XCP users in the world, and they deserve access to documentation.  Eventually, they may become XenServer users and when that happens, the XenServer project can determine what to do with their Wiki pages.  But that is not the case now, so a transition is necessary.

So What Happens to All the External Sites Which Link to XCP Pages on Wiki.XenProject.org?

The original XCP pages are in process of being replaced with links to the new pages on Wiki.XenServer.org.  Most links are already in place, and the few stragglers should be handled in the next few weeks.  There is a temporary archive of the XCP pages on Wiki.XenProject.org which will be removed at the end of the process once all the pages have been linked and verified.

Why Do I Still See XCP Downloads on www.XenProject.org?

We are coordinating with the XenServer.org folks to make sure that the XCP downloads remain available during the time of transition.  Once the XCP downloads are available from XenServer.org, the downloads will disappear from www.XenProject.org.

What Happens If I Discover an XCP Wiki Page Which Does Not Exist on XenServer.org?

Contact me at russell (dot) pavlicek (at) XenProject.org and send me the link.  I will coordinate with the XenServer.org team to see that the page is migrated.

Mark Your Calendars! Great Xen Project Events Coming in August and September 2014

If you use — or are just interested in learning about — the Xen Project Hypervisor, you will want to mark your calendar now for two great events coming later this summer.

September 15: Xen Project User Summit, New York City, NY

The Xen Project User Summit is great for:

  • Users who employ Xen Project software in their datacenter or cloud
  • Integrators who leverage the Xen Project Hypervisor in their solution or service
  • Architects who need to know how to best utilize the software in their solution architecture
  • Managers who want to understand what current and future features will enable their goals

At just US$79 for one day of sessions, the User Summit is an unmatched training opportunity for users of Xen Project software. Located at the Lighthouse Executive Conference Center in the heart of New York City, this event is a fantastic way to increase your knowledge of all things relating to Xen Project.  The lineup of talks will be unlike any other event this year, so it makes sense to take a long weekend in Manhattan in September.

Plus, this will be the best event this year for Xen Project users to meet and greet one another.  Excellent things happen when the talents of the community are allowed to cross-pollinate at User Summit!

Expected topics will include:

  • What’s Coming in Xen Project 4.5
  • Understanding and Using Xen4CentOS
  • Xen Project on OpenStack in the SUSE Cloud
  • High Availability with Xen Project
  • Using Cloud Operating Systems
  • plus many more!

The full schedule will be announced shortly.

To register for User Summit, click here.

August 18-19: Xen Project Developer Summit, Chicago, IL

For those who delve into the innermost parts of Xen Project, there is the Xen Project Developer Summit in Chicago, IL USA in August.  Co-located with LinuxCon North America and CloudOpen North America, this two-day event is the place to be for those who write code for or around Xen Project.

Some of the topics at this year’s Developer Summit include:

  • Xen Project 4.5 Roadmap
  • libvirt support for libxenlight
  • Scaling Xen’s Aggregate Storage Performance
  • Xen on ARM: Status and Performance
  • An Overview of the Verizon Cloud Architecture
  • osstest, Xen’s Automatic Testing Facility
  • and much, much more!

Click here for the full schedule.

At US$99 for two days of highly technical talks, this is an extradinary value for Xen Project software engineers.

Click here to register for Developer Summit.

And Sponsorship Opportunities Are Still Available!

If your organization has a project, product, or service which would be of interest to either a group of Xen Project users or developers, there are still sponsorship opportunies available.  For as little as US$1000, you can get your name in front of a group of Xen Project users, integrators, service providers, and developers.

Send email to russell(dot)pavlicek(at)XenProject.org for more information.

And we’ll be looking for you at one of the Xen Project Summits this year!