Knative 1.11 リリースの発表 ¶
公開日: 2023年8月1日
Knative 1.11 リリースを発表¶
Knative の新しいバージョンが複数のコンポーネントで利用可能になりました。
必要なコンポーネントをインストールするには、Knative のインストールの手順に従ってください。
このリリースでは、コア Knative Serving および Eventing コンポーネントにいくつかの小さな改善と、特定のプラグインにいくつかの改善が加えられています。
目次¶
サービング¶
🚨破壊的変更または重要な変更¶
- queue-proxy との通信に内部暗号化が有効になっている場合、Activator は TLS 1.3 を最小バージョンとして使用します(#13887、@izabelacg)
- ドメインマッピングコントローラーのロジックが Serving コントローラーにマージされました。ドメインマッピング webhook は Serving webhook にマージされました。(#14082、@skonto)
- DomainMapping/v1alpha1 は非推奨です - v1beta1 API を使用してください(#14058、@dprotaso)
💫 新機能と変更¶
- 有効な場合、Queue Proxy のリソースリクエスト、制限を設定する新しいフラグ `queueproxy.resource-defaults` が導入されました(cpu とメモリにのみ適用されます)。(#14039、@skonto)
- Activator には個別のサービスアカウントがあり、必要な最小限の権限に縮小されます。(#14133、@davidhadas)
- キュープロキシリソースは、サービスレベルでアノテーションを介して構成できます。リソースパーセンテージアノテーションは非推奨になりました。(#14038、@skonto)
- ハードコードされた `svc.cluster.local` の代わりに、DefaultDomain をクラスターのドメインに設定します(#13964、@kauana)
🐞バグ修正¶
- クラスアノテーションが設定されていない場合、オートスケーラーメトリックはグローバルオートスケーリングクラスで検証されます。(#13978、@xtreme-vikram-yadav)
- ノードのドレインを許可するために、コントロールプレーン上の `cluster-autoscaler.kubernetes.io/safe-to-evict` アノテーションを削除します(#14035、@dprotaso)
- 無制限の同時実行性を使用している場合と、リビジョンのインスタンスが 2 つある場合のアクティベーターの負荷分散を修正します(#14028、@dprotaso)
- キュープロキシメトリックのレポート期間は、Prometheus と OpenCensus の両方でサポートされるようになりました。これにより、新しい config map 属性を介してメトリックをエクスポートする頻度をきめ細かく制御できます。(#14019、@skonto)
- ダイジェスト最小 TLS バージョンへのタグは 1.2 で、コントローラー環境変数 `TAG_TO_DIGEST_TLS_MIN_VERSION` を使用してより高いバージョンに構成でき、値 `"1.2"` と `"1.3"` をサポートします(#13962、@dprotaso)
イベント処理¶
@ 💫 新機能と変更¶
- 空きポートにバインドするように mtping TLS 証明書テストを更新しました(#7036、@Cali0707)
- mt-broker-filter に TLS サポートを追加しました(#6940、@creydr)
- EventType と型変換の v1beta2 バージョンを追加しました(#6903、@matzew)
- ApiServerSource は TLS エンドポイントへのイベントの送信をサポートし、最小 TLS バージョンは v1.2 です(#6956、@pierDipi)
- ContainerSource は TLS エンドポイントへのイベントの送信をサポートし、最小 TLS バージョンは v1.2 です(#6957、@vishal-chdhry)
- イベントタイプの自動作成機能
- inmemorychannel で処理された CloudEvents に基づいて、対応する `EventType` リソースが名前空間に作成されます(#7089、@Cali0707)
- 有効にする機能フラグ:`configmap/config-features` の `eventtype-auto-create`
- ブローカーで処理された CloudEvents に基づいて、対応する `EventType` リソースが名前空間に作成されます(#7034、@dsimansk)
- ソース `duck` コントローラー/リコンサイラーで使用される EventType v1b2(#6962、@matzew)
- リコンサイラーでの EventType v1beta2 の使用(#6949、@matzew)
- InitializeEventingFlags でフラグを解析しません(#6966、@mgencur)
- PingSource は TLS エンドポイントへのイベントの送信をサポートし、最小 TLS バージョンは v1.2 です(#6965、@pierDipi)
- ソースダック準拠のソースは、ブローカーだけでなく、KResource の EventType も作成するようになりました(#7032、@matzew)
- ApiServerSource コントローラーは、アダプターを作成するときに K_CA_CERTS 環境変数を設定し、シンクに CACerts が定義されているようになりました。(#6897、@vishal-chdhry)
- ApiServerSource コントローラーは、アダプターを作成するときに K_CA_CERTS 環境変数を設定し、シンクに CACerts が定義されているようになりました。(#6920、@vishal-chdhry)
- EventType の BROKER フィールドは非推奨となり、ブローカーを指す KRef 参照に置き換えられました。将来的には、Knative はブローカーだけでなく、EventType で他のアドレス指定可能をサポートできるようになります(#6870、@matzew)
- EventType CRD は、チャネルやシンクなどの他のリソースを指すことができるようになりました(#7023、@matzew)
- imc-dispatcher は、イベントを受信するための https エンドポイントをサポートしています。チャネルはパスから推測されます。(#6954、@gab-satchi)
クライアント¶
💫 新機能と変更¶
- すべての新しい ksvc にデフォルトの SecurityContext を追加します(#1821、@dsimansk)
- `--reference` オプションフラグを使用して Eventing/v1beta2 EventTypes のサポートを追加します(#1831、@dsimansk)
- これは、`v1beta2` で `EventTypes` API をサポートしていない Eventing リリースとの後方互換性を損なう変更です
- デフォルトの SecurityContext 値を `none` に変更します(#1832、@dsimansk)
バグまたは回帰¶
- client-pkg 依存関係を使用するプラグインインライン化を修正します(#1816、@dsimansk)
関数¶
雑用¶
- faas-js-runtime をバージョン 2.2.2 に上げます
- cloudevents をバージョン 7.0.1 に上げます(#1873、@lance)
機能強化¶
- CI ワークフローに Rust テンプレートの lint を追加します(#1814、@andrejusc)
- 現在の関数実行環境を JSON として出力する `func environment` を追加します。(#1761、@lance)
- ルートを選択するための `func --domain` を追加します(#1690、@lkingland)
- 機能: GitLab との Pipeline as Code 統合 (#1769, @matejvasek)
- ローカルジョブがすぐにキャンセルされない場合があるバグを修正
- ローカル実行タスクの起動タイムアウトが設定可能になりました (#1750, @lkingland)
API 変更¶
- 関数でボリュームとして `persistentVolumeClaim` と `emptyDir` を指定できるようにしました。 (#1666, @zalsader)
その他 (クリーンアップまたは軽微な修正)¶
- Rust の CloudEvents の例を更新しました。 (#1799, @saschagrunert)
- Rust の HTTP の例を更新しました。 (#1798, @saschagrunert)
未分類¶
- func.yaml の deploy セクションで serviceAccountName をサポートし、関数のサービスアカウントを設定できるようにしました。 (#1811, @saschagrunert)
- func deploy で --remote フラグの短縮形として -R を追加しました (#1797, @nitishchauhan0022)
- func 環境に s2i と buildpacks のデフォルトビルダーを追加しました (#1796, @nitishchauhan0022)
- PAC がインストールされていない場合のエラーメッセージを改善しました (#1742, @zroubalik)
- クラスタ内ビルド: pack build タスクの結果 IMAGE_DIGEST が deploy タスクに渡されます。
- クラスタ内ビルド: deploy タスクは明示的に --image フラグを設定します。 (#1756, @matejvasek)
- 補助タスクにプレーンポッドの代わりにジョブを使用します (#1857, @matejvasek)
- 現在の Function メインブランチ(Knative 1.10 で v0.37.0 としてリリースされたものより 37 コミット先行している)など、未リリースのコミットからビルドする場合: (#1817, @lkingland)
オペレーター¶
貢献者の方々、ありがとうございます¶
リリースリーダー:¶
詳細はこちら¶
Knative は、コミュニティ の誰もが使用、改善、そして楽しむことができるオープンソースプロジェクトです。ぜひご参加ください!
- Knative ドキュメント
- クイックスタートチュートリアル
- サンプル
- Knative ワーキンググループ
- Knative ユーザーメーリングリスト
- Knative 開発メーリングリスト
- Knative on Twitter @KnativeProject
- Knative on StackOverflow
- CNCF Slack の `#knative`
- Knative on YouTube