ここでは、Kubernetes 1.32 の CHANGELOG から SIG-CLI (kubectl) の取り組みについてまとめています。
は筆者によるコメントです。
新たに追加されたコマンドとフラグ
-
kubectl apply --subresourceフラグ:kubectl patchコマンドの--subresourceフラグ同様にkubectl applyコマンドでも使えるようになった。なお、server-side apply のみのサポート。 -
kubectl kustomize --helm-debugフラグ: Helm chart inflator generator からのデバッグ出力を有効にする -
kubectl apply/edit/get/patch/replace --subresourceフラグ: これまでstatusサブリソースしか指定できなかったが InPlacePodVerticalScaling のresizeサブリソースのサポートのためにその制限を削除
変更があったコマンドとフラグ
-
kubectl explain -oフラグ:--outputフラグの省略形が追加
廃止予定のコマンドとフラグ
なし
削除されたコマンドとフラグ
なし
そのほか、細かい変更は、 https://github.com/superbrothers/kubernetes-docs/compare/kubernetes-1.31...kubernetes-1.32 で参照できます。
所感
InPlacePodVerticalScaling 関連の変更が kubectl にも入ってきています。1.32 での beta 昇格は見送られましたが 1.33 には入ってくると思われるのでどう使われていくのかが興味深いです。kubectl 自体は完全に落ち着いていて特に言うことはありません。
What's New (Major Themes)
なし
Urgent Upgrade Notes
なし
Changes by Kind
Deprecation
なし
API Change
- kubectl コマンドで subresource フラグの制限が削除された (#128296, AnishShah) [SIG CLI]
-
これまで subresource フラグには statusしか指定できなかったが、InPlacePodVerticalScaling で resize サブリソースを扱いたいのでこの制限が削除された
-
- persistentVolumeClaimRetentionPolicy の不正確な説明が更新された (#126545, yangjunmyfm192085) [SIG API Machinery, Apps and CLI]
-
persistentVolumeClaimRetentionPolicyfeature gate は beta に昇格していたが alpha であるという記述のままになってしまっていた。よくある。
-
-
kubectl get PriorityClass -owideに preemptionPolicy フィールドが追加された (#126529, googs1025) [SIG CLI] - image volume を持つ pod が kubectl describe された際にそのボリュームが出力されていなかった問題が修正された (#126706, carlory)
-
alpha 機能の image volume が pod で使用されている場合に kubectl describeで出力されていなかった -
kubectl describeはどのフィールドをどう出力するかが作り込まれているので新しく追加されたフィールドの対応が漏れることがよくある
-
-
kubectl debugで custom profiling 機能が有効に固定された (#127187, ardaguclu) [SIG CLI and Testing]-
つまりデフォルトで有効になったということ。これまで有効にするために使用されていた KUBECTL_DEBUG_CUSTOM_PROFILE環境変数は 1.34 で削除される予定
-
-
ScalingReplicaSetevent の出力が変更された。変更前:Scaled <up|down> replica set <replica-set-name> to <new-value> from <old-value>, 変更後:Scaled <up|down> replica set <replica-set-name> from <old-value> to <new-value>(#125118, jsoref) [SIG Apps and CLI]-
英語話者にとって変更前のように to ... from ...の順序に混乱するらしい。そうなんだ。
-
-
kubectl explainの説明の改行位置が調整された (#126533, ah8ad3)-
コマンド自体が説明文に改行を挿入していたが、元文章内の改行位置でも改行されてしまっていて見にくくなっていたので、元文章の改行をすべて削除するようになっている
-
- Job controller が pods が削除される際に sidecar container のリスタート回数を考慮するようになった (#124952, AxeZhan) [SIG Apps and CLI]
-
maxContainerRestarts という関数で再起動関数が多い Pod 順に並び替えたりが行われているが、sidecar container (restartable init container) が考慮されていなかったみたい
-
Documentation
-
kubectl waitの--for=createオプションについて文書化された (#127327, ryanwinter) [SIG CLI]-
kubectl waitのヘルプメッセージに追記されたということ
-
Failing Test
なし
Bug or Regression
- kubectl cp でローカルから pod にコピーした際に宛先パスの確認の出力ストリームが破棄されるようになった。またこの確認に3秒のタイムアウトが追加された。 (#126652, ardaguclu) [SIG CLI]
-
kubectl cp コマンドで指定された宛先となるパスがディレクトリであるかどうかを test -d <path>コマンドを実行して確認するフェイズがあるが、タイムアウトが設定されていなかったみたい。なお、CHANGELOG 上ではタイムアウト値は3秒となっているが、コード上では10秒になっている。
-
Other (Cleanup or Flake)
-
kubectl explainに短いoutputの引数が追加された。kubectl explain <resource> --output plaintext-openapiv2のようなコマンドで--outputの省略形として-oが使えるようになった。 (#127869, ak20102763) - kubectl delete で
--interactiveフラグを使用した例が追加された (#127512, bergerhoffer) [SIG CLI] - kubectl で
--validateフラグの説明のスペースが修正された (#128081, soltysh)-
フラグの説明に変なスペースが入っちゃってたみたい。ヒアドキュメントとして書かれている中で改行されちゃっているのがまずくて一行になるように修正されている。
-
-
legacyprofile が廃止される計画であることをユーザへ通知するための警告メッセージが表示されるようになった (#127230, mochizuki875) [SIG CLI]-
将来削除されるとあり、どのバージョンという明記はなかった
-
-
kubectl top nodeのパーセント表記が%から(%)に変更された (#126995, googs1025) [SIG CLI]-
CPU(cores) MEMORY(bytes)のように括弧がそっちでは使われているのでパーセントも合わせるよってことみたい
-
-
https://github.com/kubernetes-sigs/kustomize/releases/tag/kustomize%2fv5.4.2 と https://github.com/kubernetes-sigs/kustomize/releases/tag/kustomize%2fv5.5.0. で紹介される内容で
kubectl kustomizeの機能がアップグレードされた (#127965, koba1t)-
つまり組み込みの kustomize バージョンが 5.4.2 から 5.5.0 に更新されたということ
-
-
kubectl apply --server-sideでkubectl patchと同等の--subresourceがサポートされた (#127634, deads2k) [sig cli and testing]-
kubectl patchでは使えていた--subresourceコマンドが server-side apply でも使えるようになった
-