Master是控制节点,有一个或者一组(一般两三个),是整个集群的大脑。Master有三个核心组件:APIServer:负责接收并处理请求;Scheduler:调度Pod创建的请求(Pod是容器的一层外壳,给容器做一些封装);Controller Manager:确保控制器的健康。Master有一个资源调度器(Scheduler),用来分析各Node中可用的资源。Node是实际工作的负载节点。
如果Master不健康了,在Master还有一个组件–控制器管理器(controller Manager),控制器管理器也可以做冗余
- Pod
- 自主式Pod
- 控制器管理的Pod
- Replication Controller
- ReplicaSet (RC的升级)
- Deployment(ReplicaSet的升级)
Pod里的容器共享Pod IP和数据卷,一般一个Pod里放一个容器。Pod里需要一些元数据,创建完Pod,可以给它打上标签。Label Selector–标签选择器,用以选择对应的Pod。
Label: key=value
node有kubelet组件用以和APIserver进行交互
K8S的一些特性:
- 自动装箱,自我修复,水平扩展,服务发现和负载均衡,自动发布和回滚
- 密钥和配置管理,存储编排,批量处理执行