k8s 简单介绍,包括功能,架构组织介绍.信息来源:阿里课程,本文章只是笔记。
功能
1. 调度
2. 容灾恢复
3.负载
架构
纵观资料全文。k8s 是一个server-client的结构。1)用户通过cli发送命令给server即master节点。2)master通过内部组件之间通信处理,3)最后向node下发相关指令:cli->master->node.
这句话很模糊,令人不解,不禁让人发问:
- 对于cli 或者ui等客户端来说,不能接触的那一端算是server(master-node)端了。作为管理者master将客户端的名林进行一系列处理之后,下发到node。由node作为最终行为的执行者。
- 当master收到客户端调度一个pod命令,在master内部,由APIServer组件牵头,通知(notification)各个组件行使自己的职能。但是组件之间不进行交流,组件的每次操作以及结果都会上报给APIServer.由APIServer进行下一步工作指示。APIserver组件重要程度,在设计上,其支持水平扩展
- 命令到达APIServer组件之后。会将此次调度pod的命令信息存储在分布式组件etcd中。并”通知”组件Scheduler调度器,进行这次调度并决策,之后将此次调度决策的结果(资料显示调度结果,实际上并不是真正调度)返回给APIServer组件。APIserver组件将结果存储在分布式组件etcd中。并通知node执行调度操作(这里我怀疑node实际上是从etcd中拿调度的信息,apiserver只是通知node需要做事了?!!!)
- node 被通知了做事了。细致划分,node之中管事的是kubelet,这次接到命令的kubelet,教导手下的各种组件进行做事,准备容器运行时组件的去准备运行环境,准备网络的组件去准备网络,存储的去准备存储。。各个组件各司其职。。