5.5.2.3. 了解 Operator 逻辑

在本例中,nginx-operator 项目会针对每个 Nginx 自定义资源 (CR) 执行以下协调逻辑:

  • 如果尚无 Nginx 部署,请创建一个。
  • 如果尚无 Nginx 服务,请创建一个。
  • 如果被启用且不存在,请创建一个 Nginx ingress。
  • 确保部署、服务和可选入口与 Nginx CR 指定的配置匹配,如副本数、镜像和服务类型。

默认情况下,nginx-operator 项目会监视 Vginx 资源事件,如 watches.yaml 文件中所示,并使用指定 Chart 执行 Helm 发行版本:

# Use the 'create api' subcommand to add watches to this file.
- group: demo
  version: v1
  kind: Nginx
  chart: helm-charts/nginx
# +kubebuilder:scaffold:watch
5.5.2.3.1. Helm chart 示例

创建 Helm Operator 项目后,Operator SDK 会创建一个 Helm Chart 示例,其中包含一组模板,用于简单的 Nginx 发行版本。

本例中,针对部署、服务和 Ingress 资源提供了模板,另外还有 NOTES.txt 模板,Helm Chart 开发人员可利用该模板传达有关发型版本的实用信息。

如果您对 Helm chart 有一定的了解,请参阅 Helm 开发人员文档