技术编程|图解 K8s 核心概念和术语
我第一次接触容器编排调度工具是 Docker 自家的 Docker Swarm , 主要解决当时公司内部业务项目部署繁琐的问题 , 我记得当时项目实现容器化之后 , 花在项目部署运维的时间大大减少了 , 当时觉得这玩意还挺新鲜的 , 原来自动化运维可以这么玩 。 后面由于工作原因 , 很久没碰过容器方面的知识了 。 最近在公司的数据同步项目中 , 需要使用到分布式调度数据同步执行单元 , 目前使用的方案是将数据同步执行单元打包成镜像 , 使用 K8s 进行调度 , 正好趁这个机会了解一下 K8s , 下面我就用图解的形式将我所理解的 K8s 分享给大家 。 K8s 三大核心功能
K8s 是一个轻便的和可扩展的开源平台 , 用于管理容器化应用和服务 。 通过 K8s 能够进行应用的自动化部署和扩缩容 。
K8s 是比容器更上一层的架构 , 它可以支持多种容器技术 , 比如我们熟悉的 Docker , K8s 定位是一个容器调度工具 , 它主要具备以下三大核心能力:
1、自动调度
k8s 将用户部署提交的容器放到 k8s 集群的任意一个节点中 , k8s 可以根据容器所需要的资源大小 , 以及节点的负载情况来决定容器放在哪个节点上面 。
本文插图
2、自动修复
当 k8s 的健康检查机制发现某个节点出现问题 , 它会自动将该节点上的资源转移到其它节点上面完成自动恢复 。
本文插图
3、横向自动扩缩容
在 k8s 1.1+ 版本中 , 有一个功能叫 “ Horizontal Pod Autoscaler” , 简称 “HPA” , 意思是 Pod自动扩容 , 它可以预先定义 Pod 的负载指标 , 当达到预期设定的负载指标后 , 就会根据指标自动触发自动动态扩容/缩容行为 。
1)横向自动扩容
本文插图
2)横向自动缩容
本文插图
节点
从上面的图可以看出来 , k8s 集群的节点有两个角色 , 分别为 Master 节点和 Node 节点 , 整个 K8s 集群Master 和 Node 节点关系如下图所示:
本文插图
1、Master 节点
Master 节点也称为控制节点 , 每个 k8s 集群都有一个 Master 节点负责整个集群的管理控制 , 我们上面介绍的 k8s 三大能力都是经过 Master 节点发起的 , Master 节点包含了以下几个组件:
【技术编程|图解 K8s 核心概念和术语】
本文插图
API Server:提供了 HTTP Rest 接口的服务进程 , 所有资源对象的增、删、改、查等操作的唯一入口;
Controller Manager:k8s 集群所有资源对象的自动化控制中心;
Scheduler:k8s 集群所有资源对象自动化调度控制中心;
ETCD:k8s 集群注册服务发现中心 , 可以保存 k8s 集群中所有资源对象的数据 。
2、Node
Node 节点的作用是承接 Master 分配的工作负载 , 它主要有以下几个关键组件:
本文插图
kubelet:负责 Pod 对应容器的创建、启停等操作 , 与 Master 节点紧密协作;
kube-porxy:实现 k8s 集群通信与负载均衡的组件 。
推荐阅读
- 摄像头|小米截胡中兴屏下摄像头技术,小米研发还是供应链技术?
- 马斯克|马斯克用活猪演示脑机接口技术:实时读取猪脑信息 心灵感应成真了
- 三防|带你了解三防手持终端的秘密
- 第三|原创 小米发布第三代屏下相机技术,或将在Mix 4上首秀?
- 海信|首个新兴显示技术分标委成立 海信牵头制定国标
- 中年|Python编程语言有什么独特的优势呢?
- |马斯克用活猪演示脑机技术,他希望今年年底前能在人体内植入
- 互联网的放大镜|小米截胡中兴屏下摄像头技术,小米研发还是供应链技术?
- 新机发布|原创 小米发布第三代屏下相机技术,或将在Mix 4上首秀?
- 技术|最新《中国禁止出口限制出口技术目录》发布,新增操作系统、密码芯片安全技术