kubernetes
Z LabDay 22

Kubernetes 1.13: Urgent Upgrade Notes


はじめに

このエントリは、Kubernetes 1.13 の CHANGELOG から Urgent Upgrade Notes についてまとめています。翻訳に合わせて補足を追記しています。その他の内容は次のリンク先を参照してください。


Kubernetes 1.13: Urgent Upgrade Notes

Kubernetes 1.13 へのアップグレード前に、以下について心に留めておいてください。:



  • kube-apiserver


    • 非推奨となっていた etcd2 ストレージバックエンドは削除されました。--storage-backend=etcd2 を利用している kube-apiserver をアップグレードする前に etcd v2 のデータは v3 ストレージバックエンドに 移行されていなければならず、kube-apiserver の呼び出しも --storage-backend=etcd3 を使うように変更してください。移行手順については、etcdのセットアップに使用したインストール手順を参照してください。アップグレード前の etcd のバックアップはいつでも良い方法ですが、etcd2 から etcd3 への移行は逆戻りできないため、移行前のバックアップは必須でしょう。

    • 非推奨となっていた --etcd-quorum-read のフラグは削除されました。etcd の quorum read は常に etcd のデータを取得する際に有効化されます。--etcd-quorum-read のフラグを kube-apiserver の呼び出しから削除してください。




  • kube-controller-manager


    • 非推奨となっていた --insecure-experimental-approve-all-kubelet-csrs-for-group フラグが削除されました。

    • The deprecated --insecure-experimental-approve-all-kubelet-csrs-for-group flag has been removed.




  • kubelet


    • 非推奨となっていた --google-json-key フラグが削除されました。アップグレード前に --google-json-key フラグを kubelet の呼び出しから削除してください。(#69354, @yujuhong)

    • DaemonSet の Pod は スケジューラによってスケジューリングされるようになりましたが、この機能は kubelet のバージョンがが 1.11 以上である必要があります。kube-controller-manager を 1.13 にアップグレードする前にクラスター内の全ての kubelet のバージョンを 1.11 以上にしてください。

    • アルファバージョンである CSINodeInfo CRD のスキーマが specstatus フィールドに分割され、status.availablestatus.volumePluginMechanism が追加されました。以前のアルファバージョンのスキーマを利用していた場合はそれを削除し、新しいスキーマの CRD を再作成してください。 (#70515, @davidz627)




  • kube-scheduler


    • kube-scheduler は componentconfig/v1alpha1 の設定ファイルのサポートを削除しました。1.13 へのアップグレード前に kube-scheduler の設定についてはコマンドラインフラグを利用するか、kubescheduler.config.k8s.io/v1alpha1 の設定ファイルを利用してください。




  • kubectl


    • 非推奨となっていた run-container コマンドが削除されました。代わりに kubectl run を利用してください。(#70728, @Pingan2017)




  • client-go


    • client-go は bootstrap (k8s.io/client-go/tools/bootstrap) に関連したコードを今後リリースに含めることはありません。それらのコードに対する参照は全て壊れるため、全ての参照を k8s.io/bootstrap に変更してください。(#67356, @yliaog)




  • その他


    • Kubernetes は GCE の同じ名前の Zonal PDと Regional PD を区別することはできません。この問題のワークアラウンドとしてはユニークな名前で PD を作成するようにしてください。動的に作成された PD に関してはこの問題は発生しません。 (#70716, @msau42)