Operator 和红帽 OpenShift 容器平台
红帽® OpenShift® Operator 自动执行 Kubernetes 原生应用实例的创建、配置和管理。从管理构成平台的各个组件,到作为托管服务提供的应用,Operator 可以实现全堆栈自动化运维。
红帽 OpenShift 使用 Operator 以自动方式运行整个平台,同时通过 Kubernetes 对象原生开放配置,从而进行快速安装和频繁可靠的更新。除 Operator 管理平台的自动化优势外,红帽 OpenShift 还可以更轻松地查找、安装和管理集群上运行的 Operator。
红帽 OpenShift 还整合了 OperatorHub,它是来自软件供应商和开源项目的认证 Operator 库。在嵌入式 OperatorHub 中,您可以浏览并安装经认证可与红帽 OpenShift 配合使用,以及已封装便于进行生命周期管理的 Operator 库。
电子书
O’Reilly:Kubernetes Operator:自动化容器编排平台
查看 Operator 如何运行以及如何使用 Operator 框架和 SDK 构建 Operator 的示例。
Operator 框架
Operator 框架是为开发人员和集群管理员提供工具,以加速 Operator 开发和部署的开源项目。
该项目包含了用于构建 Kubernetes 应用的 Operator 软件开发工具包(SDK)、使用 Operator 扩展 Kubernetes 的管理框架,以及 Kubernetes 社区现有 Operator 的目录。
构建 Operator
社区 Operator
通过访问社区 Operator,开发人员和集群管理员可以试用各种成熟度级别的 Operator,这些 Operator 可与任何 Kubernetes 共同使用。查看 OperatorHub.io 上的社区 Operator。
经认证的 Operator
通过嵌入式 OperatorHub 中的红帽 OpenShift 认证 Operator,开发人员和集群管理员可以访问"即服务"的工作负载库,该库经过红帽 OpenShift 验证,并由红帽及其合作伙伴提供支持。
用 Operator 生命周期管理器打包
Operator 生命周期管理器(OLM)是帮助管理 Kubernetes 集群上的 Operator 的基础。将热门应用作为服务提供的 Operator 将是长期的工作负载,有可能在集群上有很多权限。
使用 OLM,管理员可以控制哪些 Operator 在哪些名称空间中可用,以及谁可以与正在运行的 Operator 交互。Operator 的权限会进行自动准确配置,以遵循最低权限方法。OLM 通过解决对其他 Operator 的依赖关系、触发 Operator 及其管理的应用的更新,或授权团队访问其集群部分的 Operator,来管理 Operator 的整个生命周期及其资源。
简单、无状态的应用可以通过利用通用 Operator(例如 Helm Operator)来使用 Operator 框架的生命周期管理功能,无需编写任何代码。但是,在复杂且有状态的应用中,Operator 的作用就能非常凸显。写入 Operator 代码中的托管服务功能可以提供高级用户体验,自动化更新、备份和扩展等功能。
使用 Operator 计量进行测量
通过计量扩展,IT 团队可以更好地控制预算,软件供应商可以更轻松地跟踪其商业软件的使用情况。Operator 计量旨在跟踪集群的 CPU 和内存的信息,并计算 IaaS 成本和自定义指标,如许可证。