Three new projects surfaced in the last month to make Kubernetes easier to run on various infrastructures and to integrate with apps.
These Kubernetes open source projects -- ksonnet, Istio and Kubermesh -- focus on different layers of the orchestration tool's architecture. Ksonnet, rolled out last week by a consortium of companies led by Heptio, aims to help developers more easily run applications on a Kubernetes infrastructure. Istio, whose marquee contributors include Google, IBM and Lyft, will address common problems with how microservices communicate in Kubernetes clusters. And Kubermesh is a reference architecture created by an e-commerce firm in the U.K. to automate Kubernetes networking on a bare-metal infrastructure.
Online document sharing and collaboration firm Box has used Kubernetes in production for the last 18 months, and it helped Heptio develop ksonnet, said Sam Ghods, its co-founder and solutions architect. It addresses Kubernetes API objects, which declaratively describe an application and its required infrastructure. These objects are flexible, but are also very verbose, he said.
"A developer trying to use those objects has to learn a lot about pods, replica sets, deployment and service objects," he said. "It's a somewhat steep learning curve for a developer to learn how to author them and submit them to the Kubernetes server."
Box open-sourced a tool called kube-applier in April to help developers more easily submit API object configurations to the Kubernetes API server. Ksonnet is intended to make the objects themselves easier to write, package and distribute.
Box also plans to follow the Istio project launched last month in the hopes it will mature into a tool that can manage microservices more easily on Kubernetes, though Istio isn't limited to Kubernetes-based deployments.
"If I have a bunch of services, how do they communicate with each other?" Ghods said. "In general, in cloud engineering, that problem sounds simple, but has about a dozen complicated concerns that almost every company builds on their own, and it's a huge waste of engineering effort."
These areas of concern include service discovery, authorization, load balancing and managing multiple instances of a microservice, to name a few. It will take time for Istio to develop into a Kubernetes open source tool that enterprises will implement, of course; a 1.0 release is expected later this year.
Ocado creates Kubernetes open source architecture
Another recently released Kubernetes project is Kubermesh, the brainchild of engineers at an online grocery delivery service called Ocado, based in Hatfield, U.K.
Kubermesh is more of a reference architecture on how to combine multiple existing open source projects, rather than a pool of original source code. It uses CoreOS' bootkube and bootcfg to launch Kubernetes clusters, Quagga for software-based network routing, CoreOS flannel customized to create an IPv4 network overlay on IPv6 infrastructure, and other standard Linux network tunneling components.
"No one's put all these things together in this way before," said Mike Bryant, senior developer on the Kubermesh project for Ocado.
The combination of tools will result in a self-healing, self-provisioning Kubernetes cluster that can run workloads on bare-metal servers in Ocado's delivery warehouses. If all goes according to plan, the infrastructure will run and scale up and down without manual intervention, except to provision the first server node and network cables and plug in new server hardware to expand the cluster.
Ocado currently runs Kubermesh as a proof-of-concept combination of Kubernetes open source tools, but predicted its future grocery warehouses will not be built to accommodate a separate data center building nearby, thanks to the architecture. The primary impetus for Kubermesh is to reduce data center costs, but it will also improve performance on a distributed server cluster attached directly to low-latency fiber, rather than to a hierarchical routing infrastructure.
Kubernetes is an open source platform, which lets companies from tech giants to startups innovate atop the core code. Check out other projects and products, including Microsoft's Draft for cluster management, Pivotal's PaaS integration with CloudFoundry, and eBay's future release for OpenStack and Kubernetes management.