DEV Community

soul-o mutwiri
soul-o mutwiri

Posted on

Features that orchestration offers

  • High availability no downtime
  • Scalability or high performance
  • Disaster recovery - backup and restore

K8s architecture
A cluster is made of atleast one master node(control plane) and worker nodes which have kubelet running on it. kubelet makes possible for nodes to communicates.

on master node - api server (entrypoint to k8s cluster), controller manager(keeps track of whats happenin in the cluster DESIRED STATE<> ACTUAL STATE), scheduler(ensures pods placement), etcd(status data, snapshots and data recovery), virtual network(turns all nodes into a one machine).

K8S components
node - virtual machine
deployment - is a blueprint of my-app pods, abstraction of
pods. Db cannot be replicated using a
deployment; so use statefulset for stateful apps.
to reduce read/write duplications/ improve consistencies.
pod - creates a running environment abstraction inside a
container.
each pod gets ip address, emphemeral(data lost on restart)
service and its ip address stays even when a pod dies, it is also a load balancer
ingress - does the forwarding to allow external
communication.
configmap - configuration of the application, no need to
create new image just change the config map
secrets - confidential information is stored here e.g
credentials. password, certificates
reference secret in deployment/pod

volume - storage plugged into the kubernetes to aid data
persistence.

.....
METADATA
SPECIFICATION
STATUS .. k8s updates status vs specification... e.g replicates... etcd hold the current status of k8s
........
KUBECTL
is cli to interact with cluster api-server to submit commands, to create or delete compoenents. work processes make it happen that is:

  1. create pods, create services.

Make it an external service
type - service type
default = ClusterIP > AN INTERNAL SERVICE
nodeport = exposes the service on each node ip at a static port for external communication

configmap and secret must exist before deployments.

Top comments (0)