Alibaba Cloud Serverless (ACS) では、ラベル、アノテーション、および Taint を使用したノードの管理をサポートしています。GPU-HPN ノードについては、アフィニティスケジューリングのシナリオ向けにカスタムプロパティもサポートしています。本トピックでは、ACS クラスターにおけるノードのラベル、アノテーション、および Taint の使用方法と、それらに適用される制約について説明します。
重要事項
ACS クラスターでは、Node オブジェクトは標準仮想ノードまたは GPU-HPN 予約ノードのいずれかです。デフォルトでは、ノードの種類に応じて、ラベルおよび Taint の追加、削除、変更に関する操作が異なります。
標準仮想ノードでは、ラベル、アノテーション、および Taint はサポートされていません。
GPU-HPN 予約ノード:
GPU-HPN ノードのカスタムラベルおよびスケジューラ が有効になっている場合、任意のラベル、アノテーション、および Taint を追加できます。
それ以外の場合、キーが
custom.k8s.io/で始まるラベル、アノテーション、および Taint のみがサポートされます。
GPU-HPN ノードのカスタムラベルおよびスケジューラに関する ACS スケジューラの設定項目は、新バージョンではデフォルトで有効になっています。詳細については、「kube-scheduler」をご参照ください。
操作手順
以下の例では、GPU-HPN 予約ノードへのカスタムラベルの設定方法を示します。
次のコマンドを実行して、クラスター内の GPU-HPN 予約ノードを一覧表示します。
# GPU-HPN ノードには、デフォルトで “alibabacloud.com/node-type=reserved” というラベルが付与されます kubectl get node -lalibabacloud.com/node-type=reserved期待される出力:
# 実際の出力はご利用のクラスターによって異なります NAME STATUS ROLES AGE VERSION cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg Ready agent 4d20h v1.28.3-xx cn-wulanchabu-c.cr-u9mqtuqxxxxxxx9noka5 Ready agent 2d22h v1.28.3-xx次のコマンドを実行して、最初のノードにラベル
custom.k8s.io/test-key: test-valueを追加します。kubectl label node cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg custom.k8s.io/test-key=test-value期待される出力:
# ラベルが正常に追加されたことを示します node/cn-wulanchabu-c.cr-cye8scj0ukxc3gkxxgbg not labeled次のコマンドを実行して、GPU-HPN ノードに設定されているラベルを確認します。
kubectl get node cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg -Lcustom.k8s.io/test-key期待される出力:
# ノードに新しいラベル “custom.k8s.io/test-key=test-value” が追加されています NAME STATUS ROLES AGE VERSION TEST-KEY cn-wulanchabu-c.cr-cye8scj0ukxxxxxxxgbg Ready agent 4d21h v1.28.3-xx test-value