Skip to content

sagarkpanda/Kubernetes_Labs

Repository files navigation

Container Orchestration with Kubernetes

K8s


Read the detailed article on:

Medium Alternative Theme.

What is Kubernetes:

Kubernetes, also known as K8s, is an open-source platform to automate deployment, scaling, and management of containerized applications or containers.

Containers are lightweight packages of an application including all the dependencies. Docker is one such platform for creating containerised applications.

Features of Kubernetes:

Container orchestration:

K8s automates the deployment and management of containers across a cluster of machines. It handles tasks such as container scheduling, scaling, load balancing, and rolling updates.

Service discovery and load balancing:

K8s provides a built-in service discovery mechanism that allows containers to find and communicate with each other. It also offers load balancing capabilities to distribute incoming traffic across multiple instances of an application.

Scaling and self-healing:

K8s enables automatic scaling of application instances based on CPU usage, memory utilization, or custom metrics. It can also automatically restart containers that have failed, ensuring high availability of applications.

Configuration management:

K8s allows you to define and manage application configurations using declarative manifests. You can specify the desired state of your application, and Kubernetes will work to ensure that the actual state matches the desired state.

Storage orchestration:

K8s provides a way to manage persistent storage volumes and attach them to containers as needed. This allows applications to store and retrieve data even when containers are rescheduled or restarted.

Health monitoring and logging:

K8s offers tools for monitoring the health and performance of applications running in the cluster. It integrates with various logging and monitoring systems to collect and analyze container and application metrics.

Architecture of K8s:

                    +-----------------------+
                    |      Master Node      |
                    +-----------------------+
                    |                       |
                    |   +----------------+  |
                    |   |   API Server   |  |
                    |   +----------------+  |
                    |            |          |
                    |            |          |
                    |   +----------------+  |
                    |   |      etcd      |  |
                    |   +----------------+  |
                    |            |          |
                    |            |          |
                    |   +----------------+  |
                    |   | Controller Mgr |  |
                    |   +----------------+  |
                    |            |          |
                    |            |          |
                    |   +----------------+  |
                    |   |    Scheduler   |  |
                    |   +----------------+  |
                    +-----------------------+
                                |
                                |
                    +-------------------------+
                    |                         |
              +------------+            +------------+
              | Worker Node|            | Worker Node|
              +------------+            +------------+
              |   Kubelet  |            |   Kubelet  |
              |  Container |            |  Container |
              |   Runtime  |            |   Runtime  |
              | kube-proxy |            | kube-proxy |
              +------------+            +------------+

Releases

No releases published

Packages

No packages published