Transition from Traditional Deployment Era -> Virtualized Deployment Era -> Container Deployment Era.

In Traditional deployment uses of physical server stack for deployment application, later use of virtual machines for running each microservice in different VM’s and transitioned to Container deployment where minimal requirements to bootup the OS within an isolated environment.

Kubernetes provides the following features:

-Service discovery and load balancing -Storage orchestration -Automated rolling updates and rollbacks -Automatic bin packaging -Self healing -Secret and configuration management -Batch execution -Horizontal scaling -IPV4 / IPV6 dual stack

Kubernetes architecture

Nodes: nodes are the worker nodes, which is physical server or VM’s. Pods are deployed on the node and managed by the control plane. Pods: basic unit of deployment in Kubernetes, a pod is a group of one or more containers that are deployed on the same node. Pods host the application

Date/Node Components: Node components run on every node for maintainance of running pods.

  • kubelet
  • container runtime
  • kubeproxy

Control Plane Components:

  • kube scheduler
  • etcd
  • kube API server
  • kube controller manager
  • cloud controller manager