宣布 Knative 1.12 版本发布 ¶
发布时间:2023-10-30 , 修订时间:2023-11-22
宣布 Knative 1.12 版本发布¶
Knative 的新版本现已在多个组件中提供。
按照 安装 Knative 中的说明安装您需要的组件。
此版本对 Knative Serving 和 Eventing 的核心组件进行了一些小的改进,并对特定插件进行了一些改进。
目录¶
服务¶
🚨 重大或重要变更¶
- net-http01 组件已弃用(参见:https://github.com/knative/serving/issues/14640)
- 使用“app: webhook”标签标记 webhook 服务(#14258,@JordanDeBeer)
auto-tls
现已更名为external-domain-tls
(#14472,@ReToCode)internal-encryption
现已更名为system-internal-tls
(#14472,@ReToCode)cluster-local-domain-tls
被引入为一个新的 alpha 状态标志,用于控制集群本地域的 TLS 证书(#14472,@ReToCode)- 启用
system-internal-tls
时,来自 Ingress 到 Activator/QP 的流量使用 TLS 1.3。(#14074,@nak3) - 验证 webhook 现在允许在启用安全 pod 默认功能时添加 NET_BIND_SERVICE 或 nil 功能(#14445,@kauana)
💫 新功能和变更¶
- 允许为 Knative 服务设置
shareProcessNamespace
(功能标志:kubernetes.podspec-shareprocessnamespace
)。默认情况下禁用。(#14454,@rhuss) - 内部加密验证一个新的 SAN
kn-user-<ns>
。(#14452,@nak3) - 现在支持包含查询字符串的路径的 ReadinesProbe。(#14273,@nak3)
- 支持 gRPC 探测。(#14134,@seongpyoHong)
- 启用
system-internal-tls
时,queue-proxy 将证书机密挂载为 projected-volume,并在更改时自动重新加载证书。(#14189,@ReToCode)
🐞 错误修复¶
- Activator 在由探测以外的更改触发时正确传播 pod 健康状况。(#14347,@arsenetar)
- Activator 不会再在某个探测失败时取消所有探测(#14303,@arsenetar)
- 对自动扩展器从 queue-proxy 读取的统计数据应用上限。(#14523,@evankanderson)
- 证书生成错误冒泡到其父路由。(#14496,@gabo1208)
- 修复安全“secure-pod-defaults”,使其与受限命名空间一起使用(#14363,@KauzClay)
事件¶
新功能¶
- 触发器中的
filters
字段现在为 **beta 版本,默认情况下启用**- 新的事件过滤器现在只创建一次,而不是在每次事件上创建(#7213,@Cali0707)
- Any 过滤器现在会动态优化嵌套过滤器的顺序,以获得最佳性能。(#7205,@Cali0707)
- all 过滤器现在会动态优化其排序以提高性能(#7300,@Cali0707)
- exact 过滤器现在使用更少的内存,速度更快! (#7311,@Cali0707)
- prefix 过滤器现在快了很多! (#7309,@Cali0707)
- suffix 过滤器现在速度更快! (#7312,@Cali0707)
- OIDC 身份验证功能
- 在 CRD 中添加 Audience 字段(#7244,@xiangpingjiang)
- 在 Broker 状态中公开 Broker 的 OIDC 受众(#7237,@creydr)
- 在 InMemoryChannel 状态中公开 InMemoryChannel 的 OIDC 受众(#7371,@creydr)
- 在 APIServerSource .status.auth.serviceAccountName 中公开 APIServerSource OIDC 服务帐户名称(#7330,@Leo6Leo)
- 在 PingSource .status.auth.serviceAccountName 中公开 PingSource OIDC 服务帐户名称(#7344,@Leo6Leo)
- 在 SinkBinding .status.auth.serviceAccountName 中公开 SinkBinding OIDC 服务帐户名称(#7327,@rahulii)
- 在 Subscriptions.status.auth.serviceAccountName 中公开 SubscriptionsOIDC 服务帐户名称(#7338,@xiangpingjiang)
- 在 Triggers .status.auth.serviceAccountName 中公开 Triggers OIDC 服务帐户名称(#7299,@creydr)
- Mt-broker-ingress:如果启用了 OIDC 身份验证,则验证接收到的 JWT 的受众(#7336,@creydr)
- OIDC 令牌现在被缓存以提高性能。(#7335,@Cali0707)
- 现在可以在
config-features
中指定功能子集,而不会覆盖默认值(#7379,@pierDipi)
错误修复¶
- 修复用于自动创建的
EventType
的唯一名称生成器(#7160,@dsimansk) - 正确处理网络错误,即 ApiServerSource 适配器在启动时无法检索资源。(#7279,@pierDipi)
- 使用 MTChannelBasedBroker 时,事件类型现在只创建一次。(#7161,@Cali0707)
- 在 TLS 记录中正确设置集群域后缀。(#7145,@creydr)
修复了 not 过滤器中的内存泄漏。(#7310,@Cali0707)
filters 字段现在只有在 filters 字段中存在过滤器时才会覆盖触发器上的过滤器字段。(#7286,@Cali0707)
- 修复了为内置源创建和删除事件类型的循环错误(#7245,@Cali0707)
- 修复了
knative-eventing-namespaced-edit
角色的规则聚合,仅在 Knative 事件资源上授予查看权限。(#7124,@creydr) - 将 go
x/net
依赖项更新到帮助缓解 CVE-2023-44487 的版本(#7348,@Cali0707)
客户端¶
重大或重要变更¶
- 🐣 将弃用的
v1alpha1
DomainMapping API 升级到v1beta1
(#1856,@xiangpingjiang)
新功能¶
- 上下文共享 POC(#1855,@dsimansk)
错误或回归¶
- 从
trigger update
命令中删除不可用的--broker
标志(#1847,@dsimansk)
其他(清理或异常)¶
- 修复
hack/build.sh
脚本中的 shellcheck 警告(#1860,@xiangpingjiang) - 从
kn trigger
命令组中删除弃用的--inject-broker
标志(#1853,@xiangpingjiang) - 更新核心 cli 依赖项(#1851,@dsimansk)
函数¶
错误或回归¶
- 修复:解析具有更复杂层次结构(子路径)的注册表(#1929,@matejvasek)
- 修复:版本语义(#1933,@lkingland)
其他(清理或异常)¶
- 整理:将 client-go 依赖项更新到对齐的版本(#1957,@dsimansk)
- 修复:Golang 函数的 OnCluster 构建(#1445,@Shashankft9)
未分类¶
- 任务:使用 nodejs-16-minimal 作为 JS/TS 的默认构建器,而不是 nodejs-16 (#2015, @matejvasek)
- 任务:使用自定义 jammy paketo 构建器 (#1911, @matejvasek)
- 任务:更新 springboot 模板中的 maven 配置文件 buildEnv (#2014, @trisberg)
操作符¶
未分类¶
- 为 pingsource 适配器添加更多环境变量,以保留环境变量,防止事件控制器和操作符争夺环境变量值。(#1534,@aliok)
- 为 ServiceType NodePort(kourier 配置)添加 http-port 和 https-port (#1541, @eBeyond)
- 不再支持 Autoscaling/v2beta1 和 policy/v1beta1。如果您使用自定义清单,请使用 autoscaling/v2 和 policy/v1。(#1579,@nak3)
- 当显式设置空 overrideProbe 时,禁用探测。(#1519,@nak3)
- 支持 Eventing 传输加密(TLS),更多信息请参见 https://knative.k8s.ac.cn/docs/eventing/experimental-features/transport-encryption/ (#1582, @pierDipi)
- 操作符现在在定义工作负载覆盖时设置 HorizontalPodAutoscaler 副本(在具有 HPA 的资源上)。(#1548,@ReToCode)
感谢贡献者¶
发布负责人:¶
了解更多¶
Knative 是一个开源项目,社区中的任何人都可以使用、改进和享受它。我们很乐意您加入我们!
- Knative 文档
- 快速入门教程
- 示例
- Knative 工作组
- Knative 用户邮件列表
- Knative 开发邮件列表
- Knative 在 Twitter 上 @KnativeProject
- Knative 在 StackOverflow 上
- CNCF Slack 上的
#knative
- Knative 在 YouTube 上