v1.0 版本发布

发布时间:2021-11-08 ,  修订时间:2023-08-03

宣布 Knative v1.0 版本发布

Knative 的新版本现已在多个组件中发布。

请按照文档中安装 Knative中的说明安装相应的组件。

目录

亮点

  • 所有组件版本现在都标记为 knative-v1.0.0,对于使用 go 库的用户,请使用版本 v0.27
  • 每个命名空间的通配符证书供应程序已集成到基本控制器中
  • 默认情况下,Prefer: reply 标头将转发到代理触发器的订阅者

Serving v1.0

🚨 更改或重大更改

  • 每个命名空间的通配符证书供应程序已集成到基本控制器中,现在由 namespace-wildcard-cert-selector 字段控制。此字段允许您使用 Kubernetes LabelSelector 来选择哪些命名空间应该提供证书。

  • 要迁移现有使用 serving-nscert 控制器的用法,请执行以下操作

    • 将 namespace-wildcard-cert-selector 设置为该值
      matchExpressions:
      - key: "networking.knative.dev/disableWildcardCert"
        operator: "NotIn"
        values: ["true"]
      
    • 删除在先前版本中由 serving-nscert.yaml 资源定义的部署、服务和集群角色(#12174

💫 新功能和更改

  • 每个命名空间的通配符证书供应已集成到 Knative 主控制器中,不再是单独的安装。它现在由 Kubernetes 命名空间上的标签选择器控制。
  • 一项新的实验性功能“concurrencyStateEndpoint”允许在容器并发量变为零或非零时通知 Webhook(#11802#12162#11917
  • 当网络配置映射中的网格兼容模式未设置为“auto”时,激活器将尊重 Kubernetes 的就绪状态,并在 Kubernetes 就绪状态比激活器的探测更快地传播时避免探测。(#12086

🐞 错误修复

  • 修复了在建立域所有权之前请求 TLS 证书的问题。(#12080

Eventing v1.0

🚨 更改或重大更改

  • 如果设置了“strict-subscriber”功能标志,则订阅将要求设置 spec.subscriber。以前,Subscription 会接受裸 spec.reply。此功能将在 1.1 版本中启用;为了跟踪事件规范并改进使用订阅时的用户体验,它会破坏与先前版本的兼容性。(#5762

💫 新功能和更改

  • 默认情况下,Prefer: reply 标头将转发到代理触发器的订阅者 (#5773)
  • 如果设置了 spec.reply 字段,则会将标头 Prefer: reply 添加到发送到订阅订阅者的请求中。(#5764
  • 如果未指定代理、触发器、通道和订阅的字段 spec.delivery.deadLetterSink.ref.namespace,则默认为 metadata.namespace。(#5748
  • 将 deadLetterSinkUri 添加到通道状态。
    • 使用 1 年计时器弃用 deadLetterChannel。(#5746
  • 通道和订阅现在将强制执行“delivery”字段的验证。(#5777
  • 下一代多租户调度程序和取消调度程序:使用插件接口来指定调度程序配置文件,该配置文件包含分别运行过滤和评分的谓词和优先级,以计算最佳 vreplica 布置。当自动扩展程序添加新 Pod 时,调度程序会对已放置的 vreplica 以及新的 vreplica 进行重新平衡。在需要缩减 vreplica 数量并删除布置时,必须安装取消调度程序配置文件。(#5818
  • 将 UID 添加到可用的 Kreference 映射解析器模板字段 (#5810

🐞 错误修复

  • 修复了并行更新泄漏资源的问题。为了使修复生效,提供的通道必须在标记为 duck.knative.dev/channelable 的集群角色中包含 delete 动词。(#5775
  • 修复了 Sequence 更新泄漏资源的问题。为了使修复生效,提供的通道必须在标记为 duck.knative.dev/channelable 的集群角色中包含 delete 动词。(#5718

事件扩展

Apache Kafka 代理 v1.0

💫 新功能和更改
  • KafkaBroker 的集群角色 knative-kafka-data-plane 已重命名为 knative-kafka-broker-data-plane (#1315)
  • KafkaBroker 的服务帐户 knative-kafka-data-plane 已重命名为 knative-kafka-broker-data-plane (#1315)
  • KafkaBroker 的集群角色绑定 knative-kafka-data-plane 已重命名为 knative-kafka-broker-data-plane (#1315)
  • KafkaSink 的集群角色 knative-kafka-data-plane 已重命名为 knative-kafka-sink-data-plane (#1315)
  • 用于 KafkaSink 的 ServiceAccount `knative-kafka-data-plane` 已重命名为 `knative-kafka-sink-data-plane` (#1315)
  • 用于 KafkaSink 的 ClusterRoleBinding `knative-kafka-data-plane` 已重命名为 `knative-kafka-sink-data-plane` (#1315)
  • 将 Broker 和 Trigger 的 `status.deadLetterSinkUri` 设置为 `spec.delivery.deadLetterSink` 的解析 URI (#1349)

RabbitMQ Broker 和 Source v1.0

💫 新功能和变更
  • 触发器现在将并行地将事件发送到其订阅者,正在传输的消息数量默认值为 10,可以通过注释 `rabbitmq.eventing.knative.dev/prefetchCount` 进行配置。(#418)
  • 触发器过滤器现在强制为不可变,因为底层的 RMQ 绑定是不可变的 (#468)
🐞 错误修复
  • 如果未定义死信接收器,Broker 将不再为死信事件创建队列 (#453)

客户端 v1.0

💫 新功能和变更

  • 删除已弃用的标志 `--lookup-path` (#1506)
  • 将 `--extra-containers` 重命名为 `--containers` (#1499)
  • 删除已弃用的标志 `--min-scale` 和 `--max-scale` (#1498)
  • 删除已弃用的标志 `--limits-cpu` 和 `--limits-memory` (#1498)
  • 在缺少 API 错误消息时添加更多解释 (#1497)
  • 弃用 `--concurrency-target` 和 `--concurrency-utilization`,分别改用 `--scale-target` 和 `--scale-utilization` (#1490)
  • 弃用 `--autoscale-window`,改用 `--scale-window` (#1489)
  • 当指定 N-1 个修订版时,计算流量分配 (#1483)
  • 如果不存在,则创建默认配置文件 (#1472)

🐞 错误修复

  • 修复域描述引用以显示正确的类型 (#1477)

操作员 v1.0

💫 新功能和变更

  • 添加 COC,贡献文档 (#790)
  • 从不支持 HA 的列表中删除 pingsource-mt-adapter (#788)
  • 将高可用性应用于操作员管理的所有部署 (#749) 修复 `with` 的拼写错误 (#781)
  • 添加对 `spec.deployments.affinity` 的支持 (#777)
  • 当高可用性具有更大的数量时,调整 HPA 中的 `maxReplicas` (#748)
  • 为 Knative 操作员准备标签 `app.kubernetes.io/version` (#738)
  • 允许通过 `spec.deployments.tolerations` 设置容忍度 (#747)
  • 从 HA 扩展中删除 pingsource (#740)
  • 删除已弃用的 `enabledComponents` 字段设置 (#735)
  • 在 `hack/update-codegen.sh` 中使用 `knative.dev/hack/codegen-library.sh` (#734)
  • 删除事件的 `heartbeats` (#792)

🐞 错误修复

  • 修复安装 `spec.manifests` 时出现的错误问题 (#750)

感谢贡献者

了解更多

Knative 是一个开源项目,任何社区成员都可以使用、改进和享受。我们希望你加入我们!

我们使用分析和 Cookie 来了解网站流量。有关您使用我们网站的信息将与 Google 共享,以用于该目的。 了解更多。