ノード ラベルに kubernetes.io プレフィックスがある場合、Kubernetes 1.16 へのアップグレードが失敗する

この記事では、プレフィックスを持つ kubernetes.io ノード ラベルを使用しているときに Kubernetes 1.16 へのアップグレードが失敗したことをトラブルシューティングする方法について説明します。

現象

Kubernetes 1.16 にアップグレードしようとして失敗し、プレフィックスを持つラベルを kubernetes.io 使用しています。

原因

Kubernetes 1.16 以降、kubelet では、 kubernets.io プレフィックスを持つ定義されたラベルのサブセット のみをノードに適用できます。 Microsoft Azure Kubernetes Service (AKS) は、影響を受けるワークロードのダウンタイムを引き起こす可能性があるため、お客様の同意なしに、お客様の代わりにアクティブなラベルを削除することはできません。

ソリューション

この問題を軽減するには:

  1. クラスター コントロール プレーンを 1.16 以降にアップグレードします。
  2. サポートされていない kubernetes.io ラベルを使用せずに、1.16 以降に新しいノード プールを追加します。
  3. 古いノード プールを削除します。

AKS は、この軽減策を改善するために、ノード プール上のアクティブなラベルを変更する機能を調査しています。

サードパーティの情報に関する免責事項

この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。 明示的か黙示的かにかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。

お問い合わせはこちらから

質問がある場合やヘルプが必要な場合は、サポート要求を作成するか、Azure コミュニティ サポートにお問い合わせください。 Azure フィードバック コミュニティに製品フィードバックを送信することもできます。