【k8s物理架构】
物理架构图master/node都表示一台物理主机,或者一台虚拟机。master用于管理node,node用于运行pod。kubectlkubectl是kubenetes命令行工具,通过kubectl可以控制apiserver,部署和管理应用,查看各种资源,创建,删除和更新组件。API server集群的控制中枢。Kubernetes API Server 的核心功能是提供 Kubernetes
物理架构图
master/node
都表示一台物理主机,或者一台虚拟机。master
用于管理node
,node
用于运行pod
。
kubectl
kubectl
是kubenetes
命令行工具,通过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
之间通信,pod
和apiserver
通信,都要经过kube-proxy
。还具有负载均衡和防火墙的作用。
kubelet
kubelet
负责在node
上创建和删除pod
。当Scheduler
确定在某个Node
上运行Pod
后,会将Pod
的具体配置信息发送给该节点的kubelet
,kubelet
会根据这些信息创建和运行容器,并向apiserver
报告运行状态。
kubelet
会监控当前node
下的pod
运行状态,并定时汇报给apiserver
。
etcd
Etcd
是一个分布式键值存储系统,Kubernetes
使用Etcd
进行数据存储。
它会存储k8s结构信息、不同组件的配置信息,用户操作信息,日志等。
container
运行程序的基本单位
pod
一个pod
内可以有多个container
,pod
是对container
的封装。K8S认为它自己不方便直接管容器而在容器之外又加了一层壳叫pod
。
更多推荐
所有评论(0)