注目★★★★★Kubernetes
Kubernetes v1.37、etcd RangeStreamで大量Listのメモリを削減
30秒で把握
- 1Kubernetes v1.37でetcd RangeStreamがbeta昇格・大量Listをストリーム処理
- 2etcd v3.7対応でチャンクを順次解放・API serverとetcdの同時保持を解消
- 3EtcdRangeStreamはデフォルト有効・旧etcdでは従来のRangeへフォールバック
要約
Kubernetes v1.37でetcd RangeStreamがbetaに昇格した。etcd v3.7と組み合わせると、大量オブジェクトの読み出しをチャンク単位でストリーミングし、API serverとetcdがコレクション全体を同時に保持する状態を解消する。従来のRangeはキー数単位でページを構成するため、大きなオブジェクトが多いとメモリ使用量が膨らみ、OOMを招く可能性があった。RangeStreamは返却データ量に応じてチャンクサイズを調整し、読み出し済みデータを順次解放する。EtcdRangeStreamはv1.37でbetaかつデフォルト有効で、etcd v3.7未満では従来のページング方式へフォールバックする。
あなたへの影響
Kubernetes運用チームは、次回のアップグレード計画でKubernetes v1.37とetcd v3.7の組み合わせを評価し、etcdメトリクスのoperation="listStream"で有効化を確認してください。
推奨:既存環境では未対応時に自動フォールバックしますが、メモリ削減効果の確認には実データでの検証が必要です。