第二阶段 筑基期(4-6 周,每周 8-10 小时) -2

Controller Manager 控制器

Controller Manager。Kubernetes 控制器是其架构中最为核心的一环,我们需要了解控制器的原理,List-Watch 的基本原理,知道 Kubernetes 默认情况下大致包含哪些类型的控制器。
通过Controller Manager的Share Informer,Kubernetes实现了组件间通过Http协议进行通信,在不依赖任何中间件的情况下,实现消息的实时性、可靠性和书序性
list-watch 模式是解耦系统中各个组件间的数据交互流程,
在这里插入图片描述

[https://zhuanlan.zhihu.com/p/255078405]
其中Reflector是用了Watch制定的Kubernetes资源,当监控的资源发生变化是触发相应的事件如Added(资源添加)… 并将其资源对象存放到本地缓存DeltaFIFO中
DeltaFIFO保存对象操作类型的队列;
Indexder是一个本地存储,用来保存资源对象存储的。

List是将事件通过Http短链接发送;
Watch是通过Http长连接试试沟通时间状态。

Scheduler 调度器

Scheduler。熟悉 Kubernetes 的调度流程是怎样的,调度器在整个调度流程中的角色。

  • 预选策略(predicate) 遍历nodelist,选择出符合要求的候选节点,Kubernetes内置了多种预选规则供用户选择。
  • 优选策略(priority) 在选择出符合要求的候选节点中,采用优选规则计算出每个节点的积分,最后选择得分最高的。
  • 选定(select) 如果最高得分有好几个节点,select就会从中随机选择一个节点

Node 组件

Kubelet。知道 Kubelet 是如何接受调度请求并启动容器的。
Kube-proxy。了解 Kube-proxy 的作用,提供的能力是什么。
Container Runtime。了解都有哪些 Container Runtime,主要了解 Docker 一些基本操作与实现原理。

Kubelet

Kubelet 是 kubernetes 工作节点上的一个代理组件,运行在每个节点上。
在这里插入图片描述

Kubelet是工作节点上的主要服务,定期从kube-apiserver组件接收新的或修改的Pod规范,并确保Pod及其容器在期望规范下运行。同时该组件作为工作节点的监控组件,向kube-apiserver汇报主机的运行状况。

Kubelet 读取监听到的信息,如果是创建和修改 Pod 任务,则执行如下处理:

  • 为该 Pod 创建一个数据目录;
  • 从 API Server 读取该 Pod 清单;
  • 为该 Pod 挂载外部卷;
  • 下载 Pod 用到的 Secret;
  • 检查已经在节点上运行的 Pod,如果该 Pod 没有容器或 Pause 容器没有启动,则先停止 Pod 里所有容器的进程。如果在 Pod 中有需要删除的容器,则删除这些容器;
  • 用 “kubernetes/pause” 镜像为每个 Pod 创建一个容器。Pause 容器用于接管 Pod 中所有其他容器的网络。每创建一个新的 Pod,Kubelet 都会先创建一个 Pause 容器,然后创建其他容器。
  • 为 Pod 中的每个容器做如下处理:
    1. 为容器计算一个 hash 值,然后用容器的名字去 Docker 查询对应容器的 hash 值。若查找到容器,且两者 hash 值不同,则停止 Docker 中容器的进程,并停止与之关联的 Pause 容器的进程;若两者相同,则不做任何处理;
    2. 如果容器被终止了,且容器没有指定的 restartPolicy,则不做任何处理;
    3. 调用 Docker Client 下载容器镜像,调用 Docker Client 运行容器。

核心 Addons & Plugins

DNS。DNS 为集群的服务发现提供的支持,Kubernetes 1.13 开始默认使用 CoreDNS。
Network Plugin。Kubernetes 多节点环境需要部署网络插件才可以使用,默认情况下使用 flannel 即可。

DNS 是 Kubernetes 的核心功能之一,通过 kube-dns 或 CoreDNS 作为集群的必备扩展来提供命名服务,CoreDNS 的特点是效率更高,资源占用率更小,推荐使用 CoreDNS 替代 kube-dns 为集群提供 DNS 服务。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值