集群架构

在硬件级别,一个Kubernetes集群由很多节点组成,这些节点被分为以下两种类型:

  • Master节点:即控制节点,负责控制和管理整个集群系统;

  • Worker节点:运行用户实际部署的应用;

下图展示了整个集群的架构,包括每个节点中的组件:

集群架构图

Master节点

Master节点顾名思义,用于控制集群并使它工作。Master节点也可以有多个,保证高可用。

Master节点中的组件有:

  • API服务器用户集群内其他组件都需要和它通信(多实例可并行工作);

  • Scheduler:用于调度应用中的容器(需使用同步锁控制多实例工作);

  • Controller Manager:执行集群级别的功能,如复制容器、持续跟踪工作容器、处理容器失败等(需使用同步锁控制多实例工作);

  • etcd:一个可靠的分布式数据存储,它能持久化存储集群配置(多实例可并行工作);

Worker节点

这个节点是用来运行容器化应用的机器。运行、监控和管理应用服务(容器)的任务是由以下组件完成的:

  • Docker、rkt或其他的容器类型(容器运行时);

  • Kubelet:与API服务器通信,并管理它所在节点的容器(作为常规系统组件,运行在宿主机上,而不是Pod中)

  • Kubernetes Service Proxy (kube-proxy):负责容器之间的负载均衡网络流量;

附加组件

除了上述节点类型中的组件,还有一些附加组件,用来提供更多的功能。包含:

这些组件通常可以通过提交YAML清单给API服务器的方式来完成插件的部署。

Last updated

Was this helpful?