Kubernetes Notes

参考文章:k8s架构

资源类型

CUSTOM_RESOURCE_DEFINITION、NAMESPACE、RESOURCE_QUOTA、SERVICE_ACC0UNT、CLUSTER_ROLE、CLUSTER_ROLE_BINDING、ROLE、ROLE_BINDING、CONFIG_MAP、SECRET、INGRESS_CLASS、DEPLOYHENT、CUSTOM_RESOURCE、SERVICE

服务架构

服务器分为控制平面和工作节点,控制平面负责控制和管理各个 Node,Node 负责实际运行各个应用服务,它们的关系类似于训练师和帕鲁。

(1)控制平面

  • API Server 操控所有服务器的资源
  • Scheduler 监控资源是否充足
  • Controller Manager 管理服务
  • etcd 存储层

(2)工作节点

  • kubelet 管理和监控 Pod
  • Kube Proxy 负责 Node 网络通信

Pod 是 k8s 中最小的调度单位,由多个 Container 组成

(3)服务部署过程

  1. kubectl 命令行读取和解析 YAML 文件
  2. 通过 API 请求发送给 Kubernetes 控制平面内的 API Server
  3. Scheduler 通过 etcd 提供的数据寻找合适的 Node
  4. Controller Manager 会通过 API Server 控制 Node 创建服务
  5. kubelet 在收到命令后会开始基于 Container runtime 组件去拉取镜像创建容器
  6. 完成 Pod 的创建

kubeadm、kubectl、kubelet