DEV Community

loading...

Kubernetes - Initiate Level 1

Sid
An electronics engineer fascinated by software engineering for last 15+ years!
・1 min read

As one of the first things that I wanted to learn, I picked up Kubernetes. I have started taking a lesson in learning Kubernetes on Udemy Course and I'll use this space to document my learning as I progress through course:

  • There seem to be waaay too many Kubernetes Certified Distributions
  • Kubernetes is a container management system
  • What can Kubernetes do out of box:
    • Spawn multiple container of an image
    • Put internal / External ALB in front of these multiple containers
    • Grow / shrink cluster
    • Replace image with latest with rolling update
    • Auto scaling - nodes and appliacations
    • Scheduled / cron containers
    • Batch mode
    • Integrate third party services (service catalog)
    • RBAC
    • Automate complex tasks (operators)

Kubernetes Basic Architecture

Kubernetes master - also called by Control Plane. Includes API Server, Scheduler, etcd and Controller Manager. One of more master nodes can exist.

Kubelet - runs on Host Machines, controls local docker

Kube-proxy - Controls network, works with kubelet

CoreDNS - Naming service on master

Cloud Kubernes providers usually hide control plane and run it externally, all we get in return is API endpoint.

Interacting with Kubenetes

Only interact through API that supports CRUD operations.

Pods - Abstract around one or more containers. Lowest deployable unit in Kubernetes. Pods get IP address, not individual containers in a pod. Containers in a pod share localhost and can share volumes. Containers in pod are deployed together.

Discussion (0)