This blog post will provide an introduction to Kubernetes so that you can understand the motivation behind the tool, what it is, and how you can use it.
PAST: -
Kubernetes has its roots in Google’s internal Borg System,
introduced between 2003 and 2004. Later, in 2013, Google released another
project known as Omega, a flexible, scalable scheduler for large compute
clusters.
Google introduced the Borg System around 2003-2004. It started off as a small-scale project, with about 3-4
people initially in collaboration with a new version of Google’s new search
engine. Borg was a large-scale internal cluster management system, which ran
hundreds of thousands of jobs, from many thousands of different applications,
across many clusters, each with up to tens of thousands of machines.
Following Borg, Google introduced the Omega cluster management
system, a flexible, scalable scheduler for large compute clusters. In mid-2014, Google introduced
Kubernetes as an open source version of Borg, it was a first initial release and
first GitHub commit for Kubernetes in 7th June 2014. In next month 10th
July 2014, Microsoft, RedHat, IBM, Docker joins the Kubernetes community.
21st July
2015, Kubernetes v1.0 gets released and Google also partnered with the
Linux Foundation to form the Cloud Native Computing Foundation (CNCF). The CNFC
aims to build sustainable ecosystems and to foster a community around a
constellation of high-quality projects that orchestrate containers as part of a
microservices architecture.
In 11th July
2016, Minikube was released, Minikube tool that makes it easy to run
Kubernetes locally. In the same year on 26th of September, Kubernetes
1.4 introduces a new tool, kubeadm, that helps improve Kubernetes’
installability. This release provides easier setup, stateful application
support with integrated Helm, and new cross-cluster federation features. In 29th
September 2016, Pokemon GO! Kubernetes Case Study Released! Pokémon GO was the
largest Kubernetes deployment on Google Container Engine ever. Luckily, it’s
creators released a case study about how they did it.
In 2nd March 2018, First Beta Version of Kubernetes 1.10
was announced. Users could test the production-ready versions of Kubelet TLS
Bootstrapping, API aggregation, and more detailed storage metrics and on 1st
May Google also launched the Kubernetes Podcast that was hosted by Craig Box.
PRESENT: -
Today, Kubernetes is the container
orchestration solution to use. Today, Kubernetes has 1800+ contributors,
500+ meetups worldwide, and 42,000+ users. 83% of enterprises surveyed by the
Cloud Native Computing Foundation (CNCF) in 2020 are using Kubernetes.
Kubernetes is now a powerful container management tool that
automates the deployment and management of containers. Kubernetes is a
portable, extensible, open source platform for managing containerized workloads
and services, that facilitates both declarative configuration and automation.
It has a large, rapidly growing ecosystem. Kubernetes services, support, and
tools are widely available.
Part of the reason why Kubernetes has become so popular is that it
was built on top of Docker. Containers have a long history in Linux and BSD
variants; however, Docker made containers extremely popular by focusing on the
user experience and made building and running containers very easy. Kubernetes built on the popularity of containers
and made running (aka. orchestrating) containers on a cluster of compute nodes
easy.
Another reason for Kubernetes' popularity and extensive adoption is
that it didn't change the model for running software too much.
Another big aspect of Kubernetes popularity is its strong
community. For starters, Kubernetes was donated to a vendor-neutral home in
2015 as it hit version 1.0: the Cloud Native Computing Foundation. There is
also a wide range of community SIGs (special interest groups) that target
different areas in Kubernetes as the project moves forwards. They continuously
add new features and make it even more user friendly.
The Cloud Native Foundation also organizes CloudNativeCon/KubeCon,
which as of this writing, is the largest ever open-source event in the world.
The event, which is normally held up to three times a year, gathers thousands
of technologists and professionals who want to improve Kubernetes and its
ecosystem as well as make use of some of the new features released every three
months.
FUTURE: -
Kubernetes has seen a dramatic increase in visibility and adoption
throughout 2017, with all major cloud providers now offering their own native
Kubernetes service, and several container orchestration platforms rebuilding with
Kubernetes as an underpinning. With Azure, Google Cloud, and AWS
all now offering or having announced a managed Kubernetes service, creating a
Cluster in the near future should be trivial and have a much lower barrier to
entry than it has historically. A Kubernetes Cluster will soon be as trivial to
create as any other managed cloud service.
In the year or so we’ve been running our Cluster we’ve seen it go
from strength to strength, with new versions being released frequently
containing significant improvements and exciting new features, and meanwhile
more and more vendors are adopting it. We think in the next year,
Kubernetes is going to be everywhere, and we’ll start seeing even more exciting
technology being built on top of it thanks to everyone having extra capacity
from not trying to re-invent the basics.
One of the main challenges developers face in the future is how to
focus more on the details of the code rather than the infrastructure where that
code runs on. For that, serverless is emerging as one of the leading
architectural paradigms to address that challenge. There are already very
advanced frameworks such as Knative and OpenFaas that use Kubernetes to
abstract the infrastructure from the developer.
Kubernetes’ popularity is on the rise with use cases in
mission-critical sectors such as finance, edtech, and traditional enterprise
IT. However, Kubernetes face a few challenges. The extremely complex nature of
developing and running distributed frameworks at scale is one of its main
challenges. Despite this, experts believe Kubernetes will become a ‘universal
control plane’ to manage containers, virtual machines, and other modern
applications
We’ve shown a brief peek at Kubernetes in this article, but this is
just the tip of the iceberg. There are many more resources, features, and
configurations users can leverage.

No comments:
Post a Comment