Welcome to the first entry of the { Zero to Helm } series! On this weeks byte, we will be going over a brief recap of some of the greatest moments Kubernetes has had from the past two decades. Yes, you read that right - the origins of Kubernetes stems back as far as the year 2003 with a system known as Borg! But don't fret, we will make sure to keep you up to speed with some recent history too and maybe some insight into what might come next!
Back in 2003, Google had introduced a new cluster management tool called Borg. Now, don't worry, we aren't talking about these kind of Borgs from Star Trek (although I wouldn't put it past them to use it as a pun). Borg was a privatized tool that only Google had used to manage the kinds of things we use Kubernetes for today. 2003: Borg is born🌱 2003 - The Early Days of Cluster Management
During these early days, Borg was used for everything from running websites, stateful servers, and even complete application infrastructures like BigTable, and MapReduce. Although Google had Borg, other cluster-management tools did eventually exist for others to use. Some of these were Apache Mesos, Microsoft Cluster Server, IBM's Tivoli System, and eventually Docker Swarm. Despite the massive adoption's these other tools had, Borg still had a certain finesse to it that other's did not possess. Some of those aspects still exist to this day in Kubernetes. Ideas such as Pods, Services, and Labels still remain some of the most core functional components of any Kubernetes cluster.
Highlights
Fast-forward a decade and Google introduced its open-sourced version of Borg on Github, and thus Kubernetes was born. It's founding fathers were Joe Beda, Brendan Burns, and Craig McLuckie - some of the brightest minds that built Google's Cloud Computing Services. The name is a bit of a nod to the Borg name. Internally, Kubernetes was code-named as Project 7; a nod to an ex-borg character from Star-Trek. The logo (with seven spokes) was also a nod to it's former codename and predecessor. At the time, Github was (and still-is) a staple in any project as a well known source for famous open-source projects like React, Typescript, and even Linux. It was only natural that Google would do the same as they have with other projects (i.e. Angular), and early adoption was quick! 2014: Kubernetes is born (Codename: Project 7) Originally written in C++🍁 2014 - The Birth of Kubernetes
It didn't take very long until other tech giants joined suit in support for this new endeavor; e.x. Microsoft & IBM.
Highlights
Eventually rewritten using Go
The early days of Kubernetes were a bit rocky. As with any new open-sourced project, the eyes of scrutiny were placed tightly on Kubernetes now that the world could contribute on Github. It wasn't until mid-2015 that the first major release of Kubernetes was seen. This major release also formed a launchpad for its explosive adoption. Any first major release of an open-source project is a cornerstone for success and a cause for celebration! In junction with the 1.0 release, Google doubled down on it's commitment to the open-source community by collaborating with the Linux Foundation to form a new foundation entirely focused on the key tenants of Kubernetes; containerization & microservice architecture. That organization is the Cloud Native Computing Foundation (CNCF). Over the next two years, Kubernetes (in tandem with the foundation) had moments of massive global growth as others aimed to capitalize on it's promise. This is when we saw the birth of tools like Helm (package management on k8s), Minikube (local k8s), and Kops (production k8s). We even saw companies like Pokemon GO! share their own success story. All of this brought about a growing sense of confidence that Kubernetes was bound to become a staple in every office's long-term plan for cloud infrastructure. By March 2017, Kubernetes 1.6 was released and marked by Google as a stabilization of the platform. From this point onward, the world felt much safer with switching over and running their own Kubernetes setups in production. Soon after, companies like Github announced their own case study on how they made the switch to Kubernetes in production. Highlights:🌳 2015–2017 - Road towards a Stable "Foundation"
Even other cloud platforms like Amazon & Microsoft announced new service offerings for Kubernetes in the cloud. It didn't take long for anyone to see that adoption should be much higher on their backlog of upcoming projects.
As we fast forward through the next couple of years, Kubernetes adoption was loud & wild. FOMO energies spiked, and every R&D department in the world had at least one person singing it's song. Everything from Serverless (i.e. Knative) to Stateful architectures were being redesigned for this new world. International forums like Kubecon (an annual conference managed by the CNCF about K8s) provided a meeting ground for local-communities to share & engage with one another on their own successes/failures, and made it easy for newcomers to feel welcomed to this new world of Kubernetes. In addition to all of this community engagement, the CNCF also formed an incubation program for up & coming cloud-based projects. This program served as a kind of launchpad for exciting new projects that could further empower existing Kubernetes users. This program became a recipe for boosting the return on early adopter investment as they were the one's who were able to capitalize on projects that graduate from the program. One example of this was the birth of AWS App Mesh & it's use of the CNCF graduated project - Envoy Proxy. Altogether, both the forums & incubation program formed a recipe for success! From here on out, it has become a matter of keeping the community engaged & informed while also going back to Github for open-source contributions. Kubernetes is definitively the king of the market today for cluster management. All major cloud providers offer their own hosting services, and the barrier for entry has never been lower for both small & large companies.👥 2017–2021: "Community-driven-Growth"
At this point, it really is up to the community. Github & the CNCF serves as public forums for the world to engage with each other on patching & improving the Kubernetes platform. In addition, the CNCF's incubation program provides an avenue for enthusiasts to gain support for their ambitious ideas that can empower the world of Kubernetes. Altogether, it's hard to say where things will go in terms of new ground. However, what we will see if the adoption of Kubernetes for pretty much every market sector out there. Even IoT has seen the power of Kubernetes with the release of K3S by Rancher Labs. Frankly, the limits just don't exist, and the possibilities are endless.🔮 The Future of Kubernetes
Next Week on { Zero to Helm }…
-Part 2: Kubernetes Architecture-
Next week we will start diving into the Kubernetes ecosystem. Pointing out the various parts of the system & their responsibilities before we begin to dive deeper & getting our hands dirty via code.
If you are interested in following my series on all-things Kubernetes, consider following me on Dev.To.
Top comments (0)