` k8s(四) | 听云轩

k8s(四)

k8s的架构

eOxiyF.png

其中:

  • etcd:保存了整个集群的配置信息和各种资源的状态信息
  • kube-apiserver:提供了资源操作的唯一入口,并提供了认证、授权、访问控制、API注册和发现等机制
  • kube-scheduler:负责资源的调度,按照预定的调度策略将pod调度到相应的机器上
  • kube-controller-manager:负责维护集群的状态,比如故障检测、自动扩展、滚动更新等
  • kubelet:负责维持容器的生命周期,同时也负责volume(CVI)和网络(CNI)的管理
  • container runtime:负责镜像管理以及pod和容器的真正运行(CRI),默认的容器运行时为docker
  • kube-proxy:负责为service提供cluster内部的服务发现和负载均衡。

除了核心组件以外,还有一些add-ons(附件)

  • kube-dns:为整个集群提供DNS服务
  • ingress controller:为服务提供外网入口
  • heapster:提供资源监控
  • dashboard:提供GUI
  • fluentd-elasticsearch:负责日志采集、存储和查询

分层架构

eXk5n0.png

  • 核心层:对外提供API构建高层的应用,对内提供插件式应用执行环境
  • 应用层:部署(无状态应用、有状态应用、批处理任务、集群应用等)和路由(服务发现、DNS解析)
  • 管理层:系统度量、自动化以及策略管理
  • 接口层:kubectl命令行工具、客户端SDK以及集群联邦
  • 生态系统:在接口层之上的庞大容器集群管理调度的生态系统。
------ 本文结束 ------
您的支持将鼓励我继续创作