Kubernetes operator 前置知识篇

云原生学习路线导航页(持续更新中)

1.Operator模式学习

1.1.Operator是什么

  • Operator 是 遵循 Kubernetes 的设计理念的一种扩展模式,它强调利用 定制 CR资源 去管理应用及其组件。
  • Operator 通过 将 应用程序的运维知识 转化为 可编程的代码,使我们能够定义和管理应用程序的整个生命周期,包括安装、配置、扩展、监控和升级等方面,进而以自动化的方式管理和运维复杂的应用程序。
  • 一个Operator,主要包括两部分:自定义资源(Custom Resource)控制器(Controller)
  • Operator核心原理是 声明式配置 和 状态驱动。您可以定义自定义资源的规范(Spec)和状态(Status),Operator会根据这些定义来自动化地管理应用程序。它可以监测资源的变化,识别和处理故障,以及根据配置和策略自动扩展应用程序。

1.2.开发一个Kubernetes Operator的步骤

  • 定义自定义资源
    • 使用Kubernetes的自定义资源定义语言(CRD),定义一个自定义资源来描述您的应用程序。
    • 除了必备的TypeMeta、ObjectMeta,CRD中还应包含 资源规范Spec 和 资源状态Status 字段。
  • 创建Operator
    • 编写一个自定义的控制器(Controller),用于监控和处理您定义的CR。
    • 当用户创建或修改CR时,Controller 能够 获取到用户修改后的CR,并根据CR中Metadata、Spec等字段的变化,执行必要的操作,处理完后还要将CR的状态信息写入Status字段中,供用户查看。
  • 部署Operator
    • 部署Operator包括两部分:安装CRD,部署Controller
    • 安装CRD:将CRD应用到集群中,使kubernetes集群能够识别到该资源
    • 部署Controller:Controller 通常会在control plane之外运行,就像运行任何容器化的应用程序一样。例如,将controller打包成镜像,以 Deployment 运行。
  • 创建和管理自定义资源实例
    • 使用 kubectl 或 编写yaml 创建CR的实例
    • 使用 kubectl 或 其他kubernetes客户端工具 管理CR

1.3.Operator开发 与语言无关

1.4.Operator的后续学习路线

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值