1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Kubernetes 1.31: SIG-Network の変更内容

Last updated at Posted at 2024-09-03

Kubernetes 1.31 の SIG-Network の変更内容をまとめました。v1.31ではnftablesがfeature gateの指定なしに設定可能となったり、ServiceのtrafficDistributionが利用可能となりました。

過去の SIG-Network の変更内容

以下は、Kubernetes v1.31 の Changelog を和訳したものです。:pencil: の部分は筆者の補足になります。

Deprecation

  • なし

API Change

  • kube-proxyのnodePortAddresses / --nodeport-addressesオプションに、ノードの主要なIPv4および/またはIPv6アドレス(Nodeオブジェクトによる)のみでNodePort接続をリッスンするという意味の「primary」の値を受け入れるサポートが追加されました。これは、以前に--nodeport-addressesを使用していなかった場合、予期しない動作を避けるために強く推奨されます。(この動作はnftablesバックエンドでデフォルトで有効化されています。従来の「すべてのインターフェースでリッスンする」動作を得るには、そこで明示的に--nodeport-addresses 0.0.0.0/0,::/0を要求する必要があります。) (#123105, @danwinship) [SIG API Machinery, Network and Windows]
  • Component-base/logs: Go >= 1.21でコンパイルされた場合、component-baseはklogの初期化と共にslogをデフォルトロガーとして自動的に設定します。 (#120696, @pohly) [SIG API Machinery, Architecture, Auth, CLI, Cloud Provider, Cluster Lifecycle, Instrumentation, Network, Storage and Testing]
  • DisableNodeKubeProxyVersion feature gateはベータへ昇格しました。デフォルトでkubeletはもはや関連するノードの.status.kubeProxyVersionフィールドをセットしようとしなくなります。(#123845, @HirazawaUi) [SIG API Machinery, Cloud Provider, Network, Node and Testing]
  • kube-proxyのWindowsサービスコントロールマネージャー統合(--windows-service)を、v1alpha1コンポーネント設定のwindowsRunAsServiceフィールドを通じて設定可能にしました。 (#126072, @aroradaman) [SIG Network and Scalability] [sig/network,sig/scalability]
    users on the system.) (#124152, @danwinship) [SIG Network]
  • MultiCIDRServiceAllocator機能をベータへ更新しました(デフォルトでは無効)。この新機能を使用するためには、ユーザーはfeature gateとnetworkin v1beta1グループを有効にする必要があります。これにより、Service CIDR範囲を動的に再設定することが可能になります。(#125021, @aojea) [SIG API Machinery, Apps, CLI, Etcd, Instrumentation, Network and Testing]

Feature

  • kubeproxy_iptables_ct_state_invalid_dropped_packets_totalメトリックを導入することで、kube-proxyのiptablesモードがconntrackによって誤って無効とマークされ、その後ドロップされたパケットを追跡するサポートが追加されました。(#122812, @aroradaman) [SIG Instrumentation, Network and Testing]
  • kube-proxyのnftablesモード(--proxy-mode=nftables)がbetaとなりデフォルトで利用可能となりました。(#124383, @danwinship) [SIG Cloud Provider and Network]
    • :pencil: デフォルトで利用可能ではありますが、proxy modeのデフォルトはiptablesモードのままです
  • KubeProxyDrainingTerminatingNodes feature gateがstableへ昇格しました(#125082, @alexanderConstantinescu)
    • :pencil: この機能が導入されたPRを確認する限り、NodeオブジェクトがTerminating or ToBeDeletedByClusterAutoscaler taint が付与された場合に、kube-proxyのヘルスチェックで503を返す機能のようです
      • これにより、Nodeが削除されることをLBが事前に知ることができるので、LBのメンバーから安全に削除する準備を進めることができます
      • ToBeDeletedByClusterAutoscaler は名前からもわかるようにClusterAutoscalerで定義されたtaintであり、この機能を利用したい方はNodeオブジェクトの削除前にこちらのTaintをつけるような仕組みを用意する必要があります
  • kube-proxyのiptablesモードは、kubeproxy_iptables_localhost_nodeports_accepted_packets_totalメトリックを導入することで、localhostのnode-portsに向けられた受け入れられたパケットを追跡します。これにより、ユーザーはiptables.localhostNodePorts機能に依存しているかどうかを特定し、最終的にiptablesからnftablesへの移行を支援します。(#125015, @aroradaman) [SIG Instrumentation, Network and Testing]
  • 以前に非推奨とされ機能していなかったkube-proxyのコマンドラインフラグである--proxy-port-rangeは削除されました。(#126293, @aroradaman) [SIG Network]
  • CEL(Common Expression Language)のオプショナルタイプの名前が、optionalからoptional_typeに変更されました。(#124328, @jiahuif) [SIG API Machinery, Architecture, Auth, CLI, Cloud Provider, Network and Node]
  • Windows Kubeproxyは、以前の削除と作成のAPIの代わりに、ロードバランサーの更新のための更新ロードバランサーAPIを使用します。
  • リモートエンドポイントの削除は、終了したエンドポイント(古いエンドポイントマップには存在するが新しいエンドポイントマップには存在しないもの)のみがトリガーされ、以前は終了中のエンドポイントでも行われていました。 (#124092, @princepereira) [SIG Network and Windows]

Failing Test

  • なし

Bug or Regression

  • "iptables"の名前を報告する代わりに、nftables kube-proxyモードのメトリクスが追加されました。 (#124557, @danwinship) [SIG Network and Windows]

    • :pencil: モード毎に専用のメトリクスを用意したようです
  • Podの状態が素早く変更された時、endpointsのout-of-syncステータスを修正しました。(#125675, @tnqn) [SIG Apps, Network and Testing] [sig/network,sig/apps,sig/testing]
    • :pencil: EndpointsSliceではなくEndpoint Controllerに対する修正のようです
  • e2eフラグの"-kube-test-repo-list"が効果を発揮しない可能性がある問題を修正しました。(#123587, @huww98) [SIG API Machinery, Apps, Autoscaling, CLI, Network, Node, Scheduling, Storage, Testing and Windows]
  • Service LoadBalancerコントローラが新しいIPModeのservice.Statusフィールドを正しく考慮せず、ステータスが変更されたかどうかを確認する際にPortsを除外していた問題を修正しました。これにより、変更されたフィールドがservice.Statusを正しく更新しない可能性がありました。(#125225, @aojea) [SIG Apps, Cloud Provider and Network]
  • EndpointSliceMirroringコントローラによってEndpointsからミラーリングされたEndpointSlicesが修正された場合、それらが再調整されないというバグを修正しました。(#124131, @zyjhtangtang) [SIG Apps and Network]
  • kube-controller-managerがリスタート中にEndpointsリソースに対応するが手動で削除され再作成された場合、endpointssliceが正常に作成できない問題を修正しました。(#125359, @yangjunmyfm192085) [SIG Apps and Network]
  • --healthz-bind-address--metrics-bind-addressパラメータのためのデフォルト値の説明を更新しました。(#123545, @yangjunmyfm192085)

Other (Cleanup or Flake)

  • "kubectl describe service"および"kubectl describe ingress"はendpointsの代わりにendpointslicesを利用するようになりました。(#124598, @aroradaman) [SIG CLI and Network]
  • hostnameとhostNetworkをチェックするためのテストケースを追加しました(#124428, @yashsingh74) [SIG Architecture, Network and Testing]
  • kube-apiserverの初期の一般的なコントロールプレーンのリファクタリングが完了し、Kubernetesのようなコントロールプレーンを構築するサンプルバイナリを提供しますが、コンテナオーケストレーションリソースは含まれません。(#124530, @sttts) [SIG API Machinery, Apps, Cloud Provider, Network, Node and Testing]
  • Kube-apiserver: すでに非推奨となっていた --enable-logs-handler フラグとログ提供機能は、デフォルトでオフになり、v1.33で削除される予定です。(#125787, @dims) [SIG API Machinery, Network and Testing]
  • GAとなっているためServiceNodePortStaticSubrange feature gateを削除しました。(#124738, @xuzhenglun)
  • Kubeletの--iptables-masquerade-bit--iptables-drop-bitはv1.28で非推奨となっており、現在は完全に削除されました。(#122363, @carlory) [SIG Network and Node]
  • 最後に残っていたin-tree gcp cloud providerとcredential providerを削除しました。代わりに https://github.com/kubernetes/cloud-provider-gcp のexternal cloud providerとcredential providerを利用してください。(#124519, @dims) [SIG API Machinery, Apps, Auth, Autoscaling, Cloud Provider, Instrumentation, Network, Node, Scheduling, Storage and Testing]
  • CNI Pluginをv1.5.0へアップデートしました。(#125113, @bzsuni) [SIG Cloud Provider, Network, Node and Testing]
  • kubectl describe serviceはinternal traffic policyとload balancer IPのip modeを表示するようになりました。(#125117, @tnqn) [SIG CLI and Network]
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?