What is Cloud Foundry Container Runtime (CFCR)?

A Kubernetes (K8s) cluster is comprised of two types of (virtual or bare-metal) machines:

Master — one or more (due to high-availability requirements) node which contros all aspects of the apps containers’ life cycle from scheduling through running to termination.

Worker nodes — where the apps will efectvelly be executed. Each will topically run multiple container instances up to its full hardware capacity (vertical scalability).

But how do these nodes are provisioned and is K8s itself deployed on them — in the first place? One can count on Cloud Provider’s managed K8s services, such as Google GKE, Amazon EKS, Microsoft AKS, Alibaba ACK and others, but they all expose differences wrt. monitoring, high availability, node grouping and auto-scaling, and more importantly, which version of K8s.

CFCR comes in handy when one wants to provision and manage their own K8s clusters leveraging VMs offered by one of the many supported Infrastructure-as-a-Service (IaaS) providers either on Cloud or on-prems. After installing BOSH[1] Director on one VM, one uses it to provision all other VMs, creating as many K8s clusters as needed, in any desired topology (Masters and Workers).

CFCR (via BOSH) does for K8s what K8s does for your containers: provisioning, self-healing, and lifecycle management. It’s really cool!

Finally, it’s worth noting that an intereating project called Kubernetes Cluster API is aiming to provide the same capabilities offered by BOSH above. It still is a prototype as of Dec 2019 but I’d recommend keeping one eye on it.

Author: Aditya Bhuyan

I am an IT Professional with close to two decades of experience. I mostly work in open source application development and cloud technologies. I have expertise in Java, Spring and Cloud Foundry.

Leave a Reply

Please log in using one of these methods to post your comment:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out /  Change )

Google photo

You are commenting using your Google account. Log Out /  Change )

Twitter picture

You are commenting using your Twitter account. Log Out /  Change )

Facebook photo

You are commenting using your Facebook account. Log Out /  Change )

Connecting to %s