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

MaxCompute:VPC へのアクセス (ダイレクト接続)

最終更新日:Jun 23, 2026

このトピックでは、MaxCompute が Virtual Private Cloud (VPC) 内の ApsaraDB RDS、HBase クラスター、Hadoop クラスターなどのサービスにアクセスする方法について説明します。サポートされているアクセス方法には、MaxCompute SQL、UDF、Spark、PyODPS/Mars、外部テーブル、データレイクハウスアーキテクチャなどがあります。

重要

このソリューションでは、リターントラフィック用に 2 つのセキュリティグループ MaxCompute-vpc-xxxMaxCompute-backup-vpc-xxx が作成されます。ここで、xxx は指定した VPC ID です。これらのセキュリティグループのルールを変更したり、他のコンポーネントのセキュリティルールを管理するために使用したりしないでください。このような変更に起因するいかなる問題についても、プラットフォームは責任を負いません。

制限事項

  • リージョンとゾーンの制限:中国 (杭州) - ゾーン H、I、J、K。中国 (北京) - ゾーン F、G、H、I、L。中国 (上海) - ゾーン B、E、G、M、N。中国 (張家口) - ゾーン A、B、C。中国 (ウランチャブ) - ゾーン B、C。中国 (深セン) - ゾーン C、D、E、F。中国 (香港) - ゾーン B、C。中国東部 2 (上海) Finance - ゾーン F。日本 (東京) - ゾーン A、B。シンガポール - ゾーン A、B、C。マレーシア (クアラルンプール) - ゾーン A、B。インドネシア (ジャカルタ) - ゾーン A、B。ドイツ (フランクフルト) - ゾーン A、B、C。米国 (シリコンバレー) - ゾーン A、B。米国 (バージニア) - ゾーン A、B。

  • サポート対象:VPC の IP アドレスまたはドメイン名、ApsaraDB RDS、HBase クラスター、Hadoop クラスター。

操作手順

ステップ 1:アカウントとプロジェクトの準備

MaxCompute とターゲットサービス間のネットワーク接続を作成する前に、次の前提条件が満たされていることを確認してください。

  1. MaxCompute プロジェクトを作成します。データレイクハウスのシナリオでは、プロジェクトのデータ型を Hive 互換に設定することを推奨します。

  2. VPC 内のサービスにアクセスするには、VPC を所有する Alibaba Cloud アカウント、MaxCompute プロジェクトへのアクセスに使用するアカウント、およびターゲットサービスの管理者アカウントが、すべて同じプライマリ Alibaba Cloud アカウントに属していることを確認してください。

ステップ 2:ダイレクトネットワーク接続の作成

1. 権限の付与

  • 操作ユーザーへの権限付与:

    • この権限付与を実行できるのは、Project Owner、またはテナントレベルの Super_Administrator もしくは Admin ロールを持つユーザーのみです。詳細については、「ロール計画」をご参照ください。

    • 権限付与の手順については、「テナント内のオブジェクト権限リスト」をご参照ください。

  • MaxCompute が VPC 内に Elastic Network Interface (ENI) を作成して接続できるようにするには、Alibaba Cloud アカウントにログインした状態で 権限付与 をクリックします。

2. セキュリティグループルールの設定

VPC 内に専用のセキュリティグループを作成して、MaxCompute から VPC 内のリソースへのアクセスを制御します。

新しい基本セキュリティグループを作成することを推奨します。他の種類のセキュリティグループや、すでに使用中のセキュリティグループは使用しないでください。MaxCompute は、現在のユーザーの VPC に Elastic Network Interface (ENI) を作成して、ご利用のサービスにアクセスします。

  • セキュリティグループのアウトバウンドルールを設定して、MaxCompute ジョブ (ENI 経由) がアクセスできる宛先アドレスを制御します。特別な要件がない場合は、デフォルトのアウトバウンドルールをそのまま使用できます。

  • ENI へのインバウンドトラフィックはリターントラフィックです。したがって、すべてのインバウンドトラフィックを許可する必要があります。

  1. VPC 管理コンソールにログインします。

  2. 左側のナビゲーションウィンドウで VPC を選択し、左上でリージョンを選択します。

  3. VPC ページで、対象の VPC の ID/名前 をクリックします。

  4. VPC の詳細ページで、リソース タブを選択します。

  5. リソース タブの VPC リソース 領域で、セキュリティグループ の値にポインターを合わせ、追加 をクリックします。

    • [セキュリティグループタイプ] には、ベーシックセキュリティグループ を選択します。

      ベーシックセキュリティグループ は、デフォルトでアウトバウンドトラフィックを許可します。Advanced Security Groups は、デフォルトでアウトバウンドトラフィックを拒否するため、VPC 内のサービスにアクセスできなくなります。

    • ネットワーク には、アクセスしたいサービスが含まれている VPC を選択します。

    セキュリティグループの作成方法の詳細については、「セキュリティグループの作成」をご参照ください。

  6. MaxCompute ネットワークをサポートするようにセキュリティグループを設定します。

    1. 対象のセキュリティグループの操作列で、[ルールを管理]をクリックします。

    2. アクセスルール タブで、受信 タブを選択します。対象のルールの 操作 列で、編集 をクリックします。次のパラメーターを設定して、すべての 受信 トラフィックを許可します。

      • 許可ポリシー許可 に設定します。

      • 優先順位 を 1 に設定します。

      • 契約[すべて] に設定します。

      • [ソース] には、アクセスしたいサービスがデプロイされている VPC の CIDR ブロックまたは vSwitch の CIDR ブロックを追加します。

      • [宛先] はデフォルトでは [ALL(-1/-1)] です。

    ルールの設定方法の詳細については、「セキュリティグループの適用ガイドと例」をご参照ください。

  7. HBase の場合、セキュリティグループにネットワーク権限を付与できない場合は、MaxCompute によって作成された ENI の IP アドレスをホワイトリストに追加する必要があります。ENI の IP アドレスは変更される可能性があるため、VPC が属する vSwitch の IP アドレス範囲を追加することをお勧めします。ENI の IP アドレスを取得するには、ECS コンソールにログインし、左側のナビゲーションウィンドウで ネットワークインターフェイス をクリックします。

説明

ネットワーク接続の作成プロセス中に、MaxCompute は帯域幅の要件に基づいて 2 つの ENI を自動的に作成します。これらの ENI は無料で、このセキュリティグループに配置されます。

3. ネットワーク接続の作成

Alibaba Cloud アカウント、または MaxCompute のテナントレベルの Super_Administrator もしくは Admin ロールを持つ RAM ユーザーは、MaxCompute コンソールで MaxCompute と VPC 間の接続を作成できます。詳細については、「MaxCompute のテナントレベルのロール」をご参照ください。接続を作成するには:

  1. MaxCompute コンソールにログインし、左上隅でリージョンを選択します。

  2. 左側のナビゲーションウィンドウで、構成の管理 > ネットワーク接続 を選択します。

  3. ネットワーク接続 ページで、新しいネットワーク接続 をクリックします。

  4. 新しいネットワーク接続 ダイアログボックスで、プロンプトに従ってパラメーターを設定し、OK をクリックします。初めてネットワーク接続を追加する場合、まず 権限を付与して、MaxCompute プラットフォームプロキシがネットワークインターフェースカードをリクエストできるようにする必要があります。そうしないと、接続を作成できません。

  5. 新しいネットワーク接続 ダイアログボックスで、プロンプトに従ってパラメーターを設定し、OK をクリックします。初めてネットワーク接続を追加する場合、まず 権限を付与して、MaxCompute プラットフォームプロキシがネットワークインターフェースをリクエストできるようにする必要があります。そうしないと、接続を作成できません。

    次の表にパラメーターを示します。

    パラメーター

    必須

    説明

    接続名:

    必須

    接続のカスタム名。名前は次の要件を満たす必要があります:

    • 文字で始まること。

    • 文字、アンダースコア (_)、数字のみを含むこと。

    • 長さが 1~63 文字であること。

    タイプ:

    必須

    デフォルト値はパススルー接続 (パススルー)です。

    パススルー接続 (パススルー) 接続は VPC 接続です。

    エリア:

    必須

    左上で選択したリージョンに基づいて、システムがこのパラメーターを自動的に入力します。詳細については、「サポートされているリージョン」をご参照ください。

    選択されたVPC:

    必須

    Virtual Private Cloud (VPC) は、分離された仮想ネットワークです。従来のデータセンターと同様に、安全で設定可能なプライベートネットワーク空間を提供します。
    • VPC の ID。新しい VPC を作成するには、「VPC の作成または削除」をご参照ください。

    • ID を取得するには:

      1. ログイン:VPC コンソール

      2. 左側のナビゲーションペインでVPCを選択し、左上隅でリージョンを選択します。

      3. VPC ページで、VPC の ID/名前 を取得します。

      HBase または Hadoop クラスターに接続する場合、対応するコンソールのネットワーク接続詳細でこの情報を見つけることができます。

    スイッチ:

    必須

    vSwitch はサブネットを作成するために使用されます。同じ VPC 内の異なる vSwitch は、内部ネットワークを介して相互に通信できます。異なるゾーンの vSwitch にまたがってクラウドリソースをデプロイすることで、単一ゾーンでの障害からアプリケーションを保護できます。
    • VPC にアタッチされている vSwitch の ID。利用可能な vSwitch がない場合は、「vSwitch の作成または削除」をご参照ください。

    • ID を取得するには:

      1. VPC 管理コンソールにログインします。

      2. 左側のナビゲーションウィンドウでvSwitchを選択し、左上隅でリージョンを選択します。

      3. vSwitch ページで、スイッチの ID/名前 を取得します。

      HBase または Hadoop クラスターに接続する場合、対応するコンソールのネットワーク接続詳細でこの情報を見つけることができます。

    セキュリティグループ:

    必須

    セキュリティグループは、クラウドリソースの仮想ファイアウォールとして機能します。セキュリティグループとそのルールを管理することで、詳細なネットワーク分離とアクセス制御を実装できます。

    セキュリティグループの ID。セキュリティグループを作成するには、「セキュリティグループの作成」をご参照ください。

4. ターゲットサービスのセキュリティグループの設定

上記の操作を完了して ENI ベースのダイレクト接続を有効にした後、ターゲットサービスにセキュリティルールを追加する必要があります。これらのルールは、MaxCompute を表すセキュリティグループが、9200 や 31000 などの特定のサービスポートにアクセスすることを許可します。

たとえば、ApsaraDB RDS にアクセスするには、ステップ 2 で作成したセキュリティグループからのアクセスを許可するルールを ApsaraDB RDS に追加する必要があります。アクセスしたいサービスがセキュリティグループではなく IP アドレスのみをサポートしている場合は、ターゲットサービスが存在する vSwitch の CIDR ブロック全体を追加する必要があります。

  • Hadoop クラスターのセキュリティグループを設定します。

    • Hadoop クラスターのセキュリティグループに次の情報を設定して、MaxCompute がクラスターにアクセスできるようにします。

      • Hadoop クラスターが存在するセキュリティグループのインバウンドアクセスルールを設定します。

      • 権限付与オブジェクトは、ステップ 2 で ENI 用に作成したセキュリティグループです。

      • Hive Metastore ポート:9083

      • HDFS NameNode ポート:8020

      • HDFS DataNode ポート:50010

    • たとえば、Alibaba Cloud E-MapReduce 上に作成された Hadoop クラスターに接続する場合、上記のようにセキュリティグループルールを設定する必要があります。詳細については、「セキュリティグループの作成」をご参照ください。

  • HBase クラスターのセキュリティグループを設定します。

    • MaxCompute 用に作成されたセキュリティグループまたは ENI の IP アドレスを、HBase クラスターのセキュリティグループまたは IP アドレスホワイトリストに追加します。

    • たとえば、Alibaba Cloud HBase クラスターに接続する場合:

      1. HBase 管理コンソールにログインします。左上隅で、リージョンを選択します。

      2. 左側のナビゲーションウィンドウで、クラスター を選択します。

      3. クラスター ページで、目的のクラスターの名前をクリックします。

      4. 左側のナビゲーションウィンドウで、Access Control を選択します。

      5. Whitelist Setting タブおよび Security Group タブで、Add Whitelist または Add Security Group をクリックできます。 セキュリティグループを追加できない場合は、Whitelist Setting タブで ENI の IP アドレスを追加します。 MaxCompute の構成が変更されると ENI の IP アドレスが変更される可能性があるため、vSwitch の CIDR ブロックをホワイトリストに追加することを推奨します。

    セキュリティグループまたは IP アドレスホワイトリストの追加方法の詳細については、「ホワイトリストとセキュリティグループの設定」をご参照ください。

  • ApsaraDB RDS のセキュリティグループを設定します。

    • MaxCompute 用に作成されたセキュリティグループまたは ENI の IP アドレスを、ApsaraDB RDS のセキュリティグループまたは IP アドレスホワイトリストに追加します。

    • たとえば、ApsaraDB RDS インスタンスに接続する場合:

      1. RDS コンソールにサインインします。

      2. 左側のナビゲーションバーで、インスタンスを選択し、左上隅でリージョンを選択します。

      3. 左側のナビゲーションバーで、ホワイトリストとセキュリティグループをクリックします。

      4. ホワイトリストの設定 タブおよび セキュリティグループ タブで、IP アドレスホワイトリストまたはセキュリティグループを追加します。MaxCompute の構成が変更されると ENI IP アドレスが変更される可能性があるため、vSwitch の CIDR ブロックをホワイトリストに追加することをお勧めします。

    セキュリティグループまたは IP アドレスホワイトリストの追加方法の詳細については、「セキュリティグループの設定」または「IP アドレスホワイトリストの設定」をご参照ください。

ステップ 3:VPC リソースへのアクセス

ダイレクトネットワーク接続を作成した後、SQL または Spark を使用して VPC ネットワークにアクセスするには、次の設定を追加する必要があります。

他の種類のジョブについては、ジョブの種類に応じて設定を調整してください。

SQL アクセス

  • UDF を使用して VPC ネットワークにアクセスするには、次のコードを実行します。詳細については、「UDF を使用した VPC リソースへのアクセス」をご参照ください。

    -- ネットワーク接続名を設定します。これは、ダイレクトネットワーク接続用に設定された名前です。この設定は、現在のセッションでのみ有効です。
    SET odps.session.networklink=testLink;
  • 外部テーブルを使用して VPC ネットワークにアクセスするには、次のコードを実行します。

    -- CREATE TABLE 文でパラメーターを設定します。
     TBLPROPERTIES(
    'networklink'='<networklink_name>')
  • データレイクハウスのネットワークリンクを設定するには、「Data Lakehouse 2.0 ユーザーガイド」をご参照ください。

Spark アクセス

専用線接続を設定した後、以下の設定を spark-defaults.conf または DataWorks 構成に追加してください。

spark.hadoop.odps.cupid.eni.enable = true
# フォーマットは regionid:vpcid です。ここで、vpcid はネットワーク接続の作成時に使用されたターゲット VPC の ID です。
spark.hadoop.odps.cupid.eni.info = regionid:vpc-**********

(任意) ステップ 4:ホワイトリストの設定

ご利用のサーバーでアクセス制御が有効になっている場合は、ダイレクトネットワーク接続用のセキュリティグループをサーバーのホワイトリストに追加する必要があります。