What Is Kubernetes PDF
What Is Kubernetes PDF
io/docs/concepts/overview/what-is-kubernetes/
What is Kubernetes
The name Kubernetes originates from Greek, meaning helmsman or pilot. Google open-
sourced the Kubernetes project in 2014. Kubernetes builds upon a decade and a half of
experience that Google has with running production workloads at scale, combined with
best-of-breed ideas and practices from the community.
1 of 4 10/1/2019, 6:38 AM
What is Kubernetes https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/
Virtualization allows better utilization of resources in a physical server and allows better
scalability because an application can be added or updated easily, reduces hardware costs,
and much more.
Each VM is a full machine running all the components, including its own operating
system, on top of the virtualized hardware.
Container deployment era: Containers are similar to VMs, but they have relaxed
isolation properties to share the Operating System (OS) among the applications.
Therefore, containers are considered lightweight. Similar to a VM, a container has its own
filesystem, CPU, memory, process space, and more. As they are decoupled from the
underlying infrastructure, they are portable across clouds and OS distributions.
Containers are becoming popular because they have many benefits. Some of the container
benefits are listed below:
That’s how Kubernetes comes to the rescue! Kubernetes provides you with a framework to
run distributed systems resiliently. It takes care of your scaling requirements, failover,
deployment patterns, and more. For example, Kubernetes can easily manage a canary
deployment for your system.
2 of 4 10/1/2019, 6:38 AM
What is Kubernetes https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/
Storage orchestration
Kubernetes allows you to automatically mount a storage system of your choice, such
as local storages, public cloud providers, and more.
Automated rollouts and rollbacks
You can describe the desired state for your deployed containers using Kubernetes,
and it can change the actual state to the desired state at a controlled rate. For
example, you can automate Kubernetes to create new containers for your
deployment, remove existing containers and adopt all their resources to the new
container.
Automatic bin packing
Kubernetes allows you to specify how much CPU and memory (RAM) each container
needs. When containers have resource requests specified, Kubernetes can make
better decisions to manage the resources for containers.
Self-healing
Kubernetes restarts containers that fail, replaces containers, kills containers that
don’t respond to your user-defined health check, and doesn’t advertise them to
clients until they are ready to serve.
Secret and configuration management
Kubernetes lets you store and manage sensitive information, such as passwords,
OAuth tokens, and ssh keys. You can deploy and update secrets and application
configuration without rebuilding your container images, and without exposing
secrets in your stack configuration.
Kubernetes:
Does not limit the types of applications supported. Kubernetes aims to support an
extremely diverse variety of workloads, including stateless, stateful, and data-
processing workloads. If an application can run in a container, it should run great on
Kubernetes.
Does not deploy source code and does not build your application. Continuous
Integration, Delivery, and Deployment (CI/CD) workflows are determined by
organization cultures and preferences as well as technical requirements.
Does not provide application-level services, such as middleware (for example,
message buses), data-processing frameworks (for example, Spark), databases (for
example, mysql), caches, nor cluster storage systems (for example, Ceph) as built-in
services. Such components can run on Kubernetes, and/or can be accessed by
applications running on Kubernetes through portable mechanisms, such as the Open
Service Broker.
Does not dictate logging, monitoring, or alerting solutions. It provides some
integrations as proof of concept, and mechanisms to collect and export metrics.
Does not provide nor mandate a configuration language/system (for example,
jsonnet). It provides a declarative API that may be targeted by arbitrary forms of
declarative specifications.
Does not provide nor adopt any comprehensive machine configuration,
maintenance, management, or self-healing systems.
3 of 4 10/1/2019, 6:38 AM
What is Kubernetes https://kubernetes.io/docs/concepts/overview/what-is-kubernetes/
What's next
Take a look at the Kubernetes Components
Ready to Get Started?
Feedback
Was this page helpful?
Thanks for the feedback. If you have a specific, answerable question about how to use
Kubernetes, ask it on Stack Overflow. Open an issue in the GitHub repo if you want to
report a problem or suggest an improvement.
4 of 4 10/1/2019, 6:38 AM