1.3. 主要的技术变化
OpenShift Container Platform 4.3 包括以下显著的技术更改。
Operator SDK v0.12.0
OpenShift Container Platform 4.3 支持 Operator SDK v0.12.0 或更高版本。
Operator 测试工具 (scorecard v2) 现在包括以下改进:
- 将 Operator 测试分类为 required 和 optional。
- 配置测试选择以及 pass/fail 的行为。
- 提供自定义测试。
基于 Helm 的 Operator 的改进包括
- helm v3 支持,从 Operator SDK 0.14.0 开始。
- 基于角色的访问控制 (RBAC) 生成。
基于 Ansible 的 Operator 的增强包括
- 支持 Prometheus 指标。
- Red Hat Universal Base Image (UBI) 的使用。
- 基于 Molecule 的端到端的测试。
基于 Golang 的 Operator 的改进包括:
- OpenAPI spec 生成。
- Kubernetes 1.14 支持。
-
删除基于
dep
的项目。现在,所有 Go 项目都被构建为使用 Go 模块。删除operator-sdk new
命令的--dep-manager
标记。 - 所需的 Go 版本从 v1.10 更新到 v1.13。
- 支持 Prometheus 指标。
集群日志 Fluent 的 forward 配置改变
从 OpenShift Container Platform 4.3 开始,由新的Log Forwarding API功能所引入的变化改变了对 Fluentd forward 插件的支持。对于 4.3,您仍然可以使用Fluentd forward 协议,而无需使用新的属于技术预览的日志转发功能。
要使用 Fluentd forward 协议,您必须创建一个 ConfigMap 对象来配置 out_forward,而不是编辑 fluentd
ConfigMap 中的 secure-forward.conf
部分。另外,您还可以将配置所需的证书添加到挂载到 Fluentd Pod 的 Secret 中。请参阅 使用 Fluentd Forward 插件将日志发送到外部设备。
在 4.3 中,Fluentd forward 方法被弃用,并将在以后的版本中删除。
当您升级到 OpenShift Container Platform 4.3 时,所有现存的对 fluentd
ConfigMap 的 secure-forward.conf
部分的修改都会被删除。在创建 secure-forward
ConfigMap 对象时,可以在更新前复制您当前的 secure-forward.conf
内容。
1.3.1. 不支持的功能
集群日志记录不再允许通过编辑 Fluentd Daemonset 来转发日志
由于新的 Log Forwarding API 引入的变化,您无法通过编辑 Fluentd DaemonSet 将日志转发到一个外部的 Elasticsearch 实例。
在以前的版本中,可以使用 ES_HOST
和 OPS_HOST
环境变量,或通过 fluentd
Daemonset 配置 fluent-plugin-remote-syslog
插件。
您可以使用新的Log Forwarding API功能,或 Fluentd forward 协议来把日志转发到一个外部的 Elasticsearch 实例中。相关文档已更新了相关内容。
1.3.1.1. 本地存储置备程序
以前已弃用的技术预览 ose-local-storage-provisioner
容器已被删除。建议您使用基于 OLM 的 Local Storage Operator(ose-local-storage-operator
)。
1.3.1.2. 持久性卷快照
OpenShift Container Platform 4.2 中已弃用了持久性卷快照,并已在 OpenShift Container Platform 4.3 中删除。
1.3.2. 已弃用的功能
1.3.2.1. pipelines 构建策略
pipelines 构建策略现已弃用。使用 OpenShift Pipelines 代替。
1.3.2.2. beta 工作负载警告
随着 Kubernetes 1.16 的推出,apps/v1beta1
、apps/v1beta2
和 extensions/v1beta1
工作负载现已弃用。
当使用已弃用的 API 时,会出现 UsingDeprecatedAPIExtensionsV1Beta1
警告信息。这些已弃用的 API 将在 OpenShift Container Platform 的下一版本中移除,因此请迁移至支持的 API。
1.3.2.3. Service Catalog、Template Service Broker、 Ansible Service Broker 以及它们的 Operator
Service Catalog 、Template Service Broker 、Ansible Service Broker 及其关联的 Operator 在 OpenShift Container Platform 4.2 中已弃用,并将在以后的 OpenShift Container Platform 版本中删除。如果在 4.3 中启用了这些功能,Web 控制台现在会警告用户这些功能仍处于启用状态。
以下警报可以在 Monitoring
-
ServiceCatalogAPIServerEnabled
-
ServiceCatalogControllerManagerEnabled
-
TemplateServiceBrokerEnabled
-
AnsibleServiceBrokerEnabled
以后的发行版本会删除以下相关的 API:
-
.servicecatalog.k8s.io/v1beta1
-
.automationbroker.io/v1alpha1
-
.osb.openshift.io/v1
1.3.2.4. 弃用 OperatorSources 和 CatalogSourceConfig
OperatorSources 和 CatalogSourceConfig 从 OperatorHub 中弃用。以后的发行版本会删除以下相关的 API:
-
operatorsources.operators.coreos.com/v1
-
catalogsourceconfigs.operators.coreos.com/v2
-
catalogsourceconfigs.operators.coreos.com/v1
1.3.2.5. 对 CodeReady Containers 的 VirtualBox 支持
现在已弃用了在 CodeReady Containers (paramsReady Containers) 中使用 VirtualBox 的支持。