v1.0 リリース

公開日:2021-11-08、改定日:2023-08-03

Knative v1.0 リリースの発表

Knative の新しいバージョンが複数のコンポーネントで利用できるようになりました。

各コンポーネントの「Knative のインストール」のドキュメントの手順に従ってください。 https://knative.dokyumento.jp/docs/admin/install/

目次

ハイライト

  • すべてのコンポーネントのバージョンは knative-v1.0.0 とタグ付けされており、Go ライブラリを使用しているユーザーはバージョン v0.27 を使用します。
  • 名前空間ごとのワイルドカード証明書のプロビジョナーが基本コントローラーに統合されました
  • 既定では、優先度の受信ヘッダーはブローカトリガーのサブスクライバーに転送されます

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"]
      
    • 前のリリース (#12174) の serving-nscert.yaml リソースによって定義されたデプロイメント、サービス、および ClusterRole を削除します。

💫 新機能と変更

  • 名前空間ごとのワイルドカード証明書プロビジョニングがメインの Knative コントローラーに統合されており、別のインストールではなくなりました。現在、Kubernetes 名前空間のラベルセレクターによって制御されています。
  • 新しい実験的な機能「concurrencyStateEndpoint」によって、コンテナの並行性がゼロになる、またはゼロから変更になったときにwebhookに通知できるようになりました (#11802, #12162, #11917)
  • ネットワーキングconfigマップでメッシュ互換性モードが「auto」に設定されていない場合、アクティベーターはKubernetesの準備状態を尊重し、アクティベーターのプローブよりもKubernetesの準備がより迅速に伝播されるときにはプローブを回避します。(#12086)

🐞 バグの修正

  • ドメイン所有権が確立される前にTLS証明書が要求される問題を修正しました。(#12080)

Eventing v1.0

🚨 重大な変更または特筆事項

  • 「strict-subscriber」機能フラグが設定されている場合、サブスクリプションはspec.subscriberの設定を要求します。以前は、単なるspec.replyがサブスクリプションによって受け入れられました。この機能は1.1リリースで有効になります。イベントの仕様を追跡し、サブスクリプションを使用する場合のユーザーエクスペリエンスを向上させるために、以前のバージョンとの互換性がなくなります。(#5762)

💫 新機能と変更点

  • デフォルトで、優先: 応答ヘッダーはブローカートリガーのサブスクライバーに転送されます(#5773)
  • spec.replyフィールドが設定されている場合、優先:応答ヘッダーはサブスクリプションサブスクライバーに送信されるリクエストに追加されます。(#5764)
  • ブローカー、トリガー、チャネル、およびサブスクリプションのフィールドspec.delivery.deadLetterSink.ref.namespaceは、指定されていない場合はmetadata.namespaceにデフォルトで設定されます。(#5748)
  • チャネルステータスにdeadLetterSinkUriを追加します。
    • 1年間のタイマーでdeadLetterChannelを使用したものを非推奨にしました。(#5746)
  • チャネルおよびサブスクリプションは「配信」フィールドの検証を強制的に行うようになりました。(#5777)
  • 次世代マルチテナントスケジューラとデスケジューラ: フィルタリングとスコアリングをそれぞれ実行してポッドの最良のvレプリカ配置を計算する、述語と優先順位を持つスケジューラプロファイルを指定するために、プラグインインターフェイスを使用します。オートスケーラーが新しいポッドを追加すると、スケジューラは配置されているvレプリカと新しいvレプリカのリバランスを実行します。デスケジューラプロファイルは、vレプリカをスケールダウンして配置を削除する必要があるときにインストールする必要があります。(#5818)
  • 使用可能なKreferenceマッピングリゾルバテンプレートフィールドにUIDを追加します(#5810)

🐞 バグの修正

  • パラレルアップデートでリークされたリソースに関する問題を修正します。修正が機能するために、提供されるチャネルにはduck.knative.dev/channelableラベルのついたClusterRoleに削除動詞が含まれている必要があります。(#5775)
  • シーケンス更新がリークされたリソースに関する問題を修正します。修正が機能するために、提供されるチャネルにはduck.knative.dev/channelableラベルのついたClusterRoleに削除動詞が含まれている必要があります。(#5718)

Eventing Extensions

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 の knative-kafka-data-plane 用の ClusterRole の名前が knative-kafka-sink-data-plane に変更されました (#1315)
  • KafkaSink の knative-kafka-data-plane 用の ServiceAccount の名前が knative-kafka-sink-data-plane に変更されました (#1315)
  • KafkaSink の knative-kafka-data-plane 用の ClusterRoleBinding の名前が knative-kafka-sink-data-plane に変更されました (#1315)
  • ブローカーとトリガーの status.deadLetterSinkUrispec.delivery.deadLetterSink の解決された URI に設定します (#1349)

RabbitMQ ブローカーとソース v1.0

💫 新機能と変更点
  • トリガーはイベントをサブスクライバーに並列に送信するようになりました。送信中のメッセージの数はデフォルトが 10 に設定され、アノーテーション rabbitmq.eventing.knative.dev/prefetchCount を使用して設定できます (#418)
  • 基本の RMQ バインドが変更不能であるため、トリガー フィルターは変更不能になるように設定されています (#468)
🐞 バグの修正
  • デッドレター シンクが定義されていない場合、ブローカーはデッドレター イベント用のキューを作成しなくなりました (#453)

クライアント v1.0

💫 新機能と変更点

  • 非推奨のフラグ --lookup-path を削除します (#1506)
  • --extra-containers--containers に名前を変更します (#1499)
  • 非推奨のフラグ --min-scale--max-scale を削除します (#1498)
  • 非推奨のフラグ --limits-cpu--limits-memory を削除します (#1498)
  • 不足している API エラー メッセージに追加の説明を追加します (#1497)
  • それぞれ --scale-target--scale-utilization を優先して --concurrency-target--concurrency-utilization の非推奨にします (#1490)
  • --scale-window を優先して --autoscale-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)
  • ラベル app.kubernetes.io/version の Knative オペレーターを準備します (#738)
  • spec.deployments.tolerations を使用して許容値を設定することを許可します (#747)
  • HA スケーリングから pingsource を削除します (#740)
  • 非推奨の enabledComponents フィールドの設定を削除します (#735)
  • hack/update-codegen.sh で knative.dev/hack/codegen-library.sh を使用します (#734)
  • イベントのハートビートを削除します (#792)

🐞 バグの修正

  • spec.manifests をインストールしたときのエラーの問題を修正します (#750)

コントリビューターの皆さん、ありがとうございます

詳しく見る

Knative は、コミュニティの誰もが使用、改善、楽しめるオープンソースプロジェクトです。ぜひご参加ください。

私たちは、サイトのトラフィックを把握するために分析とクッキーを使用しています。その目的で、サイトの使用に関する情報が Google と共有されます。 詳しくはこちらをご覧ください。