v1.0 版本發佈
發佈於:2021-11-08, 修訂於:2023-08-03
公告 Knative v1.0 版本發佈¶
Knative 的新版本現在可在多個元件中使用。
請依照文件中的指示 安裝 Knative 以取得各自的元件。
目錄¶
重點¶
- 所有元件版本現在都標記為
knative-v1.0.0
,對於使用 go 程式庫的使用者,請使用v0.27
版本 - 每個命名空間的萬用字元憑證佈建器已整合到基本控制器中
- 預設情況下,Prefer: 回覆標頭會轉發到 Broker Triggers 的訂閱者
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 資源定義的 Deployment、Service 和 ClusterRole (#12174)
- 將 namespace-wildcard-cert-selector 設定為值
💫 新功能與變更¶
- 每個命名空間的萬用字元憑證佈建已整合到主要的 Knative 控制器中,不再是單獨的安裝。現在由 Kubernetes 命名空間上的標籤選取器控制。
- 新的實驗性功能「concurrencyStateEndpoint」可讓 webhook 在容器的並行狀態進入/離開零時收到通知 (#11802, #12162, #11917)
- 當網路設定對應中未將網格相容模式設定為「auto」時,activator 將會尊重 Kubernetes 的就緒狀態,並在 Kubernetes 就緒狀態傳播速度快於 activator 的探測時避免探測。( #12086)
🐞 Bug 修正¶
- 修正了在建立網域擁有權之前要求 TLS 憑證的問題。( #12080)
Eventing v1.0¶
🚨 重大或值得注意的變更¶
- 如果設定了「strict-subscriber」功能旗標,訂閱將會要求設定 spec.subscriber。先前,訂閱將接受純粹的 spec.reply。此功能將在 1.1 版本中啟用;它會破壞與先前版本的相容性,以追蹤事件規格並改善使用訂閱時的使用者體驗。( #5762)
💫 新功能與變更¶
- 預設情況下,Prefer: 回覆標頭會轉發到 Broker Triggers 的訂閱者 ( #5773)
- 如果設定了 spec.reply 欄位,標頭 Prefer: 回覆將會新增至傳送給訂閱訂閱者的請求。( #5764)
- 如果未指定 Broker、Trigger、Channel 和 Subscription 的欄位 spec.delivery.deadLetterSink.ref.namespace,則會預設為 metadata.namespace。( #5748)
- 將 deadLetterSinkUri 新增至 Channel 狀態。
- 使用 1 年計時器將 deadLetterChannel 標記為已淘汰。( #5746)
- Channel 和 Subscription 現在將強制驗證「delivery」欄位。( #5777)
- 下一代多租戶排程器和取消排程器:使用外掛程式介面來指定排程器設定檔,其中包含謂詞和優先順序,這些謂詞和優先順序分別執行 Pod 的篩選和評分,以計算最佳 vreplica 位置。當 autoscaler 新增新的 Pod 時,排程器會重新平衡已放置的 vreplica 以及新的 vreplica。當需要縮減 vreplica 和移除位置時,必須安裝取消排程器設定檔。( #5818)
- 將 UID 新增至可用的 Kreference 對應解析器範本欄位 ( #5810)
🐞 Bug 修正¶
- 修正了 Parallel 更新洩漏資源的問題。為了讓修正生效,提供的 Channel 必須在標記為 duck.knative.dev/channelable 的 ClusterRole 中包含 delete 動詞。( #5775)
- 修正了 Sequence 更新洩漏資源的問題。為了讓修正生效,提供的 Channel 必須在標記為 duck.knative.dev/channelable 的 ClusterRole 中包含 delete 動詞。( #5718)
Eventing 擴充功能¶
Apache Kafka Broker v1.0¶
💫 新功能與變更¶
- KafkaBroker 的 ClusterRole
knative-kafka-data-plane
已重新命名為knative-kafka-broker-data-plane
( #1315) - KafkaBroker 的 ServiceAccount
knative-kafka-data-plane
已重新命名為knative-kafka-broker-data-plane
( #1315) - 針對 KafkaBroker 的 ClusterRoleBinding
knative-kafka-data-plane
已重新命名為knative-kafka-broker-data-plane
(#1315) - 針對 KafkaSink 的 ClusterRole
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¶
💫 新功能與變更¶
- 現在,觸發器將以平行方式將事件傳送給其訂閱者,預設的 in-flight 訊息數量為 10,並且可以透過註解 rabbitmq.eventing.knative.dev/prefetchCount 進行設定。(#418)
- 現在強制執行觸發器篩選器為不可變的,因為底層的 RMQ 綁定是不可變的 (#468)
🐞 Bug 修復¶
- 如果未定義死信接收器,Brokers 將不再為死信事件建立佇列 (#453)
Client 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)
🐞 Bug 修復¶
- 修正網域描述參考,以顯示正確的種類 (#1477)
Operator v1.0¶
💫 新功能與變更¶
- 新增 COC,貢獻文件 (#790)
- 從不受支援的 HA 清單中移除 pingsource-mt-adapter (#788)
- 將高可用性套用至 Operator 管理的所有部署 (#749) 修正
with
的拼寫錯誤 (#781) - 新增對 spec.deployments.affinity 的支援 (#777)
- 當高可用性具有較大的數值時,調整 HPA 中的 maxReplicas (#748)
- 為標籤 app.kubernetes.io/version 準備 Knative Operator (#738)
- 允許透過 spec.deployments.tolerations 設定 Tolerations (#747)
- 從 HA 擴展中移除 pingsource (#740)
- 捨棄已棄用的 enabledComponents 欄位設定 (#735)
- 在 hack/update-codegen.sh 中使用 knative.dev/hack/codegen-library.sh (#734)
- 移除 eventing 的心跳 (#792)
🐞 Bug 修復¶
- 修復安裝 spec.manifests 時的錯誤問題 (#750)
感謝貢獻者¶
- @Abirdcfly
- @aavarghese
- @benmoss
- @boaz0
- @dsimansk
- @evankanderson
- @houshengbo
- @julz
- @lionelvillard
- @mattmoor
- @matzew
- @nak3
- @odacremolbap
- @pierDipi
- @pierDipi
- @psschwei
- @travis-minke-sap
- @vyasgun
了解更多¶
Knative 是一個開源專案,社群中的任何人都可以使用、改進和享受。我們很樂意您加入我們!
- 歡迎來到 Knative
- 入門文件
- 範例
- Knative 工作群組
- Knative 使用者郵件列表
- Knative 開發郵件列表
- Knative 在 Twitter 上 @KnativeProject
- Knative 在 StackOverflow 上
- Knative Slack
- Knative 在 YouTube 上