Cloud Foundry Advisory Board Meeting, May 2018: Kubernetes CPI and App-AutoScaler

by Roger StrukhoffMay 17, 2018
The call introduced a solution to deploy Cloud Foundry workloads to Kubernetes and a system to adjust computation resources for CF apps.

Dr. Max

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

Dmitriy Kalinin

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

BOSH Kubernetes CPI’s GitHub repo

 

App-AutoScaler

Bo Yang

Another brief demo was presented during the call by Bo Yang of IBM on App-AutoScaler for Cloud Foundry. The project was started in June 2016 with contributions from IBM, SAP, and Fujitsu.

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

A high-level architecture of the App-AutoScaler components presented by Bo Yang

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.

App-AutoScaler’s Github repo | Pivotal Tracker

 

Service Fabrik Broker

Ashish Jain

Ashish Jain from SAP provided some updates on the Service Fabrik Broker in addition to what he highlighted during the CAB call in September 2017.

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

Service Fabrik Broker’s GitHub repo

 

Some updates on CF-Extensions

CAB call’s leader Dr. Max also happily reported a few developments under the CF-Extensions initiative:

  • 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.”

A high-level architecture of MultiApps (Image credit)

 

What’s next?

Dr. Julz

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

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!

 

Further reading