Kubernetes最初源于谷歌内部的Borg,提供了面向应用的容器集群部署和管理系统,所以整体的架构和borg很相似,整个架构有api server,control manager,scheduler,etcd,kubelet,kube-proxy,network-plugin等相关组件完成,整体架构如下:
Api server,Control manager,Scheduler,Etcd属于master节点,相关组件功能如下:
1.Etcd保存了整个集群的状态;
2.Apiserver提供了资源操作的唯一入口,并提供认证、授权、访问控制、API注册和发现等机制;
3.Controller manager负责维护集群的状态,比如故障检测、自动扩展、滚动更新等;
4.Scheduler负责资源的调度,按照预定的调度策略将Pod调度到相应的机器上;
Kubelet,Container runtine,Kube-proxy属于woker节点,相关组件功能如下:
kubelet负责维护容器的生命周期,同时也负责Volume(CSI)和网络(CNI)的管理;
Container runtime负责镜像管理以及Pod和容器的真正运行(CRI);
kube-proxy负责为Service提供cluster内部的服务发现和负载均衡;
原文:https://blog.51cto.com/blief/2386811