1.12. Red Hat OpenShift Serverless 1.23.0 发行注记

OpenShift Serverless 1.23.0 现已发布。OpenShift Container Platform 上的 OpenShift Serverless 的新功能、改变以及已知的问题包括在此文档中。

1.12.1. 新功能

  • OpenShift Serverless 现在使用 Knative Serving 1.2。
  • OpenShift Serverless 现在使用 Knative Eventing 1.2。
  • OpenShift Serverless 现在使用 Kourier 1.2。
  • OpenShift Serverless 现在使用 Knative (kn) CLI 1.2。
  • OpenShift Serverless 现在使用 Knative Kafka 1.2。
  • kn func CLI 插件现在使用 func 0.24。
  • 现在,可以在 Kafka 代理中使用 kafka.eventing.knative.dev/external.topic 注解。此注解可以使用现有的外部管理主题,而不是代理自行创建内部主题。
  • kafka-ch-controllerkafka-webhook Kafka 组件不再存在。这些组件已被 kafka-webhook-eventing 组件替代。
  • OpenShift Serverless 功能技术预览现在默认使用 Source-to-Image (S2I) 来构建容器镜像。

1.12.2. 已知问题

  • Kafka 代理、Kafka 源和 Kafka sink 禁用 Federal Information Processing Standards (FIPS) 模式。
  • 如果您要删除包括 Kafka 代理的命名空间,当 auth.secret.ref.name secret 在代理被删除之前被删除,则命名空间终结器(finalizer)可能无法删除。
  • 使用大量 Knative 服务运行 OpenShift Serverless 时,可能会导致运行的 Knativeivator pod 接近其默认的内存限值 600MB。如果使用的内存达到这个限值,则这些 pod 可能会重启。通过修改 KnativeServing 自定义资源,可以配置激活器部署的请求和限值:

    apiVersion: operator.knative.dev/v1beta1
    kind: KnativeServing
    metadata:
      name: knative-serving
      namespace: knative-serving
    spec:
      deployments:
      - name: activator
        resources:
        - container: activator
          requests:
            cpu: 300m
            memory: 60Mi
          limits:
            cpu: 1000m
            memory: 1000Mi
  • 如果您使用 Cloud Native Buildpacks 作为一个函数的本地构建策略,kn func 将无法自动启动 podman,或使用 SSH 隧道到远程守护进程。这些问题的解决方法是,在部署函数前,在本地开发计算机上已在运行 Docker 或 podman 守护进程。
  • On-cluster 函数构建当前针对 Quarkus 和 Golang 运行时会失败。它们适用于 Node、Typescript、Python 和 Springboot 运行时。
  • 如果您将 net-istio 用于 Ingress,并使用 security.dataPlane.mtls: true 通过 SMCP 启用 mTLS,Service Mesh 为 *.local 主机部署 DestinationRule,这代表不允许对 OpenShift Serverless 使用 DomainMapping

    要临时解决这个问题,部署 PeerAuthentication 来启用 mTLS,而不是使用 security.dataPlane.mtls: true

OpenShift Container Platform 的其他资源