ノードラベルとノードセレクタを設定して、アプリケーション ポッドを指定ノードにスケジュールできます。
前提条件
手順 1:ノードラベルの設定
ACK コンソール にログインします。左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、変更するクラスターの名前をクリックします。左側のナビゲーションウィンドウで、 を選択します。
ページの右上隅にある [ラベルとテイントの管理] をクリックします。[ラベル] タブで、ページの指示に従ってノードにラベルを追加します。
この例では、ラベル名は pod、値は nginx です。
詳細については、「ノードラベルの作成と管理」をご参照ください。
手順 2:指定ノードへのアプリケーション ポッドのスケジュール
ACK コンソール にログインします。左側のナビゲーションウィンドウで、[クラスター] をクリックします。
[クラスター] ページで、管理するクラスターを見つけ、その名前をクリックします。左側のペインで、 を選択します。
[デプロイメント] ページで、[YAML から作成] をクリックし、次のサンプル テンプレートを使用して、アプリケーションに
nodeSelectorを追加します。apiVersion: apps/v1 kind: Deployment metadata: name: nginx-deployment-basic labels: app: nginx spec: replicas: 2 selector: matchLabels: app: nginx template: metadata: labels: app: nginx spec: nodeSelector: pod: nginx # アプリケーションがこのノードでのみ実行されるようにノードラベルを指定します。追加した実際のラベルを指定します。 containers: - name: nginx image: anolis-registry.cn-zhangjiakou.cr.aliyuncs.com/openanolis/nginx:1.14.1-8.6 ports: - containerPort: 80[デプロイメント] ページで、デプロイメントの名前をクリックします。[ポッド] タブで、ポッドがスケジュールされているノードを確認します。
すべてのポッドが
pod: nginxラベルが付いたノードにスケジュールされている場合、スケジュールは成功です。
参照
nodeSelectorの詳細については、「ノードへのポッドの割り当て」を参照してください。アプリケーションをリリースまたはスケールアウトするときに、ResourcePolicy を設定してスケジューリング順序を指定し、ノードの優先順位に基づいてノードからポッドを昇順で削除できます。詳細については、「優先順位ベースのリソース スケジューリングの設定」をご参照ください。