How Kubernetes is used in industry and how it solves use-cases of the companies?
What is Kubernetes?
Kubernetes is open-source orchestration software for deploying, managing and scaling containers. It will allow you to deploy cloud-native applications anywhere and manage them exactly as you like everywhere.
CODE ONCE, RUN ANY-TIME, ANY WHERE.
Modern applications are increasingly built using containers, which are microservices packaged with their dependencies and configurations. Kubernetes is open-source software for deploying and managing those containers at scale — and it is also the Greek word for helmsmen of a ship or pilot. Build, deliver and scale containerized apps faster with Kubernetes, sometimes referred to as “k8 s” or “k-eights.”
What are containers and where does Kubernetes fit in?
For understanding Kubernetes first we have to understand what is container. one of the famous container Engine is Docker, so first lets look what about docker.
Docker is an open platform for developing, shipping, and running applications. Docker enables you to separate your applications from your infrastructure so you can deliver software quickly. With Docker, you can manage your infrastructure in the same ways you manage your applications. By taking advantage of Docker’s methodologies for shipping, testing, and deploying code quickly, you can significantly reduce the delay between writing code and running it in production.
Docker will help you to launch a complete app without a fraction of seconds, which will reduce lots of time as well as resources in terms of Ram, CPU and electricity.
Where docker faces the problem?
In real industry infrastructure we are launching thousands of containers daily. We have HA (high available) infrastructure but, main problem is how to manage this container, monitoring this whole day, every second, is makes it little bit harder.
In our HA infrastructure we need to scale in and scale out, its also require lots of human efforts, which can be easily managed by container management (orchestration) tool like Kubernetes.
Companies using Kubernetes
Case Study of: The New York Times
When the company decided a few years ago to move out of its data centers, its first deployments on the public cloud were smaller, less critical applications managed on virtual machines.
“We started building more and more tools, and at some point we realized that we were doing a disservice by treating Amazon as another data center”
says Deep Kapadia, Executive Director, Engineering at The New York Times. Kapadia was tapped to lead a Delivery Engineering Team that would “design for the abstractions that cloud providers offer us.”
Then they decided to move towards google cloud platform and started using GKE. After this, Speed of delivery increased. Some of the legacy VM-based deployments took 45 minutes; with Kubernetes, that time was “just a few seconds to a couple of minutes,” says Engineering Manager Brian Balser. Adds Li: “Teams that used to deploy on weekly schedules or had to coordinate schedules with the infrastructure team now deploy their updates independently, and can do it daily when necessary.” Adopting Cloud Native Computing Foundation technologies allows for a more unified approach to deployment across the engineering staff, and portability for the company.
Case Study Of: IBM
IBM Cloud offers public, private, and hybrid cloud functionality across a diverse set of runtimes from its OpenWhisk-based function as a service (FaaS) offering, managed Kubernetes and containers, to Cloud Foundry platform as a service (PaaS). These runtimes are combined with the power of the company’s enterprise technologies, such as MQ and DB2, its modern artificial intelligence (AI) Watson, and data analytics services. Users of IBM Cloud can exploit capabilities from more than 170 different cloud native services in its catalog, including capabilities such as IBM’s Weather Company API and data services. In the later part of 2017, the IBM Cloud Container Registry team wanted to build out an image trust service.
The work on this new service culminated with its public availability in the IBM Cloud in February 2018. The image trust service, called Portieres, is fully based on the Cloud Native Computing Foundation (CNCF) open source project Notary, according to Michael Hough, a software developer with the IBM Cloud Container Registry team. Portieres is a Kubernetes admission controller for enforcing content trust. Users can create image security policies for each Kubernetes namespace, or at the cluster level, and enforce different levels of trust for different images. Portieres is a key part of IBM’s trust story, since it makes it possible for users to consume the company’s Notary offering from within their IKS clusters. The offering is that Notary server runs in IBM’s cloud, and then Portieres runs inside the IKS cluster. This enables users to be able to have their IKS cluster verify that the image they’re loading containers from contains exactly what they expect it to, and Portieres is what allows an IKS cluster to apply that verification.