Cloud Foundry Advisory Board Meeting, May 2017: Kubo, UniK, and BBR
Best of both worlds?
Kubo provides “a uniform way to instantiate, deploy, and manage highly available Kubernetes clusters, using BOSH, on any cloud,” said Google’s Eric Johnson during a discussion of the new initiative during this month’s Cloud Foundry Advisory Board call.
Kubo was announced by its developers, Google and Pivotal, in March. It is now being considered for incubation by the CF Foundation as part of the recent CF-Extensions program being driven by IBM’s Michael Maximilien (aka Dr. Max), who also leads the monthly CAB calls.
Addressing Kubernetes shortcomings
The Kubo’s project lead is Pivotal’s Alejandro Goyen. The idea behind it apparently sprang from a mutual interest within the Kubernetes and Cloud Foundry communities to solve some Kubernetes issues while extending BOSH to Kubernetes. The goal is to have a standalone BOSH release for Kubernetes, “away from Cloud Foundry itself (and not dependent on it),” according to Eric.
In framing his overall presentation, Eric mentioned a few “unresolved (Kubernetes) problems” that have drawn the interest in creating Kubo:
- High availability (HA). This is the Big Kahuna, given the desire by Google (the company that developed Kubernetes) and Kubernetes backers to reach large enterprises and their big applications and services. The key issue is that Kubernetes lacks fault tolerance for the underlying infrastructure.
- Scaling. In a related problem, Kubernetes also can’t scale actual VMs, even as it scales services within them.
- VM self-healing. The problem continues with health checks and balancing workloads, which Kubernetes can only do on the so-called worker nodes. (There is a related issue with a master or etcd failure in Cloud Foundry, according to the Kubernetes proposal, which Dr. Max comments on.)
- Upgrades. “Rolling upgrades (of Kubernetes) on a large fleet of clusters is hard,” Eric pointed out. The idea here would be to have BOSH to provide rolling upgrades of Kubernetes.
“Kubernetes doesn’t really pay attention to the infrastructure running underneath it. If you lose a VM, for example, Kubernetes won’t notice.” —Eric Johnson, Google
“I think this is a huge limitation and one that forced the CF Diego team to move away from etcd and Consul.” —Michael Maximilien, IBM
The Kubo vision is to offer the “Day 1” ability to deploy Kubernetes clusters over BOSH, and the “Day 2” (ongoing) abilities to provide self-healing VMs and handle HA and elastic scaling, as noted above.
Two other projects were discussed during the call, as part of Dr. Max’s ongoing effort to feature non-core innovation within, and of interest to, the Cloud Foundry community. The first was the UniK project, and the second is called BOSH Backup and Restore (BBR).
UniK has the goal of running a single application with a single user on a single service. A few kilobytes in size, compared to the gig+ size found in VMs, UniK also provides “a tiny, custom attack surface,” according to Idit Levine, CTO of the Cloud Management Division at Dell and a member of the CF Foundation’s Technical Advisory Board.
Idit noted the long history of UNIX and Linux, which has resulted today in a complex kernel, as diagrammed below.
In contrast, UniK eliminates layers of the traditional cloud stack to “focus only on what’s important,” Idit said, allowing developers to “build anything and run anywhere.” It is an open-source project written in Go, and can be used in embedded IoT devices, as well as individual systems and clouds. It is also currently integrated as a back end to the Cloud Foundry runtime (as shown below), with a planned integration to Garden.
BOSH Backup and Restore
The BOSH Backup and Restore project (BBR) was presented by Pivotal’s Therese Stowell, who explained that this framework orchestrates backup/restore by calling scripts and moving backup artifacts.
She said the next steps for BBR are to open source it, work with the release authors to increase adoption, improve its communication and orchestration abilities, and optimize various other aspects of it.
Meanwhile, within the core…
A few project updates within the core Cloud Foundry development were also discussed during the call. One was the news from IBM’s Julian Friedman that work has started to port Garden-runC to Windows, and that the initial stories have started on the Open Container Initiative (OCI) buildpack proposal.
Dr. Max also reported that the BOSH team is working on support for BBR, and that DNS v2 work is continuing.
Summit is coming up
This was the last call before this year’s Cloud Foundry Summit in Silicon Valley, to be held June 13–15. Discussion of the summit noted that the CF Foundation’s new certification testing will be available, as will specialized training from several companies:
- Cloud Foundry for Beginners: From Zero to Hero (by Armakuni)
- Microservices on Cloud Foundry: Going Cloud Native (by Altoros)
- Operating a Platform: BOSH and Everything Else (by ECS Team)
- Logging and Monitoring (by Altoros)
There will also be a hackathon, with three winners announced at the summit. The prizes? “Robots,” according to Chip Childers, CTO of the CF Foundation.
The CAB call is usually not held in June, given the summit’s presence, which would put the next call on Wednesday, July 19, 8 a.m. Pacific Time. One and all are encouraged to participate and join the Slack channel.