云容器引擎 CCE-集群概述:Kubernetes集群架构
Kubernetes集群架构
Kubernetes集群包含Master节点(控制节点)和Node节点(计算节点/工作节点),应用部署在Node节点上,且可以通过配置选择应用部署在某些特定的节点上。
通过云容器引擎服务创建的集群,Master节点将由云容器引擎服务托管,您只需创建Node节点。
Kubernetes集群的架构如下所示:
Master节点
Master节点是集群的控制节点,由API Server、Scheduler、Controller Manager和ETCD四个组件构成。
- API Server:各组件互相通讯的中转站,接受外部请求,并将信息写到ETCD中。
- Controller Manager:执行集群级功能,例如复制组件,跟踪Node节点,处理节点故障等等。
- Scheduler:负责应用调度的组件,根据各种条件(如可用的资源、节点的亲和性等)将容器调度到Node上运行。
- ETCD:一个分布式数据存储组件,负责存储集群的配置信息。
在生产环境中,为了保障集群的高可用,通常会部署多个Master,如CCE的集群高可用模式就是3个Master节点。
Node节点
Node节点是集群的计算节点,即运行容器化应用的节点。
- kubelet:kubelet主要负责同Container Runtime打交道,并与API Server交互,管理节点上的容器。
- kube-proxy:应用组件间的访问代理,解决节点上应用的访问问题。
- Container Runtime:容器运行时,如Docker,最主要的功能是下载镜像和运行容器。