すべてのプロダクト
Search
ドキュメントセンター

Container Compute Service:仮想ノードの作成と vSwitch 構成の更新

最終更新日:Nov 09, 2025

ACS クラスターのノードオブジェクトは、仮想ノードとして提供されます。クラスターを作成すると、ACS は選択したゾーンに仮想ノードを自動的に作成し、各ゾーンに 1 つの仮想ノードが作成されます。リソースを分散したり、十分な計算能力を確保したり、vSwitch の IP アドレスの数を増やしたりするために、追加の仮想ノードを作成できます。これにより、クラスターの高可用性を維持しながら、これらの問題を解決できます。

シナリオ

デフォルトでは、ACS クラスターの作成時に、ACS は選択された各ゾーンに仮想ノードを作成します。ACS Pod は、スケジューリングポリシーに基づいてこれらの仮想ノードにスケジュールされます。各 Pod は、プライベート vSwitch の IP アドレスを 1 つ占有します。次のシナリオでは、追加の仮想ノードを作成する必要がある場合があります。

  • クラスターの高可用性: 特定のビジネスシナリオ (分散タスクなど) では、高可用性を確保するために、複数のゾーンに Pod をデプロイする必要がある場合があります。

  • 計算能力の不足: 現在の仮想ノードでは、ビジネス要件を満たすための特定のタイプの十分な計算能力を提供できません。十分な計算能力を持つゾーンを追加する必要があります。

  • IP アドレスの不足: ビジネスの拡大と不適切なネットワークプランにより、現在の仮想ノードの vSwitch には使用可能な IP アドレスが十分にありません。クラスターに vSwitch を追加する必要があります。

前提条件

クラスター VPC の新しく追加されたゾーンに vSwitch が作成されていること。詳細については、「vSwitch の作成と管理」をご参照ください。

説明

各仮想ノードは 1 つのゾーンに対応します。1 つのゾーンに対して複数の仮想ノードを作成することはできません。既存の仮想ノードのゾーンは、クラスターの [仮想ノード] ページで確認できます。

制限事項

仮想ノードは、カスタムラベル、アノテーション、または Taint をサポートしていません。

方法 1: コンソールで仮想ノードを作成する

ACS コンソールを使用すると、視覚的な方法で仮想ノードを作成できます。次のステップを実行して仮想ノードを作成できます。ACS は vSwitch 構成を自動的に更新します。

説明

新しい仮想ノードが作成されると、ACS は acs-profilevSwitchIds 構成を自動的に更新して、新しい vSwitch を追加します。

  1. ACS コンソールにログインします。

  2. [クラスター] ページで、クラスターの名前をクリックしてクラスター管理ページに移動します。

  3. クラスター管理ページの左側のナビゲーションウィンドウで、[仮想ノード] をクリックします。

  4. [仮想ノード] ページで、[仮想ノードの作成] をクリックします。

  5. [仮想スイッチ] セクションで、vSwitch を選択し、[OK] をクリックします。

    次のリストで詳細を説明します。

    • システムは、クラスターの VPC 内の既存の vSwitch を自動的に表示します。[仮想スイッチの作成] をクリックして、VPC コンソールで新しい vSwitch を作成することもできます。

    • 推奨されるリソース構成を使用することをお勧めします。ACS は、指定した計算クラスに基づいて、十分な計算能力を持つゾーンを表示します。

    • 各仮想ノードは 1 つのゾーンに対応します。1 つのゾーンに対して複数の仮想ノードを作成することはできません。

    重要

    リソース推奨機能は、vSwitch を 3 つのタイプに分類します。

    • 利用不可: これらの vSwitch はコンソールで直接選択できません。これは、対応するゾーンが ACS の計算能力をサポートしていないことを示します。

    • 推奨: リソース構成推奨リストで ComputeClass または GPU カードタイプを選択した後、ゾーンがハイライト表示されている vSwitch は、対応するゾーンに選択したタイプの十分なリソースがあることを示します。

    • その他: リソース構成推奨リストで ComputeClass または GPU カードタイプを選択した後、ゾーンがハイライト表示されていないが選択可能な vSwitch は、対応するゾーンのリソースが「推奨」ゾーンよりも少ないか、リソースが限られていることを示します。

    ACS クラスターは、さまざまな計算タイプの Pod をサポートしています。計算タイプの要件に基づいて、少なくとも 1 つの「推奨」ゾーンを選択することをお勧めします。

    image

  6. 仮想ノードのステータスが [アクティブ] であることを確認します。

方法 2: acs-profile の vSwitchIds 構成を変更する

各仮想ノードは 1 つのゾーンに対応します。クラスター内に対応する仮想ノードがないゾーンに対して vSwitch が構成されている場合、システムは自動的に仮想ノードを作成します。したがって、acs-profile を更新し、vSwitchIds フィールドに vSwitch ID を追加することで、仮想ノードの自動作成をトリガーできます。

説明

vSwitchIds から対応する vSwitch の ID を削除することで、仮想ノードを自動的に削除することもできます。この操作を実行する前に、削除する仮想ノードに Pod がデプロイされていないことを確認してください。

コンソール

  1. ACS コンソールにログインします。

  2. [クラスター] ページで、クラスターの名前をクリックしてクラスター管理ページに移動します。

  3. acs-profile の vSwitchIds 構成を変更します。

    1. 左側のナビゲーションウィンドウで、[構成管理] > [ConfigMap] を選択します。

    2. [ConfigMap] ページで、[名前空間] ドロップダウンリストから [Kube-system] を選択します。

    3. [acs-profile] を見つけて、[編集] をクリックします。

    4. vSwitchIds フィールドに新しい vSwitch ID を入力し、[OK] をクリックします。

      説明

      複数の vSwitch ID はコンマ (,) で区切ります。ACS は、新しく追加された vSwitch のゾーンに仮想ノードがない場合、自動的に仮想ノードを作成します。

      更新交换机.png

  4. 仮想ノードが作成されたことを確認します。

    1. 左側のナビゲーションウィンドウで、[仮想ノード] をクリックします。

    2. [仮想ノード] ページで、新しい仮想ノードが自動的に作成され、そのステータスが [アクティブ] であることを確認します。

kubectl

  1. ACS クラスターに接続します。詳細については、「クラスターの kubeconfig ファイルを取得し、kubectl を使用してクラスターに接続する」または「CloudShell で kubectl を使用して Kubernetes クラスターを管理する」をご参照ください。

  2. 仮想ノードのステータスを確認します。

    kubectl get node

    次の図は、出力例を示しています。

    NAME                            STATUS   ROLES   AGE   VERSION
    virtual-kubelet-cn-shanghai-g   Ready    agent   17d   v1.30.1-alibaba.13+ae02e00117a549
    virtual-kubelet-cn-shanghai-l   Ready    agent   17d   v1.30.1-alibaba.13+ae02e00117a549
    virtual-kubelet-cn-shanghai-m   Ready    agent   19d   v1.30.1-alibaba.13+ae02e00117a549
  3. acs-profile の vSwitchIds 構成を変更します。

    1. acs-profile を変更します。

      kubectl edit cm -n kube-system acs-profile
    2. vSwitchIds フィールドに、新しい vSwitch ID を追加します。

      説明

      複数の vSwitch ID はコンマ (,) で区切ります。ACS は、新しく追加された vSwitch のゾーンに仮想ノードがない場合、自動的に仮想ノードを作成します。

      data:
        enableClusterIp: "true"
        enableHybridMode: "false"
        enableLinuxArm64Node: "false"
        enableLogController: "false"
        enablePVCController: "true"
        enablePrivateZone: "false"
        enableReuseSSLKey: "false"
        enableUpdatePodResourceController: "false"
        enableWindowsAmd64Node: "false"
        featureGates: ProtectionFinalizers=false
        resourceGroupId: ""
        securityGroupId: sg-uf61931oi1w4te******
        selectors: ""
        slsMachineGroup: ""
        vSwitchIds: vsw-uf68xih52l5inkm******,vsw-uf67n6lumryq7li******,vsw-uf6i6bsihi3sger******,vsw-uf6g4yjk3kemgei******
    3. 変更を保存して終了します。

  4. 新しい仮想ノードが作成されたことを確認します。

    kubectl get node

    次の出力例は、virtual-kubelet-cn-shanghai-e という名前の新しい仮想ノードが追加されたことを示しています。

    NAME                            STATUS   ROLES   AGE   VERSION
    virtual-kubelet-cn-shanghai-e   Ready    agent   8s    v1.30.1-alibaba.13+ae02e00117a549
    virtual-kubelet-cn-shanghai-g   Ready    agent   17d   v1.30.1-alibaba.13+ae02e00117a549
    virtual-kubelet-cn-shanghai-l   Ready    agent   17d   v1.30.1-alibaba.13+ae02e00117a549
    virtual-kubelet-cn-shanghai-m   Ready    agent   19d   v1.30.1-alibaba.13+ae02e00117a549