Now, you, too, can run complicated applications super-efficiently inside of Google data centers, thanks to a new tool in the company’s public cloud called Google Container Engine.
See, Google knows a good bit about scheduling a wide variety of applications to run simultaneously in its data centers, having run popular web services for so many years. This year, Google shared some of its knowledge with the world in the form of the open-source Kubernetes container-management software. Today, it’s going one step further by introducing the Container Engine, which amounts to a hosted version of Kubernetes running on the Google Cloud Platform.
Sure, you could do the hard work of putting an open-source technology like Kubernetes in place yourself on Google’s cloud, or any other cloud, for that matter. But Googlers have tuned Kubernetes to run applications well on the Google cloud infrastructure. One could argue that because Kubernetes came out of Google — as a stripped-down variation on its Omega scheduler for internal usage — it’d be worth seeing what Google has cooked up.
That’s especially true now that hordes of developers have become hip to a style of computing that Google has done in its data centers for years — inside “containers” that abstract away the details of the infrastructure on which applications run, in lieu of widely used virtualization technology. The startup Docker gets credit for making containers cool, but Google has been quick to capitalize on the fascination and come up with Kubernetes as a container-management tool.
“We knew over time we wanted to get people [embracing] the container-management paradigm and be able to put these incredibly powerful systems into their apps and just manage them in ways never imagined possible,” Craig McLuckie, a senior product manager at Google, said in an interview with VentureBeat.
Other technologies can manage the deployment of applications packaged up in containers, including Fleet from the startup CoreOS and Marathon, which the startup Mesosphere backs. But many cloud providers and cloud software providers, including IBM, Microsoft, Red Hat, and VMware, have allied with Kubernetes, suggesting that it could have long-term viability as a tool for running containers across various infrastructures.
And Google actually wants to see that with Kubernetes and Container Engine, even if at first glance it might not make sense for the company to be supportive of the idea that applications run in multiple clouds.
“You’re not locked into the Google Cloud Platform — that’s very important to us,” McLuckie said. “Most of our customers want multi-cloud. They want hybrid cloud. They want to have relationships with multiple providers. Most of our serious enterprise customers are looking to use other cloud providers as well. Our ambition is to create a technology that works very well everywhere. But it works extremely well on the Google Cloud Platform.”
That thinking lines up with a trend that’s played out recently: vendors attempting to capitalize on deployments of applications across clouds. What’s more, the position represents an implicit agreement with the philosophy behind a fundamental characteristic of containers: that they can run anywhere, independent of the details of the underlying infrastructure, in accordance with business needs.
McLuckie sees the container model as the second generation of cloud, following years of using virtual pieces of physical servers.
“For us, we think we’re at the very early stages of this journey,” McLuckie said. “We believe the ultimate destination is a profoundly different way of thinking about application development, management, and operations.”
People can try out the Container Engine for free in what Google is calling an open alpha. Pricing details will come later.