Kubernetes Deep Dive and Use Cases

Prakhar Lad
4 min readDec 26, 2020

When containers were first introduced in 2008, Virtual Machines, or VMs, were the state-of-the-art option to optimize a data centre’s physical resources. This arrangement worked well enough but had some flaws: Virtual machines utilized too many resources because they required both a complete operating system and emulated instructions to reach the physical CPU. Even with some technologies like Intel VT-x and AMD-V that attempted to solve the emulation problem, virtual machines were behind the bare metal.

Kubernetes and Docker are two of the words you hear most in conversations about DevOps today. Docker is a tool that allows you to contain and run applications, and Kubernetes provides a platform to orchestrate or manage these containers, since managing thousands of containers manually with Docker CLI is a very costly task.

Characteristics of Kubernetes

Most importantly, Kubernetes was designed to be used anywhere, so it can orchestrate on-site, public cloud and hybrid deployments. With Kubernetes, concrete steps can be taken to achieve better IT security. Besides, it must also be integrated with networking, storage, security, telemetry and other services to provide a comprehensive container infrastructure. This offers the simplicity of Platforms as a Service (PaaS) with the flexibility of Infrastructure as a Service (IaaS) and allows for portability between infrastructure providers.

Orchestrators as a Multicloud Operating System

Container orchestrators handle several machines that can be in the same data centre or different physical locations from different providers. When using an orchestrator tool such as Kubernetes, it creates an abstraction that an organization won’t need to know where or how its computing resources are distributed. An orchestrator tool transforms the capacity of cloud providers into a commodity that can easily be substituted, or, better yet, organizations can distribute workloads among different providers.

Companies that have an on-premise data centre can benefit from container orchestrators as well. If the orchestrator is deployed within a local infrastructure, the unlimited computing resources on the cloud won’t be available. However, companies can manage resources in the same way, which allows for an easy migration if necessary.

Another use case occurs when an operator wants to use the unlimited computing capacity of the cloud in addition to internal resources. A hybrid cloud is designed to utilize a company’s existing hardware resources while increasing computing capacity without buying new hardware.

Container orchestration tools like Kubernetes can function as a multicoloured operating system. Companies do not need to know what they are handling, where the operating system is or who is providing it — they just need to designate what resources need to be running.

Kubernetes

Google built Kubernetes and has been using it for 10 years. That it has been used to run Google’s massive systems for that long is one of its key selling points. Two years ago Google pushed Kubernetes into open source.

Kubernetes is a cluster and container management tool. It lets you deploy containers to clusters, meaning a network of virtual machines. It works with different containers, not just Docker.

Kubernetes Basics

The basic idea of Kubernetes is to further abstract machines, storage, and networks away from their physical implementation. So it is a single interface to deploy containers to all kinds of clouds, virtual machines, and physical machines.

Kubernetes offers these capabilities to a business:

  • Multi-cloud flexibility: As more enterprises run on multi-cloud platforms, they benefit from Kubernetes, as it easily runs any application on any public cloud service or a combination of public and private clouds.
  • Faster time to market: Because Kubernetes can help the development team break down into smaller units to focus on single, targeted, smaller micro-services, these smaller teams tend to be more agile.
  • IT cost optimization: Kubernetes can help a company reduce infrastructure costs quite dramatically if it is operating on a large scale.
  • Improved scalability and availability: Kubernetes serves as a critical management system that can scale an application and its infrastructure whenever the workload increases, and reduce it as the load decreases.
  • Effective migration to the cloud: Kubernetes can handle rehosting, re-platforming and refactoring. It offers a seamless route to effectively move an application from the facility to the cloud.

Apart from the above use cases, Kubernetes plays a vital role in other sectors as well. The following are some crucial areas to focus upon:

  1. Runtime threat detection and response
  2. Compliance
  3. Configuration management
  4. Vulnerability scanning and management
  5. Visibility
  6. Network segmentation

Thank You for reading…

Happy Learning!!!

--

--