Mayur Sharma:
I am trying to understand the cluster components and networking concepts and following are few of the things I learnt, let me know if they are right or anything wrong in my understanding,
-
Kubelet : Installed on worker node as a service(always)
kubeconfig file – stores the cluster information like apiserver URL:port, username and its certificates
config file – stores which cni plugin would be used and other parameters like bin dir and conf dir
stores the range of IP that would be assign to pod it creates -
Kube-proxy : not sure how it is installed. but handles services networking,
create iptables mapping for service name/ip to pod IPs -
Pod networking: how pod IP are managed and determine how pod are accessible to other pods, irrespective of pod deployment on node
kubelet handles and configures network plugin like weave, which does all pod networking related
things like put container on pod network -
Service networking : Service becomes available accross the cluster,
KubeDNS stores service name and its IP in it as DNS name
kube-proxy creates the mapping for service IP to pod ip it should redirect -
CoreDNS : How service names are resolved – /etc/reso
/etc/hosts is present on each node, and can contain name-to-ip mapping but very hard to manage in big cluster
moved all entries into central server and put that central server ip in
/etc/resolv.conf file
nameserver <ip of DNS server service>
Deployed as pod and service