by: Alaa Atwa
from Ahmed elfakhrany ‘s Udemy course and other resources
<aside>
🔗
course link: https://www.udemy.com/course/kubernetes-from-beginner-to-master-arabic
</aside>
<aside>
💡
right click and disable check spelling for better experience 🤓
- if you are new to notion, don’t forget to click the toggle list which looks like this :
- click.the.toggle.sign.please
- hover over the right section of the page to see a list of the page ‘s content.
</aside>
intro
Orchestrator : the brain that automates deployment, scaling, networking, and lifecycle management of containers.(control plane in k8s)
cluster : a group of machines running k8s, managed as one unit.
node: one machine from the cluster (one virtual machine), runs containers and the necessary services.
cluster components
- the cluster consists of control plane(one or more Linux nodes) and data plane(one or more nodes running linux or windows)
- locally the master node and working nodes runs together on the same machine
- the control plane has:
- an API that receives the requests.
- an etcd database to save requests (must have an odd number of nodes).
- controller manager (c-m) create and control the pods inside the node (like deployment, replicaset,…etc) all of theses are controller managers.
- scheduler organize and assigns pods to nodes
- cloud controller manager (c-c-m)
- kubelet : managing and running containers on each working node. (receives and send requests with the api).
- runtime (containerd or cr-o) : manages the containers directly (pulls and creates..), no interaction with it.
- kube-proxy : network component to run on each k8s node (e.g. manage rules for service routing)
kubeconfig
- a config file for kubectl to access and manage k8s clusters.
<aside>
💡
kubeconfig file usually saved here —> ~/.kube/config
</aside>
apiVersion: v1
kind: Config # notice the kind
clusters:
# if you installed minikube, it will be mentioned here
- name: mycluster
cluster:
server: https://....
certificate-authority-data: .... # (CA)
users:
- name: kubeadmin
user:
client-certificate-data: ....