VMware Embraces OpenStack Clouds, Docker Containers
Even if you can beat them, sometimes you join them anyway because that is easier and more expedient. And so at the VMworld event in San Francisco today, VMware CEO Pat Gelsinger announced that the X86 server virtualization juggernaut would be adopting OpenStack as an alternative cloud controller to its own vCloud stack and would similarly be embracing Docker software containers alongside of its own ESXi virtual machines.
VMware’s virtualization stack is starting to behave a little bit like the Ethernet networking protocol. At first, Ethernet fought against and vanquished many foes, but as it matured and the competition improved, the protocol merely absorbed any good idea that took hold in the market and extended its reach. (Fibre Channel over Ethernet, or FCoE, is one good example, and the Remote Direct Memory Access protocol from InfiniBand are but two examples.)
With over 500,000 customers using its virtualization tools in the datacenter already and over 80 percent of the world’s application software running atop the vSphere stack today, according to Gelsinger, VMware has one of the largest customer bases in the history of IT. About a year and a half ago, shortly after Gelsinger took over, VMware estimated that there were over 30 million VMs running atop ESXi, and that number has surely grown since that time; our guess is that if VM count tracks revenues, then it is about 40 million VMs now. About 6,000 of VMware’s 17,000 employees are software engineers, working on what Gelsinger referred to in his opening keynote at VMworld as “the most important piece of software ever delivered” and what his predecessor, former Microsoft executive and now Pivotal CEO Paul Maritz, used to call “the 21st century software mainframe.”
Contrast this with OpenStack, which is a far younger technology. There are probably several thousand actual OpenStack clouds in the world, and they range from having dozens to tens of thousands of VMs per cluster. (You can see the demographics of the current OpenStack base here.) If you do some guesstimating and don't include the Rackspace Cloud, the average OpenStack cloud has well north of 1,000 VMs. Call it somewhere around 2 million to 3 million VMs in total running across OpenStack clouds not including those that are running ESXi. (CERN has over 100,000 VMs running KVM all by itself.) The point is, VMware’s installed base of VMs is probably more than an order of magnitude larger than the entire OpenStack VMware base. What is easier – getting those customers to use OpenStack on top of ESXi or having customers port their VMs to KVM so they can use OpenStack? Those customers who are already using ESXi don’t want to change unless there are very large economic incentives to. Converting VMs is a hassle and the tools that do it are expensive.
VMware is no doubt counting on this. Its rise has been the kind of thing that startups dream of, and the fact that 22,000 people descended on San Francisco to attend VMworld is but one indicator of how important VMware has become in the datacenter. However, VMware, which now has a an annual run rate of around $6 billion in sales, can’t grow its customer base easily in the datacenter, but it can offer a broadening suite of capabilities that it brings under its management regimen. So embracing OpenStack and Docker, which have built up their own impressive momentum and energetic adherents in a relatively short time (like VMware a decade ago, in fact), is a smart move to blunt the attack of competitors while at the same time allowing VMware to make some money and retain its position as the execution environment and management layer in X86-based datacenters.
“Infrastructure is not an end to itself. It is all about running apps,” Gelsinger explained. “And today we have this changing app landscape and some believe that we need a new silo of infrastructure to run a third generation of apps. A new silo of infrastructure? No! That is the problem that virtualization was out to solve in the first place.” With the adoption of OpenStack as a wrapper for VMware’s virtualization tools, Gelsinger said that “developers that want to programmatically consume infrastructure through the OpenStack API can now do it using the best ingredients on earth from VMware.”
The resulting product will be called VMware Integrated OpenStack, or VIO for short, and it will include the core OpenStack components taken from the open source project. But it will not support the KVM hypervisor, as most OpenStack distributions do, VMware executives confirmed to EnterpriseTech. VMware will integrate the core OpenStack components with the appropriate parts of the vSphere and Virtual SAN stacks and harden the whole shebang. This is not just VMware making the ESXi hypervisor available to run next to the KVM hypervisor inside of an OpenStack cloud, something that has been available for a couple of OpenStack releases now. Instead, the Nova compute controller will plug directly into the vCenter console and the ESXi hypervisor to control virtual compute. The Neutron network controller will talk to NSX network virtualization, the Cinder block storage will bind to VMware’s Virtual SAN as well as third party data stores and the Glance image repository will be able to push and pull images out of Virtual SAN and these other data stores. The Swift object store will integrate with EMC’s ViPR software-defined storage and other open source object stores. The lesson to be learned from this is that OpenStack is just a framework for how the components of a cloud are controlled, but it does not prescribe any particular component for compute, networking, storage, or management. Over time, VMware will be integrating its vCenter Operations Manager and its vCloud Automation Center tools underneath it all, and the vCenter client and LogInsight log management software has already been integrated.
That VMware would roll up its own distribution of OpenStack is not exactly coming as a surprise to the OpenStack Foundation, which is the caretaker for the open source cloud controller project. “Customers not only want to run VMware software with OpenStack, but they have been doing it already,” Jonathan Bryce, executive director of the foundation, tells EnterpriseTech. “In some cases, they are VMware-only shops and in other cases they are running mixed shops with ESXi and KVM. This is great for customers that want to stick with VMware and yet still use OpenStack.”
The PayPal online payments division of eBay is one large enterprise that Bryce can cite that was not only a very early adopter of OpenStack, but has a lot of virtual machines running on ESXi and now controlled by OpenStack. While there is obviously a huge opportunity for VMware to sell its OpenStack distribution into its own customer base – the OpenStack layer will wrap around the existing virtualized servers and not require customers to port virtual machines to KVM – Bryce says that it will be interesting to see how this plays out. The lesson of OpenStack is that customers want loosely coupled services and lots of choice underneath cloud fabrics like OpenStack. “Customers want OpenStack to be the line between infrastructure and application,” says Bryce. “The key is to have choice below the line and consistency above the line.”
VMware has also committed to open source the code it uses to glue OpenStack to its own virtualization and management tools and is partnering with Canonical, Hewlett-Packard, Mirantis, Piston Computing, Red Hat, and SUSE Linux to make sure their OpenStack distributions can also wrap around the VMware virtual infrastructure. Canonical and Mirantis have had ESXi hypervisor support in their distributions (which is not the same thing as supporting the entire relevant VMware stack) and HP has just announced that its Helion OpenStack will support ESXi next to KVM as well.
The VMware Integrated OpenStack software is in private beta, and Mark Chuang, senior director of product management at VMware in charge of its software-defined datacenter (SDDC) efforts, tells EnterpriseTech that the VMware distribution of OpenStack is in private beta testing now and is based on the current “Icehouse” release of OpenStack mixed with the current vSphere 5.5 tools from VMware. (You might find it interesting to know that VMware has 21 developers dedicated to OpenStack, and that during the Icehouse release cycle, they did 414 commits and 3,770 patches and contributed 66,488 lines of code. This made VMware the fourth most active contributor to Icehouse.)
The production-grade version of VMware Integrated OpenStack will be available sometime in the first half of 2015, and Chuang says that this production release will also be based on OpenStack Icehouse. It is not clear when VMware will launch the ESXi 6.0 hypervisor and its vSphere 6.0 add-ons, but this software, which VMware did not talk about today at the VMworld event, is currently in beta and is expected before the end of the year. (ESXi 6.0 and vSphere 6.0 will likely launch at the VMworld Europe event in Barcelona, Spain in October, if we had to guess.) Over time, VMware will get more in synch with the OpenStack releases and will probably not lag by more than a month or two, a rhythm that Red Hat is also trying to get into.
In addition to the OpenStack distribution, VMware also revealed that it would be adopting Docker containers and the Kubernetes scheduler (sometimes referred to as a Docker framework, it depends on who you ask) for those containers.
The effort involves a partnership with Google, which has been using Linux containers in production for a decade and which has recently open sourced the Kubernetes tool and adopted Docker containers on the Google Compute Engine public cloud. VMware is also partnering with Docker Software, of course, which has created a virtual private server container for Linux operating system and an application packaging and management system to go along with it. Pivotal, the big data and application framework spinout of VMware, is also partnering with its former parent, and like Google, has experience in using containers to isolate workloads on the Cloud Foundry platform cloud it sells alongside of its Hadoop distribution. (Cloud Foundry was founded in 2009 by three ex-Google engineers who had experience with its homegrown container technology and who wanted to bring something like it to the masses.)
The Docker containers will run atop of ESXi virtual machines and the Kubernetes tool will be used to pod up bunches of containers that are managed together as a single unit (perhaps because they include all elements of a multi-tier application).
VMware is not announcing a timeline for when Docker and Kubernetes will be integrated with the VMware stack, but it is reasonable to assume that this integration will occur with a future ESXi hypervisor and very likely it will come out in beta with ESXi 6.0 when it launches or in an update shortly thereafter.
The company did talk about a related tool for Docker containers running atop ESXi virtual machines called “Project Fargo,” which Gelsinger said would allow a VM to deliver a container that is faster and more lightweight than that which you can do on a bare-metal Linux server. Project Fargo is in technical preview and allows for a fast differential cloning of running VMs that in turn have full stacks including containers wrapped around operating systems and their applications. It is like applying the concept of linked clones, but not just to snapshots but to live running VMs.
Chuang tells EnterpriseTech that Project Fargo can fire up one instance from a running VM in less than one second, while firing up a clone from a cold VM takes minutes. The memory consumption and storage footprint for the Fargo clone is lower than a clone VM because it uses a copy-on-write approach. Basically, the child VM only writes data to itself when that data is different from its parent, and that means the changes are isolated to the child and do not affect the parent. At some point, after perhaps three or four months of running the Fargo clone, the differences between the parent and the child can be sufficient enough for the child to be snapped free from the parent and stand on its own, and Chuang hints that this capability will be one of the features in Project Fargo. Any workload that has non-persistent desktop or server images will benefit from the instant cloning of running VMs, since they are by design not stored anywhere but rather propagated as needed.