Kubernetes架构
最后更新于
这有帮助吗?
最后更新于
这有帮助吗?
Kubernetes 致力于提供跨主机集群的自动部署、扩展、高可用以及运行应用程序容器的平台,其遵循主从式架构设计,其组件可以分为工作节点(Node)组件和控制平面组件。
Kubernetes 架构可分为主(Master)节点、从(工作/Worker/Node)节点和数据库 Etcd,其中:
主节点为集群的控制单元,一般不会运行业务应用程序,主要包含的组件有 Kube-APIServer、Kube-ControllerManager、Kube-Scheduler。
如果 Master 节点要部署容器,也会包含 Kubelet、Kube-Proxy 这两个组件。
从节点为工作单元,也就是部署应用程序容器的节点,主要包含的组件有 Kubelet、Kube-Proxy。
一个集群中可以有很多 Node 节点,用以保证集群容器的分布式部署,用于实现业务的高可用性;也可以有很多 Master 节点,并通过一个负载均衡器保证集群控制节点的高可用。
负载均衡可以使用软件负载均衡 Nginx/LVS/HAProxy + KeepAlived 或者硬件负载均衡 F5 等。
其高可用原理在于分配了一个虚拟 IP 地址(VIP)在多个 Master 节点间进行漂移,当主节点发生宕机时,其他的从节点会竞争主节点角色,并获得分配的 VIP 地址。
其他组件通过上述的 VIP 连接至负载均衡器,由负载均衡器将请求转发给后端的 Kube-APIServer。