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

Container Service for Kubernetes:ACK クラスタで TDX 機密 VM をサポートするノードプールを作成する

最終更新日:May 01, 2025

Container Service for Kubernetes (ACK) は、Intel® Trusted Domain Extension (Intel® TDX) テクノロジーを採用した Elastic Compute Service (ECS) インスタンスをサポートしています。 これにより、ACK クラスタで TDX 機密 VM をサポートするノードプールを作成し、ACK クラスタで TDX 機密コンピューティングをサポートできるようにすることができます。 TDX 機密 VM をサポートするノードプールを作成した後、アプリケーションのコードを変更することなく、ノードプールにアプリケーションをデプロイできます。 この侵入のないデプロイメントは、アプリケーションのセキュリティを強化します。 このトピックでは、ACK クラスタで TDX 機密 VM をサポートするノードプールを作成し、ノードプールにアプリケーションをデプロイする方法について説明します。

制限事項

TDX 機密コンピューティング環境には、特定の機能制限が適用されます。 TDX 機密コンピューティング環境を使用する前に、既知の問題と機能制限 を参照して制限事項を確認することをお勧めします。

前提条件

ACK Pro マネージドクラスター中国 (北京) リージョンに作成されていること。 詳細については、「ACK マネージドクラスターを作成する」をご参照ください。

TDX の概要

Intel® TDX は、CPU ハードウェアベースのテクノロジーであり、ECS インスタンスにハードウェア支援による隔離と暗号化を提供して、CPU レジスタ、メモリデータ、割り込みインジェクションなどのランタイムデータを保護します。 Intel® TDX は、より高いレベルのデータプライバシーを実現し、実行中のプロセスまたは処理中の機密データへの不正アクセスに関連するリスクを軽減するのに役立ちます。 Intel® TDX の詳細については、「Intel® Trust Domain Extensions (Intel® TDX)」をご参照ください。

Intel® TDX は、ECS インスタンスとアプリケーションにデフォルトですぐに利用できる保護を提供します。 アプリケーション コードを変更することなく、アプリケーションを TDX 対応インスタンスに移行できます。

TDX 機密 VM をサポートするノードプールはシームレスにスケーリングでき、オペレーティングシステムとハードウェアの機密性を向上させます。 セキュリティの高いアプリケーションをスケーリングおよび維持するために、ACK クラスタで TDX 機密 VM をサポートするノードプールを迅速に作成できます。 TDX 機密 VM をサポートするノードプールは、金融リスク管理、医療データプライバシー、AI 生成コンテンツ (AIGC) と大規模言語モデル (LLM) の推論と微調整、機密データベース、ビッグデータアプリケーションなど、さまざまな機密コンピューティングシナリオに適しています。

次の図は、エンドツーエンドのモデルデータ保護で TDX や Advanced Matrix Extensions (AMX) などのハードウェアベースのセキュリティ機能を使用して、推論セキュリティを確保する方法を示しています。

ステップ 1: ノードプールを作成する

  1. ACK コンソール にログインします。 左側のナビゲーションウィンドウで、[クラスタ] をクリックします。

  2. [クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。 左側のナビゲーションウィンドウで、[ノード] > [ノードプール] を選択します。

  3. ページの右上隅にある [ノードプールの作成] をクリックし、パラメータを構成して、[注文の確認] をクリックします。

    次の表に、主要なパラメータを示します。 詳細については、「ノードプールを作成および管理する」をご参照ください。

    パラメータ

    説明

    vSwitch

    ゾーン I の vSwitch を選択します。

    Auto Scaling

    デフォルト設定を維持します。 この例では、Auto Scaling は無効になっています。

    インスタンスタイプ

    g8i.xlarge 以上を選択します。

    予想ノード数

    ノードプール内の初期ノード数を指定します。 デフォルト値 0 を維持します。

    オペレーティングシステム

    Alibaba Cloud Linux 3.2104 LTS 64 ビット を選択します。

    [詳細オプション (オプション)] をクリックして、次のパラメータを構成します。

    ノードラベル

    Pod のスケジューリングのためにノードラベルを追加することをお勧めします。

    • キー: nodepool-label

    • 値: tdx-vm-pool

ステップ 2: TDX が有効になっている ECS インスタンスを作成する

ECS コンソールで TDX 対応インスタンスを作成する手順は、通常のインスタンスを作成する手順と似ています。 特定のパラメータに注意してください。 次のセクションでは、TDX 対応インスタンスに固有のパラメータについて説明します。 すべてのインスタンスに共通のその他のパラメータについては、「カスタム起動タブでインスタンスを作成する」をご参照ください。

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

  2. 左側のナビゲーションウィンドウで、[インスタンスとイメージ] > [インスタンス] を選択します。

  3. 上部のナビゲーションバーで、管理するリソースのリージョンとリソースグループを選択します。 地域

  4. [インスタンスの作成] をクリックし、パラメータを構成します。 次の表にパラメータを示します。

    パラメータ

    説明

    ネットワークとゾーン

    使用可能なインスタンスタイプは、選択したネットワークとゾーンによって異なります。

    北京ゾーン I: ecs.g8i.xlarge 以上のインスタンスタイプのみがサポートされています。

    インスタンスタイプ

    イメージ

    [機密 VM] を選択し、イメージバージョンとして Alibaba Cloud Linux 3.2104 LTS 64 ビット を選択します。

    image

  5. プロンプトに従ってインスタンスを作成します。

(オプション) ステップ 3: ECS インスタンスで TDX のステータスを確認する

ECS インスタンスにログインし、次の手順を実行して TDX のステータスを確認します。 ECS インスタンスが TDX の保護下にあることを確認します。

  1. TDX が有効になっているかどうかを確認します。

    lscpu |grep -i tdx_guest

    次のコマンド出力は、TDX が有効になっていることを示しています。tdx-install

  2. TDX ドライバがインストールされているかどうかを確認します。

    ls -l /dev/tdx_guest

    次のコマンド出力は、TDX ドライバがインストールされていることを示しています。image

ステップ 4: ECS インスタンスをノードプールに追加する

  1. ACK コンソール にログインします。 左側のナビゲーションウィンドウで、[クラスタ] をクリックします。

  2. [クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。 左側のナビゲーションウィンドウで、[ノード] > [ノードプール] を選択します。

  3. ノードプールの [アクション] 列で、[詳細] > [既存ノードの追加] を選択します。 [既存の ECS インスタンスの選択] ウィザードページで、[モード][自動] に設定し、ステップ 2 で作成した ECS インスタンスを選択し、画面の指示に従って構成を完了します。

    既存のノードを追加する方法の詳細については、「既存の ECS インスタンスを追加する」をご参照ください。

ステップ 5: アプリケーションをデプロイする

TDX 機密 VM をサポートするノードプールが作成された後、アプリケーションをノードプール内の TDX が有効になっている ECS インスタンスに移行できます。 移行はアプリケーションに対して侵入のない方法で行われます。

ACK コンソールを使用する

  1. [クラスタ] ページで、管理するクラスタを見つけ、その名前をクリックします。 左側のウィンドウで、[ワークロード] > [Pod] を選択します。

  2. ページの右上隅にある [YAML から作成] をクリックします。 [サンプルテンプレート][カスタム] に設定し、次の YAML コンテンツをコピーして、[作成] をクリックします。

    apiVersion: v1
    kind: Pod
    metadata:
      labels:
        name: pod-tdx-vm
      name: pod-tdx-vm
    spec:
      containers:
        - image: alibaba-cloud-linux-3-registry.cn-hangzhou.cr.aliyuncs.com/alinux3/alinux3:latest
          name: hello
          command:
          - sh
          - -c
          - 'echo hello && sleep infinity'
      nodeSelector:    # Pod が TDX が有効になっている ECS インスタンスにスケジュールされていることを確認します。
        nodepool-label: tdx-vm-pool

    構成が完了すると、[Pod] ページで Pod のステータスやその他の情報を表示できます。 Pod が Running 状態の場合、アプリケーションはデプロイされています。

kubectl を使用する

  1. kubectl クライアントがクラスタに接続されている

  2. pod-tdx-vm.yaml という名前のファイルを作成し、次のコンテンツをファイルに追加します。

    apiVersion: v1
    kind: Pod
    metadata:
      labels:
        name: pod-tdx-vm
      name: pod-tdx-vm
    spec:
      containers:
        - image: alibaba-cloud-linux-3-registry.cn-hangzhou.cr.aliyuncs.com/alinux3/alinux3:latest
          name: hello
          command:
          - sh
          - -c
          - 'echo hello && sleep infinity'
      nodeSelector:    # Pod が TDX が有効になっている ECS インスタンスにスケジュールされていることを確認します。
        nodepool-label: tdx-vm-pool
  3. 次のコマンドを実行して、pod-tdx-vm.yaml ファイルをデプロイします。 pod-tdx-vm という名前の Pod が作成されます。

    kubectl apply -f pod-tdx-vm.yaml
  4. 次のコマンドを実行して、アプリケーションがデプロイされているかどうかを確認します。

    kubectl get pod pod-tdx-vm

    予想される出力:

    NAME         READY   STATUS    RESTARTS   AGE
    pod-tdx-vm   1/1     Running   0          52s