carloscastilla - Fotolia
Users forge ahead with Cloud Foundry-Kubernetes integration
Complementary roles for Cloud Foundry and Kubernetes are clear to IT pros, and the community plans to knit the two more closely together with the Eirini project.
PHILADELPHIA -- Cloud Foundry and Kubernetes users have reached a clearer understanding of how the PaaS and container orchestration frameworks will coexist.
When the Cloud Foundry user base and community contributors last met at Cloud Foundry Summit 2018, there were spirited discussions about which platform should have the upper hand in container orchestration. Since then, however, customers have put Kubernetes clusters into production alongside Cloud Foundry, and the Cloud Foundry community has renewed efforts to give Kubernetes feature parity with the native Cloud Foundry container orchestration tool, Diego, under the covers.
"Pivotal Cloud Foundry is mostly built for Spring containers, and developers wanted more flexibility to build their own containers with Docker," said a senior manager of platform engineering at a major mobile carrier who requested anonymity, here at the Cloud Foundry Summit. The company has both Pivotal Cloud Foundry (PCF) and the Kubernetes-based Pivotal Container Service (PKS) in production.
This carrier has used PCF since 2016, and it added PKS in 2018 in response to developers' desire for a less prescriptive container platform, the senior manager said. Those developers struggled to refactor large legacy monolithic applications to suit Cloud Foundry requirements, but wanted the flexibility and automation features that come with containers.
"When you don't provide capabilities as part of your internal platform, developers will go and build their own," he said.
As with many enterprises, other Cloud Foundry Summit attendees haven't yet rolled out Kubernetes in production. But most said they plan to evaluate it in 2019. Many regard the hype around Kubernetes as a distraction and say corporate developers should focus on business problems. These users find Cloud Foundry PaaS helps them solve these business problems.
"Kubernetes is the new fun toy," said Jessica Schniepp, senior product owner for cloud and security at Liberty Mutual Insurance in Boston. "But customers aren't asking for Kubernetes; they're asking for us to spend more time on business features and to be more secure. And we're still not sure how that relates to Kubernetes."
Container features native to Cloud Foundry still have value for some enterprises. Pivotal Cloud Foundry's versions of Diego and Garden container management, along with technical support from Pivotal, helped Nasdaq port Windows .NET applications into containers -- an area where Kubernetes still struggles.
Nasdaq also plans to evaluate PKS, but its most important role for Pivotal is to create and automatically manage application deployment pipelines onto containers through the Concourse continuous integration tool, said Bhavani Yellapragada, assistant vice president of quality assurance and DevOps at the financial services company in New York, in a presentation here.
"There are a million solutions out there to your technical problems, but what we wanted was to solve the people and process problems," she said.
Eirini to extend Cloud Foundry-Kubernetes integration
Jessica SchnieppSenior product owner for cloud and security, Liberty Mutual Insurance
Cloud Foundry Container Runtime, released in October 2017, linked Kubernetes with Cloud Foundry's BOSH infrastructure deployment tool, so Cloud Foundry could instantiate Kubernetes clusters. But there's still plenty of work to more fully integrate Cloud Foundry's popular Application Runtime, where developers deploy apps via the cf-push command, with the container orchestration platform.
That's where the Eirini project comes in. The effort remains in the incubation stage, but introduces a means by which Cloud Foundry can manage Kubernetes clusters interchangeably with Diego-based container environments, connect Application Runtime to Kubernetes infrastructure for automated application deployments through cf-push and manage existing Kubernetes clusters instead of just new ones instantiated by BOSH.
Eirini includes an Informer API that alerts parts of the Cloud Foundry control plane -- such as Gorouter for network management, Cloud Controller for infrastructure management and the Doppler monitoring tool -- when Kubernetes pods, nodes and containers have crashed. Eirini code has passed functional tests, but its project managers and Cloud Foundry Foundation officials were mum on when Eirini will reach general availability.
"There's a recognition in the Cloud Foundry community that people are already doing Kubernetes, and there's more Kubernetes in the public cloud than Cloud Foundry," said Tom Petrocelli, analyst at Amalgam Insights. "Eirini is an effort at making Kubernetes really work within Cloud Foundry instead of treating it like a hosted app."
Kubernetes still must mature to meet enterprise mission-critical app requirements, and service mesh -- an equally important component of cloud-native architectures -- remains a nascent market. Still, many enterprises will want a unified place to manage many IT automation control planes as they emerge, Petrocelli said.
For the mobile carrier with both PCF and PKS in production, service mesh maturity will be the key to a closer blend of Cloud Foundry and Kubernetes, which currently run separately in its environment. PCF version 2.5, released last week, adds Istio support that allows for weighted traffic routing within the Cloud Foundry infrastructure and supports canary deployments.
"It depends on Pivotal. If they add a common pattern in the future for deployment with Istio and Envoy through a cluster and platform-agnostic service mesh, then, yes, we will combine them," said another senior engineer at the carrier.