Kubernetes 源码剖析与实战
孔令飞
前腾讯云专家工程师
1549 人已学习
新⼈⾸单¥68
登录后,你可以任选4讲全文学习
课程目录
已更新 42 讲/共 55 讲
Kubernetes 源码剖析与实战
15
15
1.0x
00:00/00:00
登录|注册

40|扩展能力:控制面层、基础设施层扩展机制详解

你好,我是孔令飞。
在上一节课中,我概括了 Kubernetes 中现有的扩展能力,并介绍了横向层、客户端层、API 层具有的扩展能力。本节课,我继续讲解 Kubernetes 扩展能力部分中的控制面层、基础设施层。

控制面层

控制面层的扩展能力有以下几个:
自定义控制器
Cloud Provider Interface(CPI)
调度器扩展
KMS
下面,我们一一来看。

自定义控制器

控制器是 Kubernetes 中非常重要的概念,控制器会 Watch 特定资源的变更,并根据资源变更进行调和处理,使资源始终处在期望的状态。
Kubernetes 有很多内置的资源,这些资源大部分都有内置的控制器,控制器会对这些资源进行调和,并处理资源相关的业务逻辑。例如:deployment-controller、daemonset-controller、replicaset-controller 等(更多内置的控制器见 controller_names.go#L45)。
但是只有内置的控制器,很多时候满足不了公司业务的需求。例如:我们新安装了一个 CRD 资源,需要对这个 CRD 资源进行调和。另外,对于 Kubernetes 内置的 CRD 资源,我们可能也需要进行一些调和,最典型的场景如:编写一个控制器、Watcher Service 资源、根据 Service 资源的变更,以及将 Pod 的 Endpoint 注册到公司内部的服务中心(例如 consul)。幸运的是,Kubernetes 支持自定义控制器。
确认放弃笔记?
放弃后所记笔记将不保留。
新功能上线,你的历史笔记已初始化为私密笔记,是否一键批量公开?
批量公开的笔记不会为你同步至部落
公开
同步至部落
取消
完成
0/2000
荧光笔
直线
曲线
笔记
复制
AI
  • 深入了解
  • 翻译
    • 英语
    • 中文简体
    • 法语
    • 德语
    • 日语
    • 韩语
    • 俄语
    • 西班牙语
  • 解释
  • 总结

1. Kubernetes 中的控制面层扩展能力包括自定义控制器、Cloud Provider Interface(CPI)、调度器扩展和KMS。 2. 自定义控制器允许开发者根据特定需求对资源进行调和处理,满足业务需求。 3. Cloud Provider Interface(CPI)允许公有云厂商开发自己的cloud-controller-manager,处理与云环境紧密耦合的逻辑。 4. Kubernetes 支持多种方式扩展调度器,以满足企业自定义调度策略的需求。 5. Kubernetes 提供了KMS扩展机制,支持以加密的方式向etcd存储数据,或者对接外部的Key Management管理系统加密内容再存储。 6. CPI和KMS扩展机制的引入使得Kubernetes在与公有云对接和数据加密方面更加灵活和安全。 7. CNI负责管理容器之间的网络连接、IP地址分配和网络策略,用来扩展Kubernetes的网络以适配不同的企业网络环境。 8. CSI是Kubernetes中用于扩展存储能力的接口,允许用户集成不同的存储解决方案。 9. Device Plugin允许用户管理和调度特定硬件设备,如GPU、FPGA和其他加速器。 10. Virtual Kubelet是一个开源项目,旨在为Kubernetes提供一种轻量级的、可扩展的节点抽象,允许将工作负载调度到外部资源上,而无需在Kubernetes集群中实际运行这些节点。

仅可试看部分内容,如需阅读全部内容,请付费购买文章所属专栏
《Kubernetes 源码剖析与实战》
新⼈⾸单¥68
立即购买
登录 后留言

精选留言

由作者筛选后的优质留言将会公开显示,欢迎踊跃留言。
收起评论
显示
设置
留言
收藏
沉浸
阅读
分享
手机端
快捷键
回顶部