一个k8s集群,由两部分组成,master节点和node节点
node节点受master节点控制
pod:是集群中最小封装集合,一个pod中可以运行多个容器
k8s设计架构图
在这里插入图片描述
图片来源:https://www.kubernetes.org.cn/
在这张图里,左侧的一个方块就是master节点,右侧的两个方块,对应的是两个节点(node)。
每一个node都是一个独立主机,或者是虚拟机。

master节点

  • apiserver:通过ui或者cli等其他方式控制的命令传入此接口,进行调度。提供调用资源(可以大概理解为我们自己写的逻辑接口)的唯一入口,并且提供认证、授权、访问控制、api注册和发现等机制。
  • controller manager:负责维护集群的状态,判断是否按照所配置的配置项运行。
  • scheduler:将没有分配node的pod进行分配node。例如,在高并发下,负载过高,会增加pod,但是增加的pod并没有分配到node(独立主机或者虚拟机)上,scheduler负责将pod分配到一个空闲或者负载较其他的低的node上。
  • etcd:后台管理数据库,key-value数据库,存储整个集群的状态信息

node节点

  • kubelet:管理容器镜像等。例如,scheduler将pod转发至此node,kubelet就会接收信息,并生成容器。
  • kube-proxy:负责为service提供集群内部的负载均衡和服务发现(内部通信或者直接提供外部通信)。链接到pod,对流量进行分流,达到负载均衡的效果。
  • pod:集群中最小的封装集合,可以运行多个容器。
Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐