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

Container Registry:ACK クラスターへの P2P アクセラレーションエージェントのインストール

最終更新日:Mar 27, 2026

Alibaba Cloud Container Service for Kubernetes (ACK) クラスターで P2P アクセラレーション機能を使用すると、コンテナイメージのプルを高速化し、アプリケーションのデプロイ時間を短縮できます。このトピックでは、ACK クラスターに P2P アクセラレーションエージェントをインストールする方法について説明します。

前提条件

イメージ使用の制限事項

大規模モデル用などの非常に大きなコンテナイメージを使用する場合、効率的な P2P プルを確保するために、次の要件のいずれかを満たす必要があります。ノードプールのノードにAutoPL タイプのデータディスクがあること、またはノードに P2P データキャッシング用に 8 GB 以上の空きメモリがあること。

ステップ 1:P2P アクセラレーションの有効化

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

  2. 上部のナビゲーションバーで、リージョンを選択します。

  3. 左側のナビゲーションウィンドウで、[インスタンス] をクリックします。

  4. [インスタンス] ページで、管理する Enterprise Edition インスタンスをクリックします。

  5. [概要] ページで、[インスタンス ID] を記録します。次に、[コンポーネント設定] セクションで [P2P アクセラレーション] をオンにし、確認ダイアログボックスで [OK] をクリックします。

    警告

    P2P アクセラレーションエージェントを無効にする前に、P2P 機能の使用を停止し、エージェントがインストールされているすべてのクラスターからアンインストールする必要があります。この機能を再度有効にするには、エージェントを再インストールする必要があります。

    image

ステップ 2:P2P エージェントのインストール

次のいずれかの方法を使用して、P2P アクセラレーションエージェントに ACR Enterprise Edition インスタンスへのアクセス権を付与できます。

  • worker RAM ロールを使用した権限付与とインストール。

    制限事項:ACR Enterprise Edition インスタンスと ACK クラスターは、同じ Alibaba Cloud アカウントに属している必要があります。

  • RAM ユーザーの AccessKey ID と AccessKey Secret を使用した権限付与とインストール。

  • サービスアカウントの RAM ロール (RRSA) を使用した権限付与とインストール。

    制限事項:この方法は、Kubernetes 1.22 以降を実行するACK マネージドクラスターでのみサポートされます。

worker RAM ロールの使用

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

  2. クラスターリスト ページで、クラスターの名前をクリックします。左側のナビゲーションウィンドウで、クラスター情報 をクリックします。

  3. [クラスター情報] ページで、[基本情報] タブをクリックします。[クラスターリソース] セクションで、[worker RAM ロール] の名前をコピーし、リンクをクリックして Resource Access Management (RAM) コンソールに移動し、ロールに権限を付与します。

    1. 次のカスタム権限ポリシーを作成します。詳細については、「カスタム権限ポリシーの作成」をご参照ください。

      {
          "Version": "1",
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "cr:GetInstanceVpcEndpoint",
                      "cr:ListInstanceEndpoint"
                  ],
                  "Resource": "*"
              }
          ]
      }
    2. [ロール] ページで worker RAM ロールを見つけ、作成したカスタム権限ポリシーをアタッチします。詳細については、「RAM ロールへの権限付与」をご参照ください。

  4. ACK コンソールにログインします。左側のナビゲーションウィンドウで、ストア > Marketplace をクリックします。

  5. [アプリカタログ] ページで、検索ボックスに ack-acr-acceleration-p2p と入力し、コンポーネントを見つけてそのカードをクリックします。

  6. コンポーネントの詳細ページで、右上の [デプロイ] をクリックします。

  7. [作成] パネルで、[クラスター][名前空間] を選択し、リリース名を入力して、[次へ] をクリックします。

  8. [パラメーター] パネルで、最新のチャートバージョンを選択し、acrInstances パラメーターにご利用の ACR Enterprise Edition インスタンス ID を設定します。複数のインスタンスがある場合は、ID をカンマ (,) で区切ります。

    # ご利用の ACR Enterprise Edition インスタンスの ID。複数の ID を指定するには、カンマ (,) で区切ります。例: "cri-xxx,cri-yyy"
    acrInstances: ""
    
    
    # ACR Enterprise Edition インスタンスのリージョン。デフォルト値はクラスターのリージョンです。
    # クラスターとインスタンスが異なるリージョンにある場合、またはデータセンターのセルフマネージドクラスターからインスタンスにアクセスする場合は、このパラメーターを設定する必要があります。
    region: ""
    
    # ACR Enterprise Edition インスタンスの VPC に接続されている VPC。デフォルト値はクラスターの VPC です。
    # クラスターとインスタンスが異なるリージョンにある場合、またはデータセンターのセルフマネージドクラスターから VPC 経由でインスタンスにアクセスする場合は、このパラメーターを設定する必要があります。
    vpcId: ""
    
    
    p2p:
      # ホストネットワークで P2P エージェントが使用するポート。
      port: 65001
    説明
    • デフォルトでは、エージェントはノードでポート 65001 を使用します。ポートの競合が発生した場合は、ポート番号を変更してください。

    • ACK クラスターと ACR Enterprise Edition インスタンスが同じリージョンにある場合は、region および vpcId パラメーターを空のままにできます。異なるリージョンにある場合は、region パラメーターを ACR Enterprise Edition インスタンスのリージョンに設定し、vpcId パラメーターをインスタンスに関連付けられている VPC の ID に設定する必要があります。

    • 大規模モデル用などの非常に大きなコンテナイメージを使用する場合は、ノードの構成に基づいて P2P データキャッシュモードを調整する必要があります:

      • データディスクベースのキャッシュモード (デフォルト):ノードのデータディスクタイプが AutoPL であることを確認します。p2p.v2.cache.modedisk に設定します。

      • メモリベースのキャッシュモード:ノードに 8 GB 以上の空きメモリがあることを確認し、p2p.v2.cache.mode の値を memory に設定します。

RAM ユーザーの AccessKey ペアの使用

  1. RAM ユーザーを作成します。詳細については、「RAM ユーザーの作成」をご参照ください。

  2. RAM ユーザーに次の権限を付与します。次に、AccessKey ペアを作成し、AccessKey IDAccessKey Secret を記録します。

    {
        "Version": "1",
        "Statement": [
            {
                "Effect": "Allow",
                "Action": [
                    "cr:GetInstanceVpcEndpoint",
                    "cr:ListInstanceEndpoint"
                ],
                "Resource": "*"
            }
        ]
    }
  3. ACK コンソールにログインします。左側のナビゲーションウィンドウで、ストア > Marketplace をクリックします。

  4. [アプリカタログ] ページで、検索ボックスに ack-acr-acceleration-p2p と入力し、コンポーネントを見つけてそのカードをクリックします。

  5. コンポーネントの詳細ページで、右上の [デプロイ] をクリックします。

  6. [作成] パネルで、[クラスター][名前空間] を選択し、リリース名を入力して、[次へ] をクリックします。

  7. [パラメーター] パネルで、最新のチャートバージョンを選択します。acrInstances パラメーターにご利用の ACR Enterprise Edition インスタンス ID を設定します。複数のインスタンスがある場合は、ID をカンマ (,) で区切ります。次に、記録した AccessKey IDAccessKey Secret を入力します。

    # ご利用の ACR Enterprise Edition インスタンスの ID。複数の ID を指定するには、カンマ (,) で区切ります。例: "cri-xxx,cri-yyy"
    acrInstances: ""
    
    
    # Kubernetes クラスターがデータセンターでセルフマネージドされている場合は、次のパラメーターを指定する必要があります。
    accessKey: ""
    accessKeySecret: ""
    
    # ACR Enterprise Edition インスタンスのリージョン。デフォルト値はクラスターのリージョンです。
    # クラスターとインスタンスが異なるリージョンにある場合、またはデータセンターのセルフマネージドクラスターからインスタンスにアクセスする場合は、このパラメーターを設定する必要があります。
    region: ""
    
    # ACR Enterprise Edition インスタンスの VPC に接続されている VPC。デフォルト値はクラスターの VPC です。
    # クラスターとインスタンスが異なるリージョンにある場合、またはデータセンターのセルフマネージドクラスターから VPC 経由でインスタンスにアクセスする場合は、このパラメーターを設定する必要があります。
    vpcId: ""
    
    
    p2p:
      # ホストネットワークで P2P エージェントが使用するポート。
      port: 65001
    説明
    • デフォルトでは、エージェントはノードでポート 65001 を使用します。ポートの競合が発生した場合は、ポート番号を変更してください。

    • ACK クラスターと ACR Enterprise Edition インスタンスが同じリージョンにある場合は、region および vpcId パラメーターを空のままにできます。異なるリージョンにある場合は、region パラメーターを ACR Enterprise Edition インスタンスのリージョンに設定し、vpcId パラメーターをインスタンスに関連付けられている VPC の ID に設定する必要があります。

    • 大規模モデル用などの非常に大きなコンテナイメージを使用する場合は、ノードの構成に基づいて P2P データキャッシュモードを調整する必要があります:

      • データディスクベースのキャッシュモード (デフォルト):ノードのデータディスクタイプが AutoPL であることを確認します。p2p.v2.cache.modedisk に設定します。

      • メモリベースのキャッシュモード:ノードに 8 GB 以上の空きメモリがあることを確認し、p2p.v2.cache.mode の値を memory に設定します。

RRSA の使用

サービスアカウントの RAM ロール (RRSA) 機能を使用すると、Pod レベルで詳細な権限制御を適用できます。

RRSA 機能は、Kubernetes 1.22 以降を実行するクラスターでのみサポートされます。

重要
  • RRSA を使用するには、エージェントをバージョン 0.3.6 以降にアップグレードする必要があります。

  • P2P アクセラレーションエージェントで RRSA を有効にするには、まずクラスターで RRSA を有効にし、次にエージェントの RRSA 設定を構成する必要があります。これらの手順を誤った順序で実行した場合、RRSA 設定を有効にするには、エージェントをアンインストールして再インストールする必要があります。

  1. クラスターで RRSA 機能を有効にします。詳細については、「RRSA を使用してサービスアカウントに RAM ロールを関連付け、Pod レベルで詳細な権限管理を実装する」をご参照ください。

  2. Container Registry リソースにアクセスするように RAM ロールを設定します。

    • シナリオ 1:ACK クラスターと ACR Enterprise Edition インスタンスが同じアカウントにある場合。

      アカウント A が ACK クラスターと ACR Enterprise Edition インスタンスの両方を所有していると仮定します。アカウント A で RAM ロールを作成します。詳細については、「信頼できる Alibaba Cloud アカウントの RAM ロールの作成」をご参照ください。次に、次の権限ポリシーをロールにアタッチします。

      {
          "Version": "1",
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "cr:GetInstanceVpcEndpoint",
                      "cr:ListInstanceEndpoint"
                  ],
                  "Resource": "*"
              }
          ]
      }
      説明
      • <oidc_issuer_url>」を、お使いのクラスターの OIDC プロバイダーの URL に置き換えます。この URL は、ACK コンソール のクラスターの詳細ページの [基本情報] タブで確認できます。

      • <oidc_provider_arn>」を、お使いのクラスターの OIDC プロバイダーの Amazon リソースネーム (ARN) に置き換えます。この ARN は、ACK コンソール のクラスターの詳細ページの [基本情報] タブで確認できます。

      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Condition": {
              "StringEquals": {
                "oidc:aud": [
                  "sts.aliyuncs.com"
                ],
                "oidc:iss": "<oidc_issuer_url>",
                "oidc:sub": [
                  "system:serviceaccount:aliyun-acr-acceleration:ack-acr-acceleration-p2p-job-sa",
                  "system:serviceaccount:aliyun-acr-acceleration:ack-acr-acceleration-p2p-sa"
                ]
              }
            },
            "Effect": "Allow",
            "Principal": {
              "Federated": [
                "<oidc_provider_arn>"
              ]
            }
          }
        ],
        "Version": "1"
      }
    • シナリオ 2:ACK クラスターと ACR Enterprise Edition インスタンスが異なるアカウントにある場合。

      アカウント A が ACK クラスターを所有し、アカウント B が ACR Enterprise Edition インスタンスを所有していると仮定します。アカウント A の ACK クラスターに、アカウント B の Container Registry リソースへのアクセス権を付与する必要があります。

      アカウント A で RAM ロールを作成します。詳細については、「信頼できる Alibaba Cloud アカウントの RAM ロールの作成」をご参照ください。AliyunSTSAssumeRoleAccess 権限ポリシーをアタッチして、ロールに他のロールを引き受ける権限を付与します。次に、その信頼ポリシーを変更します。

      説明
      • <oidc_issuer_url>」を、お使いのクラスターの OIDC プロバイダーの URL に置き換えます。この URL は、ACK コンソール のクラスターの詳細ページの [基本情報] タブで確認できます。

      • <oidc_provider_arn> を、お使いのクラスターの OIDC プロバイダーの ARN で置き換えます。この ARN は、ACK コンソールのクラスター詳細ページの[基本情報] タブで確認できます。

      {
        "Statement": [
          {
            "Action": "sts:AssumeRole",
            "Condition": {
              "StringEquals": {
                "oidc:aud": [
                  "sts.aliyuncs.com"
                ],
                "oidc:iss": "<oidc_issuer_url>",
                "oidc:sub": [
                  "system:serviceaccount:aliyun-acr-acceleration:ack-acr-acceleration-p2p-job-sa",
                  "system:serviceaccount:aliyun-acr-acceleration:ack-acr-acceleration-p2p-sa"
                ]
              }
            },
            "Effect": "Allow",
            "Principal": {
              "Federated": [
                "<oidc_provider_arn>"
              ]
            }
          }
        ],
        "Version": "1"
      }

      アカウント B で、ACR 権限用の RAM ロールを作成します。[信頼ポリシー] タブで、アカウント A のロールの ARN を追加します。アカウント B のロールに次の権限ポリシーをアタッチします。

      {
          "Version": "1",
          "Statement": [
              {
                  "Effect": "Allow",
                  "Action": [
                      "cr:GetInstanceVpcEndpoint",
                      "cr:ListInstanceEndpoint"
                  ],
                  "Resource": "*"
              }
          ]
      }
      説明

      この RAM ロールの [最大セッション期間] を設定できます。有効な範囲は 3,600〜43,200 秒です。次の手順で expireDuration パラメーターで設定するセッション期間は、最大セッション期間以下である必要があります。expireDuration[最大セッション期間] と同じ値に設定することを推奨します。

  3. ACK コンソールにログインします。左側のナビゲーションウィンドウで、ストア > Marketplace をクリックします。

  4. [アプリカタログ] ページで、検索ボックスに ack-acr-acceleration-p2p と入力し、コンポーネントを見つけてそのカードをクリックします。

  5. コンポーネントの詳細ページで、右上の [デプロイ] をクリックします。

  6. [作成] パネルで、[クラスター][名前空間] を選択し、リリース名を入力して、[次へ] をクリックします。

  7. [パラメーター] パネルで、最新のチャートバージョンを選択します。acrInstances パラメーターにご利用の ACR Enterprise Edition インスタンス ID を設定します。複数のインスタンスがある場合は、ID をカンマ (,) で区切ります。次の表の説明に従って、RRSA パラメーターを設定します。

    パラメーター

    説明

    rrsa.enable

    RRSA を有効にするかどうかを指定します。

    true

    rrsa.rrsaRoleARN

    アカウント A で作成された RAM ロールの ARN。

    例: acs:ram::aaa

    rrsa.rrsaOIDCProviderRoleARN

    アカウント A のクラスターの OIDC プロバイダーの ARN。

    例: acs:ram::bbb

    rrsa.assumeRoleARN

    アカウント B で作成された RAM ロールの ARN。このパラメーターは、同一アカウントのシナリオでは不要です。

    例:acs:ram::ccc

    rrsa.expireDuration

    アカウント B で作成されたロールのセッション期間。これは、エージェントによって生成される一時的な認証情報の有効期間を決定します。同一アカウント内での利用シナリオでは、このパラメーターは必須ではありません。

    重要

    expireDuration の値は、アカウント B で作成されたロールの「最大セッション期間」を超えることはできません。

    デフォルト値は 3600 です。値は 3600〜43200 の間である必要があります。単位:秒。

    アカウント B のロールの最大セッション期間も 43200 に設定する必要があります。

    その他のパラメーターについては、「付録」をご参照ください。

    説明
    • デフォルトでは、エージェントはノードでポート 65001 を使用します。ポートの競合が発生した場合は、ポート番号を変更してください。

    • ACK クラスターと ACR Enterprise Edition インスタンスが同じリージョンにある場合は、region および vpcId パラメーターを空のままにできます。異なるリージョンにある場合は、region パラメーターを ACR Enterprise Edition インスタンスのリージョンに設定し、vpcId パラメーターをインスタンスに関連付けられている VPC の ID に設定する必要があります。

    • 大規模モデル用などの非常に大きなコンテナイメージを使用する場合は、ノードの構成に基づいて P2P データキャッシュモードを調整する必要があります:

      • データディスクベースのキャッシュモード (デフォルト):ノードのデータディスクタイプが AutoPL であることを確認します。p2p.v2.cache.modedisk に設定します。

      • メモリベースのキャッシュモード:ノードに 8 GB 以上の空きメモリがあることを確認し、p2p.v2.cache.mode の値を memory に設定します。

    # ご利用の ACR Enterprise Edition インスタンスの ID。複数の ID を指定するには、カンマ (,) で区切ります。例: "cri-xxx,cri-yyy"
    acrInstances: ""
    
    rrsa:
      enable: true
      rrsaRoleARN: ""
      rrsaOIDCProviderRoleARN: ""
      assumeRoleARN: ""
      expireDuration: 3600
    
    # ACR Enterprise Edition インスタンスのリージョン。デフォルト値はクラスターのリージョンです。
    # クラスターとインスタンスが異なるリージョンにある場合、またはデータセンターのセルフマネージドクラスターからインスタンスにアクセスする場合は、このパラメーターを設定する必要があります。
    region: ""
    
    # ACR Enterprise Edition インスタンスの VPC に接続されている VPC。デフォルト値はクラスターの VPC です。
    # クラスターとインスタンスが異なるリージョンにある場合、またはデータセンターのセルフマネージドクラスターから VPC 経由でインスタンスにアクセスする場合は、このパラメーターを設定する必要があります。
    vpcId: ""
    
    
    p2p:
      # ホストネットワークで P2P エージェントが使用するポート。
      port: 65001

付録

次の表に、ack-acr-acceleration-p2p コンポーネントのパラメーターの一部を示します。

パラメーター

デフォルト (ディスクモード)

デフォルト (メモリモード)

説明

blocksize

256

256

ソースの Object Storage Service (OSS) からリクエストされる単一のデータチャンクのサイズ。

capacity

4294967296

0

ディスクキャッシュのサイズ。

optionBlockSize

67108864

8589934592

メモリキャッシュのサイズ。

  • ディスクモードでは、P2P には 2 レベルのメモリキャッシュとディスクキャッシュがあります。メモリバッファのサイズは optionBlockSize です。

  • メモリモードでは、この値はメモリキャッシュのサイズを指定します。

memoryCacheCapacityGB

1

8

  • このパラメーターはディスクモードでは無視されます。デフォルト値のままにしてください。

  • メモリモードでは、この値は optionBlockSize のサイズ (GB 単位) です。

aio

0

0

libaio を有効にするかどうかを指定します。このパラメーターはメモリモードでは適用されません。

  • ディスクモードでは、この機能を有効にして AutoPL または PL3 ディスクのパフォーマンスを向上させることができます。

  • PL0 または PL1 ディスクの場合、AIO のディスク書き込み時間が長いと、P2P ネットワーク全体で多数のタイムアウトエラーが発生する可能性があります。

DeployConfig

proxyFsParallels

128

P2P エージェントが同時に処理できるリクエストの数。

AgentConfig

connectTimeout (s)

5

P2P エージェントがアップストリームピアとの接続を確立するためのタイムアウト。

transferTimeout (s)

15

データ転送のタイムアウト。この期間内にデータが受信されない場合、転送は中断されます。