1.5. 弃用和删除的功能
之前版本中的一些功能已被弃用或删除。
弃用的功能仍然包含在 OpenShift Container Platform 中,并将继续被支持。但是,这个功能会在以后的发行版本中被删除,且不建议在新的部署中使用。有关 OpenShift Container Platform 4.9 中已弃用并删除的主要功能的最新列表,请参考下表。表后列出了更详细的、已弃用和删除的功能信息。
在下表中,被标记为以下状态的功能:
- GA: 正式发行
- TP: 技术预览
- DEP: 已弃用
- REM: 删除
功能 | OCP 4.7 | OCP 4.8 | OCP 4.9 |
---|---|---|---|
软件包清单格式(Operator 框架) | DEP | REM | REM |
Operator 目录的 SQLite 数据库格式 | GA | GA | DEP |
| DEP | REM | REM |
| DEP | REM | REM |
v1beta1 CRD | DEP | DEP | REM |
Docker Registry v1 API | DEP | DEP | REM |
Metering Operator | DEP | DEP | REM |
调度程序策略 | DEP | DEP | DEP |
Cluster Samples Operator 的 | DEP | DEP | DEP |
Cluster Samples Operator 的 | DEP | DEP | DEP |
使用不带有 | DEP | DEP | REM |
在 RHCOS 中使用 | DEP | DEP | REM |
Cluster Loader | GA | DEP | DEP |
使用自己的 RHEL 7 计算机器 | DEP | DEP | DEP |
Builds 的 | GA | DEP | REM |
Jenkins Operator | TP | DEP | DEP |
基于 Prometheus 的 HPA 定制 metrics adapter | TP | REM | REM |
vSphere 6.7 更新 2 或更早版本以及虚拟硬件版本 13 | GA | GA | DEP |
Red Hat Virtualization(RHV)的 | DEP | DEP | DEP |
Microsoft Azure 集群的 Mint 凭证 | GA | GA |
1.5.1. 已弃用的功能
1.5.1.1. Operator 目录的 SQLite 数据库格式
Operator Lifecycle Manager (OLM) 用于目录和索引镜像的 SQLite 数据库格式已弃用,包括相关的 opm
CLI 命令。建议集群管理员和目录维护人员熟悉 OpenShift Container Platform 4.9 中引入的新的基于文件的目录格式,并开始迁移目录工作流。
OpenShift Container Platform 4.6 及更新的版本为 Red Hat 提供的默认 Operator 目录 当前仍然以 SQLite 数据库格式提供。
1.5.1.2. vSphere 6.7 更新 2 及更早的集群安装以及虚拟硬件版本 13 现已弃用
在 VMware vSphere 版本 6.7 Update 2 或更早版本以及虚拟硬件版本 13 上安装集群已弃用。对这些版本的支持将在 OpenShift Container Platform 以后的版本结束。
现在,硬件版本 15 是 OpenShift Container Platform 中 vSphere 虚拟机的默认版本。硬件版本 15 将是将来的 OpenShift Container Platform 版本中唯一支持的版本。
1.5.1.3. Red Hat Virtualization(RHV)的 instance_type_id
安装配置参数
instance_type_id
安装配置参数已弃用,并将在以后的发行版本中删除。
1.5.2. 删除的功能
1.5.2.1. Metering
此发行版本删除了 OpenShift Container Platform Metering Operator 功能。
1.5.2.2. 从 Kubernetes 1.22 中删除 Beta API
Kubernetes 1.22 删除了以下已弃用的 v1beta1
API。迁移清单和 API 客户端以使用 v1
API 版本。有关迁移已删除 API 的更多信息,请参阅 Kubernetes 文档。
资源 | API | 主要变化 |
---|---|---|
|
| 否 |
|
| |
|
| 否 |
|
| 否 |
|
| 否 |
|
| 否 |
|
| |
|
| |
|
| |
|
| 否 |
|
| 否 |
|
| |
|
| |
|
| 否 |
|
| 否 |
|
| 否 |
|
| |
|
| 否 |
|
| |
|
| 否 |
|
| |
|
| 否 |
1.5.2.3. 已删除 descheduler v1beta1 API
OpenShift Container Platform 4.9 中删除了 descheduler 的已弃用 v1beta1
API。使用 descheduler v1beta1
API 版本将任何资源迁移到 v1
。
1.5.2.4. 在 RHCOS 中删除了 dhclient
deprecated dhclient
二进制文件已从 RHCOS 中删除。从 OpenShift Container Platform 4.6 开始,RHCOS 切换到使用 initramfs
中的 NetworkManager
在早期引导过程中配置网络。改为使用 NetworkManager
内部 DHCP 客户端进行网络配置。如需更多信息,请参阅 BZ#1908462。
1.5.2.5. 停止更新 lastTriggeredImageID 字段并忽略它
当 buildConfig.spec.triggers[i].imageChage
引用的 ImageStreamTag
指向一个新镜像时,当前发行版本会停止更新 buildConfig.spec.triggers[i].imageChange.lastTriggeredImageID
。此发行版本更新了 buildConfig.status.imageChangeTriggers[i].lastTriggeredImageID
字段。
另外,Build Image Change Trigger 控制器会忽略 buildConfig.spec.triggers[i].imageChange.lastTriggeredImageID
字段。
现在,Build Image Change Trigger 控制器会基于 buildConfig.status.imageChangeTriggers[i].lastTriggeredImageID
字段,以及其现在与 buildConfig.spec.triggers[i].imageChange
中引用的 ImageStreamTag
的镜像 ID 的比较进行构建。
因此,更新需要检查 buildConfig.spec.triggers[i].imageChange.lastTriggeredImageID
的脚本和作业。(BUILD-190)
1.5.2.6. 使用没有 apiVersion 组的 v1 用于 OpenShift Container Platform 资源
对于 OpenShift Container Platform 资源中使用没有 apiVersion
组的 v1
的支持已被删除。包含 *.openshift.io
的每个资源都必须与 API index 中找到的 apiVersion
值匹配。
1.5.2.7. 删除了对 Microsoft Azure 的 mint 凭证的支持
从 OpenShift Container Platform 4.9.24 开始,在 Microsoft Azure 集群上以 mint 模式使用 Cloud Credential Operator(CCO)的支持已从 OpenShift Container Platform 4.9 中删除。此更改的原因是 Microsoft 的 Azure AD Graph API 将于 2022 年 6 月 30 日停用,并被向后移植到 z-stream 更新中所有支持的 OpenShift Container Platform 版本。
对于在以前安装的使用 mint 模式的 Azure 集群,CCO 会尝试更新现有的 secret。如果 secret 包含之前 minted 应用程序注册服务主体的凭证,则会使用 kube-system/azure-credentials
中的 secret 的内容更新。这个行为和 passthrough 模式类似。
对于将凭证模式设置为默认值 ""
的集群,更新的 CCO 会自动从 mint 模式运行,以 passthrough 模式运行。如果您的集群将凭证模式明确设置为 mint 模式("Mint"
),则必须将值改为 ""
或 "Passthrough"
。
除了 mint 模式所需的 Contributor
角色外,修改后的应用程序注册服务主体现在还需要用于 passthrough 模式的 User Access Administrator
角色。
虽然 Azure AD Graph API 仍然可用,但升级版 OpenShift Container Platform 的 CCO 会尝试清理之前 mint 的应用注册服务主体。在 Azure AD Graph API 之前升级集群可能会避免需要手动清理资源。
如果在 Azure AD Graph API 停用后,集群被升级到一个不再支持 mint 模式的 OpenShift Container Platform 版本,CCO 会在关联的 CredentialsRequest
上设置 OrphanedCloudResource
条件,但不会将相关错误视为是致命(fatal)错误。该条件包括与 unable to clean up App Registration / Service Principal: <app_registration_name>
类似的消息。在 Azure AD Graph API 停用后,清理需要使用 Azure CLI 工具或 Azure Web 控制台手动删除剩余的应用程序注册服务主体。
要手动清理资源,您必须找到并删除受影响的资源。
使用 Azure CLI 工具,通过运行以下命令从
OrphanedCloudResource
条件消息过滤使用<app_registration_name>
的应用程序注册服务主体:$ az ad app list --filter "displayname eq '<app_registration_name>'" --query '[].objectId'
输出示例
[ "038c2538-7c40-49f5-abe5-f59c59c29244" ]
运行以下命令来删除应用程序注册服务主体:
$ az ad app delete --id 038c2538-7c40-49f5-abe5-f59c59c29244
在手动清理资源后,OrphanedCloudResource
条件会保留,因为 CCO 无法验证资源是否已清理。