1

在 Kubernetes 1.22 中,用于 的 beta APICustomResourceDefinition apiextensions.k8s.io/v1beta1被删除并替换为apiextensions.k8s.io/v1. 在更改 CRD 时,我意识到即使我已将 CRD 更改v1alpha1为.apiextensions.k8s.io/v1alpha1apiextensions.k8s.io/v1

我已经阅读了这个来源,它指出为了部署,我应该更改 API 版本,但我的情况是对此的扩展,因为我没有新 API 的控制器。

我是否需要为新的 API 版本编写新的控制器?

4

1 回答 1

1

我是否需要为新的 API 版本编写新的控制器?

不幸的是,它看起来确实如此。如果您无法应用此类似问题中描述的内容,因为您使用的是自定义控制器,那么您需要创建自己的新控制器(如果您无法更改其中的 API),它将与受支持的 API 一起使用。查看官方文档中的自定义控制器页面。

我不确定控制器是否可以管理新的 API 版本。即使在将 CRD 的 API 版本从 v1Alpha1 更改为 v1 之后,我也会收到一条错误消息,指出控制器正在尝试使用 API 版本 v1alpha1 列出 CRD。

看起来控制器有一些错误。引用[本文档中]所写的新 API 应该没有问题(看起来控制器写得不好。引用本文档中所写的新 API 应该没有问题。):

v1.22 版本 将停止提供以下已弃用的 API 版本,转而支持更新和更稳定的 API 版本:

  • 将不再提供extensions/v1beta1 API 版本中的入口
  • 迁移以使用从 v1.14 开始可用的 networking.k8s.io/v1beta1 API 版本。>可以通过新版本检索/更新现有的持久数据。

Kubernetes 1.16 将于 2019 年 9 月发布,因此请务必立即审核您的配置和集成!

  • 更改 YAML 文件以引用较新的 API
  • 更新自定义集成和控制器以调用更新的 API
  • 更新第三方工具(入口控制器、持续交付系统)以调用更新的 API

另请参阅1.22 中的 Kubernetes API 和功能删除:这是您需要知道的

于 2022-02-14T08:48:52.773 回答