物理架构图

在这里插入图片描述


master/node

都表示一台物理主机,或者一台虚拟机。master用于管理nodenode用于运行pod


kubectl

kubectlkubenetes命令行工具,通过kubectl可以控制apiserver,部署和管理应用,查看各种资源,创建,删除和更新组件。


API server

集群的控制中枢。Kubernetes API Server 的核心功能是提供 Kubernetes 各类资源对象(Pod,Service 等)的增、删、改、查等接口,成为集群内各个功能模块之间数据交互和通信的中心枢纽。


Controller-Manager

kube-controller-manager用于监听不同的类型资源的数量,保证集群内的资源保持预期状态。由一系列的控制器组成:
Replication Controller
Node Controller
CronJob Controller
Daemon Controller
Deployment Controller
endpoint controller


Scheduler

集群的调度中心,它会根据指定的一系列条件,选择一个或一批最佳的node,部署Pod


kube-proxy

不同pod之间通信,podapiserver通信,都要经过kube-proxy。还具有负载均衡和防火墙的作用。


kubelet

kubelet负责在node上创建和删除pod。当Scheduler确定在某个Node上运行Pod后,会将Pod的具体配置信息发送给该节点的kubeletkubelet会根据这些信息创建和运行容器,并向apiserver报告运行状态。
kubelet会监控当前node下的pod运行状态,并定时汇报给apiserver


etcd

Etcd 是一个分布式键值存储系统,Kubernetes使用Etcd进行数据存储。
它会存储k8s结构信息、不同组件的配置信息,用户操作信息,日志等。


container

运行程序的基本单位


pod

一个pod内可以有多个containerpod是对container的封装。K8S认为它自己不方便直接管容器而在容器之外又加了一层壳叫pod

Logo

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

更多推荐