Kubernetes
In 2006, Google faced a difficult equation. The company offered Gmail, YouTube, and its search engine for free to millions of users. How could they manage a colossal infrastructure without costs spiraling out of control? Engineers then developed Borg, an internal system capable of running thousands of applications across their fleet of machines. The name paid homage to an alien race from Star Trek, creatures connected by a collective consciousness. The analogy fit the project well. Borg optimized the use of hardware resources by orchestrating the execution of applications in containers, a technology that was only beginning to emerge. Google kept this treasure secret for years, aware of the technical advantage it represented.
In 2013, three engineers from the company – Craig McLuckie, Joe Beda, and Brendan Burns – had an insight. Docker had just made containers popular among developers, but the technology remained limited. It could only manage containers on a single machine. The experience gained with Borg opened the way to something more ambitious. Why not create a system capable of orchestrating containers at the scale of an entire data center?
They named their idea “Project Seven,” a reference to the character Seven of Nine from Star Trek, a former Borg drone. This nod established a link to the original system while marking a break toward greater openness. For that was where the real gamble lay. Making this project open source represented a risk. Urs Hölzle, Google’s chief technical officer, saw this container management expertise as a competitive advantage. But the company understood that widespread adoption required an active community of external developers.
The project ultimately took the name Kubernetes, from the ancient Greek kubernētēs, which designates the pilot or helmsman of a ship. This choice continued the maritime theme of Docker. The system was to steer containers, as a helmsman guides his ship. The logo displays seven spokes, a discreet trace of the initial name “Project Seven.”
The designers built Kubernetes drawing on lessons learned from Borg and its successor Omega. The architecture is based on clusters, with worker nodes on one side executing containerized applications, and control plane nodes on the other managing orchestration. The system uses labels to organize and manage containers flexibly, abandoning Borg’s rigid sequential numbering.
Version 1.0 was unveiled in 2015 at the OSCON conference. From launch, Microsoft, Red Hat, and IBM provided their support. Google entrusted the project to the Cloud Native Computing Foundation (CNCF), a nonprofit organization hosted by the Linux Foundation. This transfer guaranteed the project’s neutrality and collaborative development.
Kubernetes’ technical capabilities address the requirements of modern applications. Automatic container replication, load balancing, service discovery, application health monitoring, automatic repair in case of failure. The system pools multiple machines to efficiently distribute workload.
Kubernetes’ approach to APIs marks a notable evolution from Borg. Each object has three fundamental fields: metadata, desired state specification, and current status. This standardization simplified the development of tools and extensions by the community.
The management of “pods” brings a new dimension. A pod can contain multiple containers sharing resources. This design helps break down complex applications into smaller, better-isolated components without losing coordination between them.
Kubernetes’ rise is part of a broader transformation in software development. The system accompanied the growth of cloud computing and microservices architectures. Companies can now deploy their applications consistently, on their own servers as well as on AWS, Microsoft Azure, or Google Cloud.
The impact on the computer industry proved massive. In 2020, Kubernetes ranked among the ten most popular open source projects on GitHub. According to the CNCF, it became the second largest open source project after Linux. 71% of Fortune 100 companies use it.
This story shows how a technology developed to solve Google’s internal problems transformed into an industry standard through open source. It underscores the role of developer communities in large-scale technology adoption. Kubernetes has transformed how companies develop, deploy, and manage their applications, giving them the agility needed to innovate quickly without sacrificing service stability.