Kubernetes
Kubernetes (commonly stylized as K8s) is an open-source container-orchestration system for automating deployment, scaling and management of containerized applications. It was originally designed by Google and is now maintained by the Cloud Native Computing Foundation. It aims to provide a "platform for automating deployment, scaling, and operations of application containers across clusters of hosts." It works with a range of container tools, including Docker.
Source: https://en.wikipedia.org/wiki/Kubernetes
Position on the Adoption Curve
Presentations about Kubernetes
Chick-Fil-A: Milking the Most Out of 1000's of K8s Clusters
Chick-Fil-A: Milking the Most Out of 1000's of K8s Clusters
CRI Runtimes Deep Dive: Who's Running My Kubernetes Pod!?
Forced Evolution: Shopify's Journey to Kubernetes
Better DevEx at Netflix: Polyglot and Containers
Production-Ready Kubernetes and GitOps
Production-Ready Kubernetes and GitOps
Building and Deploying Cloud Native Applications with gRPC & Kubernetes
Building and Deploying Cloud Native Applications with gRPC & Kubernetes
Interviews
Chick-Fil-A: Milking the Most Out of 1000's of K8s Clusters
How does the Kubernetes implementation at Chick-Fil-A differ from more common approaches to Kubernetes deployments?
Brian: Most of the people that we see in the industry that are running Kubernetes clusters at any kind of scale (or really running and big container platforms) generally have a cloud-based infrastructure that they run in AWS (or Google). Most companies have a single or a few sizeable Kubernetes clusters with a large number of nodes (on the order of hundreds or even thousands). Each of these clusters then run tens to hundreds of thousands of containers across them. We have a similar infrastructure in our cloud environment from a control plane perspective.
What problems does this use case present?
Brian: The Kubernetes ecosystem is awesome. But there are some challenges we have it does not address. One example is deployments. We want to be able to provide a technology platform that lets us move at the speed of our business in our restaurants. This means being able to roll out highly distributed changes to production very frequently. During the talk, we will talk about a tool we build called “Fleet” that we use to manage deployments to our restaurants. There are some kubernetes native tools to help with deployments, but we found they came up short for the type of environment we had.