Project Pacific: Kubernetes to the Core

August 26, 2019 Joe Beda

At VMworld this week, we introduced VMware Tanzu as our portfolio of products and services to transform the way enterprises build software on Kubernetes. The announcement included Project Pacific, our endeavor to embed Kubernetes into vSphere, which is currently in tech preview*. Project Pacific will put Kubernetes at the fingertips of thousands more vSphere users—even those that aren’t yet interested in Kubernetes or containers.

But more important is that by re-architecting our flagship product to include Kubernetes in the vSphere control plane, we will introduce a number of new benefits to users:

  • Application-centered management—today you manage thousands of VMs; Project Pacific will allow you to manage and apply policy at the application level. Project Pacific operates with concepts that are more meaningful for application developers and operators.
  • Converged VMs and containers on one platform—A consistent set of APIs and concepts is used across VMs and containers. You will even manage applications made up of combinations of VMs and containers.
  • Kubernetes interface—developers will consume cloud resources, such as clusters, disks, networks and more, via Kubernetes style APIs even though it’s vSphere underneath.
  • Familiar tools—Project Pacific will leverage the vSphere API and expose it as a native Kubernetes API. This means that the ecosystem of tools used to manage Kubernetes resources will also manage vSphere resources.

And we are just getting started. The team has innovative ideas for how we will continue to build on this base to offer an application centered platform that exposes the best of vSphere and enables VI admins to work *with* developers in a cloud-native way.

VMware Tanzu, including Project Pacific, seeks to make Kubernetes a utility—as available as electricity. We’re on a mission to help customers build a Kubernetes power grid based on a consistent implementation of open source Kubernetes and a declarative approach to cluster lifecycle management.  

Technical Overview

This all sounds great, but what is Project Pacific, really? It starts with what we are calling the Supervisor Cluster.

This is a special use Kubernetes cluster that is built into vSphere used to manage vSphere features. It is not meant as a general-purpose cluster but rather as a way to re-use Kubernetes API patterns to expose vSphere features (both existing and new). This cluster will be managed as part of vCenter and will serve as both the distributed systems kernel and API system for Project Pacific. In a very real way, vSphere is running on Kubernetes.

Another key technology introduced with Project Pacific is what we are calling vSphere native Pods. These are pods that will be hosted in lightweight VMs that run directly on ESXi. The deep virtualization capabilities of ESX and vSphere are brought to the container world. This has benefits on several fronts: efficiency, security and performance. In our testing, we found that, due to better scheduling CPU bound containers are projected to run 30% faster on PodVMs than on traditional vSphere VMs; containers on PodVMs have the potential to be 8% faster than containers on bare metal!

Next, Project Pacific will extend Kubernetes to expose native vSphere resources. By introducing Kubernetes Custom Resource Definitions (CRDs) for the vSphere resources we will expose the vSphere API in a Kubernetes native way. In this way users will be able to use (and write automation using) proven Kubernetes concepts.

Finally, we are introducing the idea of the Kubernetes Cluster Service. While the Supervisor Cluster is vSphere running on Kubernetes, the Kubernetes Cluster Service is Kubernetes running on vSphere. Kubernetes clusters will be easily created by teams matching the configuration and version needed by that team. These clusters will fit within the footprint allocated to the team. Behind the scenes, the lifecycle management of these clusters will use the Kubernetes Cluster API. This is an effort inside the Kubernetes community to be able to manage Kubernetes with Kubernetes. VMware engineers are helping to lead this project forward in the open.  

Just Getting Started

When I joined VMware about eight months ago, I had no idea that all of this was in the works. I’ve been lucky to be able to work with the team to help refine and solidify the exciting ideas that were already being developed. I’ve been impressed with the depth of creativity and ambition as the vSphere team looks to leverage Kubernetes to enhance and improve VMware’s premier product. As we share this project with customers and collect feedback and scenarios, I’m excited to see the innovation cycle continue.

* There is no commitment or obligation that technical preview features will become generally available.

About the Author

Joe is a Principal Engineer at VMware working in the Cloud Native Applications Business unit. Previously, he was a founder and CTO of Heptio, which was acquired by VMware. Joe is a co-creator of Kubernetes.

More Content by Joe Beda
Previous
Introducing VMware Tanzu Mission Control to Bring Order to Cluster Chaos
Introducing VMware Tanzu Mission Control to Bring Order to Cluster Chaos

With VMware Tanzu Mission Control, we are providing customers with a powerful, API driven platform that all...

Next
Welcoming Pivotal to VMware to Transform How the World Builds Software on Kubernetes
Welcoming Pivotal to VMware to Transform How the World Builds Software on Kubernetes

Pivotal and VMware have collaborated heavily in the last few years—co-developing software, taking products ...