一、Kubernetes作用
k8s是容器集群管理系统,是一个开源的平台,可以实现容器集群的自动化部署,自动扩缩容,自动维护等功能。
二、Kubernetes核心架构
master 管理节点(控制节点)
node 计算节点
image 镜像仓库
架构图
架构图
三、各角色的功能
1、Master(控制节点)功能和节点核心组件
(1)master功能
- 提供集群控制
- 对集群进行全局决策
- 检测和影响集群事件
(2)master节点核心组件
- API Server
是整个系统的对外接口,供客户端和其他组件调用。
后端元数据存储与ectd中(键值数据库) - Scheduler
负责对集群内部的资源进行分配和调度 - ControllerManager
负责管理控制器 - etcd
CoreOS团队基于go语言实现的目标为构建一个高可用的分布式键值数据库。
kubernetes运行过程中产生的元数据存储在etcd中。
Master节点核心组件
2、Node(计算节点)功能和核心组件
(1)Node功能
- 运行容器的实际节点
- 提供运行环境
- 在多个节点上运行
- 水平扩展
(2)Node核心组件
- kubelet
负责监视pod,创建,删除,修改等 - kube-proxy
主要为pod对象提供代理
实现service通信与负载均衡 - Runtime
容器管理
3、镜像仓库功能与组件
(1)镜像仓库功能
- 存储镜像
- 为节点提供镜像支持
(2)仓库组件
Registry或Harbor