Cloud Foundry Advisory Board Meeting, May 2018: Kubernetes CPI and App-AutoScaler
The BOSH-Kubernetes saga continued during Cloud Foundry Community Advisory Board (CAB) call in May. The call featured two demos of the new BOSH Kubernetes CPI project and App-AutoScaler.
In addition, Dr. Max highlighted some developments under CF-Extensions, while his colleagues delivered updates on the ecosystem’s projects.
BOSH Kubernetes CPI
BOSH Kubernetes CPI aims at allowing BOSH to deploy Cloud Foundry workloads to Kubernetes clusters. Dmitriy Kalinin said the project flows from the fundamental question, “what if we could use BOSH capabilities for installing, configuring, and updating workloads to accommodate Kubernetes container orchestration?”
In turn, this question was prompted from the difficulties of using Kubernetes—designed as an orchestrator—to function as a PaaS or an IaaS, even though it’s not designed to be used this way. Rather, Kubernetes offers a set of primitives, such as pods, persistent volumes, and other concepts that support processes.
BOSH, on the other hand, is designed to communicate with infrastructure through its CPI, while also serving as an orchestrator and full-blown toolchain for life cycle management, Dmitriy pointed out. “So, how can we best position BOSH with regards to Kubernetes?” he asked.
“BOSH is well-established to handle workloads. What if we use it to manage workloads on top of Kubernetes? We can try to hide boring Kubernetes primitives from you, so you don’t have to worry about all the tiny little details.” —Dmitriy Kalinin, Pivotal
Dmitriy provided a couple of brief demos about installing and deploying within the BOSH Kubernetes CPI environment. The work will continue on this project in an attempt to:
- improve cluster management
- provide better integration with Kubernetes networking
- optimize sharing credential management between Cloud Foundry and Kubernetes
Bo described an autoscaler as software the automatically adjusts the number of Cloud Foundry application instances through:
- dynamic scaling based on application performance metrics
- scheduled scaling based on time
The App-AutoScaler comprises the following components:
- an API server, which provides public APIs to manage scaling policy
- a service broker, which implements the Open Service Broker API
- a metric collector, which gathers raw metrics from Loggregator and manages container’s memory usage
- an event generator, which aggregates memory metrics, evaluates scaling rules, and triggers events for dynamic scaling
- a scheduler, which manages the schedules in a scaling policy and triggers events for scheduled scaling
- a scaling engine, which takes the scaling actions based on dynamic scaling rules or schedules
According to Bo, the team plans to create a dashboard, remove its current dependency on Consul, migrate to Loggregator v2, support custom metrics, improve performance towards a goal of supporting 10,000+ applications, and extend its functionality to Kubernetes.
Service Fabrik Broker
According to Ashish, Service Fabrik Broker for now:
- is now compliant with the OSB API
- features integration with BOSH v2.0
- has an update window of scheduled service instances
- provides a Cloud Foundry CLI for backup and restore
- has a “pre-update” API
Some updates on CF-Extensions
- A Cloud Foundry service broker for Microsoft SQL Server, which was presented during the CAB call in March, has been accepted as an incubator project.
- SAP has proposed an application life cycle management solution for Cloud Foundry called “MultiApps.”
During the call, it was also mentioned that Abby Chau of Pivotal is the proposed new lead for the CLI team and Julian Friedman (Dr. Julz) of IBM is leading Project Erini, previously known as the Cube project.
Chip Childers of the Cloud Foundry Foundation informed attendees that the Call for Papers for the European Cloud Foundry Summit 2018 closes on June 1. The summit will be held in Basel, Switzerland, on October 10–11.
The next CAB call is scheduled for 8 a.m. Pacific Time on Wednesday, June 20. As always, the call will be open to anyone who is interested in listening or participating. Connection details and the monthly agenda appear on the Cloud Foundry Slack channel.
Want details? Watch the video!