kubernetes组成 node
k8s主要包括:docker
kubectl 客户端命令行工具:api
将接收的命令,发送给kube-apiserver,做为对整个平台操做的入口。网络
kube-apiserver REST API服务:架构
做为整个系统的控制入口,以REST API的形式公开,能够横向扩展在高可用的架构中。工具
kube-controller-manager 多个控制器的合体,用来执行整个系统中的后台任务,多个控制进程的合体:命令行
Node Controller 负责整个系统中node up 或down的状态的响应和通知
Replication Controller 负责维持Pods中的正常运行的Pod的个数
Endpoints Controller 负责维持Pods和Service的关联关系
Service Account & Token Controllers负责为新的命名空间建立默认的帐号和API访问的Token
kube-scheduler 任务调度、命令下发代理
负责监视新建立的Pods任务,下发至未分配的节点运行该任务server
kube-proxy 网络代理转发:blog
kube-proxy运行在每一个节点上,负责整个网络规则的链接与转发,使k8s中的service更加抽象化
kubelet 容器的管理
kubelet运行在每一个节点上,做为整个系统的agent,监视着分配到该节点的Pods任务,负责挂载Pods所依赖的卷组,下载Pods的秘钥,运行Pods中的容器(一般是docker),周期获取全部容器的状态,经过导出Pod和节点的状态反馈给REST系统;
etcd 信息存储
flannel IP地址的分配
4、k8s架构图