k8s第一篇:k8s集群架构组件

k8s集群节点分为Master节点和Node节点。Master节点又被称为control plane,中文翻译为控制平面,Node节点又被称为数据面。

Master节点有4个组成部分:

kube-apiserver,集群唯一入口,提供REST API,负责认证、鉴权、准入控制。

kube-scheduler,根据资源情况和调度策略将Pod调度到合适的Node。

kube-controller-manager,运行各种控制器(Deployment、StatefulSet、DaemonSet等),通过控制循环保证系统达到期望状态。

etcd,分布式kv存储,存储集群所有元数据和状态。

在master节点,通过ps命令可以查看到这些进程。

 

Node节点有2个组成部分:

kubelet,Node上的agent,负责管理Pod生命周期。

kube-proxy,实现Service网络转发,提供负载均衡能力。

Container Runtime,负责真正运行容器(如containerd)。

在node节点,通过ps命令可以查看到这些进程。

 

Pod

Pod是最小的部署单元,一个Pod包含多个容器,这些容器共享网络和存储。每个Pod都是应用的一个实例,有专用的IP。每个Pod都包含一个特殊的基础设施容器(Pause容器,也被称为sandbox容器),它负责维护Pod的网络和namespace。除Pause容器外,Pod中还包含一个或多个业务容器,这些容器共享Pause容器的网络等资源。

同一个Pod中的容器总会被调度到相同的节点上,不同节点间的Pod的通信基于虚拟二层网络技术实现。

Controller

负责创建Pod。

Service

Service是将一组Pod公开为网络服务的方法。有4种类型:

ClusterIP:集群内访问

NodePort

LoadBalancer:利用云厂商的负载均衡器公开服务,适用于生产环境公网访问服务。

ExternalName:适用于在集群内访问外部服务。

Deployment

Deployment是一种高级控制器,用于管理无状态应用程序的部署、更新和扩展。

 

posted on 2026-03-23 10:46  koushr  阅读(17)  评论(0)    收藏  举报

导航