DataWorks をパブリックネットワーク上のデータソースに接続します。ここでは、パブリックエンドポイントを持つ MySQL インスタンスを例に説明します。
ユースケース
このソリューションは、データソースが次の条件を満たす場合に推奨します。
データソースにパブリックエンドポイントがある。
仕組み
サーバーレス リソースグループは、デフォルトではパブリックネットワークにアクセスできません。インターネット経由でデータソースにアクセスする前に、リソースグループにアタッチされている VPC にインターネット NAT ゲートウェイと EIP を設定する必要があります。
レガシー リソースグループは、デフォルトでパブリックネットワークアクセス権を持っており、直接接続できます。
説明レガシー リソースグループは段階的に廃止されています。サーバーレス リソースグループの使用を推奨します。
Alibaba Cloud は、各リソースグループのエグレス IP アドレスを割り当て、維持します。プロキシ IP やその他の方法を使用して、このアドレスを変更またはカスタマイズすることはできません。Python コードや他のプログラムでプロキシ設定を構成した場合でも、DataWorks タスクは実行時にリソースグループに割り当てられた IP アドレスを使用します。地域制限のあるデータソースにアクセスするには、VPN Gateway または Express Connect を使用してクロスボーダー接続を確立します。
前提条件
DataWorks でサポートされているデータソースがあること。
-
ワークスペースを作成 済みであること。
-
リソースグループを作成 し、ワークスペースにバインド してあること。
データソースにパブリックエンドポイントがあること。
データソースが Alibaba Cloud データベース (セルフマネージドデータベース、または TencentDB for MySQL や PostgreSQL などのサードパーティーのクラウドデータベースなど) ではない場合、DataWorks ワークスペースとして、中国本土内の任意のリージョンを選択できます。リージョンの一貫性に関する厳密な要件はありません。ネットワークレイテンシーを最小限に抑えるために、データソースに地理的に近いリージョンを選択することを推奨します。
課金
サーバーレスリソースグループのインターネットアクセスを有効にするには、リソースグループが存在する VPC に Internet NAT Gateway を設定し、EIP をバインドする必要があります。課金の詳細については、「NAT Gateway の課金」および「EIP の課金の概要」をご参照ください。
ネットワーク接続の設定
以下の手順は、ネットワーク接続を確立するための一般的な手順と中心的なロジックを概説します。詳細な設定については、「設定例」をご参照ください。
ステップ 1:基本情報の取得
データソース側
データソースが存在するサーバーのパブリック IP アドレス
データソースをホストするサーバーのパブリック IP アドレスを取得するか、ネットワーク管理者にお問い合わせください。
DataWorks 側
サーバーレスリソースグループ
リソースグループに関連付けられた VPC と vSwitch の情報
DataWorks リソースグループリストページに移動し、対象のリソースグループを見つけ、ネットワーク設定 列の 操作 をクリックしてネットワーク設定ページに移動します。
対応する機能モジュールの配下で、関連付けられたVPC と vSwitch を確認できます。
例えば、データ同期のためにパブリックエンドポイントを持つ MySQL インスタンスを DataWorks に接続する場合、[タスクスケジューリング・データ統合] で、対応する VPC と [vSwitch 情報] を表示します。
リソースグループの[ネットワーク設定]ページで、[VPC バインディング]タブをクリックし、対応する機能モジュール配下の[バインドされた VPC]列で関連付けられた VPC 情報を表示します。
レガシーリソースグループ
リソースグループの EIP アドレス
DataWorks リソースグループリストページに移動し、対象のリソースグループを見つけ、詳細 列の 操作 をクリックしてリソースグループの詳細ページに移動します。
EIP アドレスを取得します。
データ統合リソースグループの [基本情報] パネルで、[EIP アドレス] フィールドを見つけてアドレスを記録します。インターネット経由でデータを転送する必要がある場合は、この EIP をデータソース側の許可リストに追加します。
ステップ 2:ネットワーク接続の確立
サーバーレスリソースグループ:サーバーレスリソースグループは、デフォルトではインターネットにアクセスできません。インターネット経由でデータソースにアクセスする前に、リソースグループに関連付けられている VPC に Internet NAT Gateway を設定し、EIP をバインドする必要があります。
レガシーリソースグループ:デフォルトでインターネットアクセス権を持ち、直接接続できます。
ネットワーク設定中に問題が発生した場合は、 チケットを送信して Alibaba Cloud テクニカルサポートにお問い合わせください。
既存の NAT ゲートウェイに、DataWorks のインターネットアクセスに必要な SNAT 要件と競合する DNAT エントリ (たとえば、DNAT と SNAT の両方に同じ EIP を使用する) が既に存在し、他のビジネス上の依存関係のために DNAT エントリを削除できない場合は、現在の NAT ゲートウェイに別の SNAT エントリを作成してください。SNAT エントリを作成する際、本トピックの「ステップ 2:ネットワーク接続の確立」で説明されているようにパラメータを設定し、サーバーレスリソースグループが存在する VPC が新しい SNAT エントリを介して外部データソースにアクセスできるように設定します。
ステップ 3: (オプション) 許可リストへの IP アドレスの追加
データソースに許可リストが設定されている場合は、リソースグループのパブリック IP アドレスをデータソースの許可リストに追加します。
次の例は MySQL の IP 許可リスト設定です:この設定により、特定のユーザーはリソースグループのパブリック IP アドレスからのみデータベースにアクセスできるようになります。
許可リストを設定する際には、次の点にご注意ください:
サーバーレスリソースグループがインターネット経由でデータソースにアクセスする場合、エグレス IP は NAT ゲートウェイにバインドされた EIP であり、vSwitch の CIDR ブロックではありません。データソース側のセキュリティグループまたはファイアウォールの許可リストにこの EIP を追加し、vSwitch の CIDR ブロックのみを設定するのではなく、この EIP を追加してください。
送信元 IP の変更により許可リストが無効になった場合は、DNS 解決とルーティングポリシーが NAT ゲートウェイの EIP に正しくマッピングされていることを確認してください。一般的な原因には、VPC ルートテーブルの設定ミス、SNAT エントリが有効になっていない、または複数の NAT ゲートウェイインスタンスによりエグレス IP が不定になる、などが含まれます。
レガシーリソースグループのエグレス IP は、リソースグループ自体にバインドされた EIP です。リソースグループの詳細ページからこのアドレスを取得し、許可リストに追加します。
管理者としてデータベースにログインします。
DataWorks がデータソースにアクセスするためのアカウントを作成し、必要な権限を設定します:
-- "dataworks_user" は、カスタマイズ可能なユーザー名です。 -- "StrongPassword123!" は、カスタマイズ可能なユーザーパスワードです。 CREATE USER 'dataworks_user'@'<リソースグループにバインドされたパブリック IP アドレス>' IDENTIFIED BY 'StrongPassword123!'; -- ユーザーに、リソースグループにバインドされたパブリック IP アドレスから指定されたデータベース (例:mydatabase) へのすべての権限を付与します。 GRANT ALL PRIVILEGES ON mydatabase.* TO 'dataworks_user'@'<リソースグループにバインドされたパブリック IP アドレス>' WITH GRANT OPTION;FLUSH PRIVILEGES;コマンドを実行して権限を更新し、データベースを終了します (exit)。
ネットワーク接続の検証
DataWorks コンソールにログインします。 左側のナビゲーションウィンドウで、[Data Integration] をクリックします。 表示されるページで、ドロップダウンリストから目的のワークスペースを選択し、[Data Integrationに移動] をクリックします。
左側メニューで データソース をクリックします。データソースリストページで、データソースを追加するボタンをクリックし、データソースタイプを選択して、必要に応じて接続パラメータを設定します。
[接続設定] セクションで、データソースとのネットワーク接続が確立されているリソースグループを選択し、対象のリソースグループの横にある 接続テスト をクリックします。[接続可能] と表示された緑色のチェックマークは、ネットワーク接続が正常であることを示します。
説明接続テストの結果が [接続不可] の場合は、接続診断ツール を使用して問題をトラブルシューティングしてください。それでもリソースグループをデータソースに接続できない場合は、チケットを送信してください。
設定例
このセクションでは、China (Shanghai) リージョンの DataWorks ワークスペースにある、パブリックエンドポイントを持つ MySQL インスタンスを例に説明します。
1. 基本情報
パラメータ | データソース (RDS MySQL) | DataWorks リソースグループ |
リージョン | - | China (Shanghai) |
ネットワーク情報 |
|
リソースグループのネットワーク設定ページにある [VPC バインディング] タブで情報を確認します。[タスクスケジューリング & データ統合] セクションで、関連付けられた [バインド済み VPC] (例: |
2. ネットワーク接続の確立
この手順は、サーバーレスリソースグループにのみ適用されます。Internet NAT Gateway を使用して、関連付けられた VPC のインターネットアクセスを有効にします。レガシーリソースグループにはデフォルトで EIP がバインドされているため、この設定は不要です。
ネットワーク設定中に問題が発生した場合は、 チケットを送信して Alibaba Cloud テクニカルサポートにお問い合わせください。
DataWorks リソースグループリストページに移動し、対象のリソースグループを見つけ、ネットワーク設定 列の 操作 をクリックします。
対応する機能モジュールのセクションで、関連付けられた VPC を見つけ、VPC の横にある
アイコンをクリックして、VPC の 基本情報 ページに移動します。たとえば、データ同期のためにパブリックエンドポイントを持つ MySQL インスタンスを DataWorks に接続する場合、[タスクスケジューリング & データ統合] セクションにある対応する VPC を見つけ、VPC の横にある
アイコンをクリックします。リソース管理 タブに切り替えます。[インターネットアクセスサービス] セクションで、今すぐ作成 にある [作成] をクリックして、リソースグループに関連付けられた VPC のインターネットアクセスを有効にします。
次の主要なパラメータを設定します:
パラメータ
値
VPC
リソースグループに関連付けられているのと同じ VPC と vSwitch を使用します。
関連付けられた vSwitch
[アクセスモード]
[フル VPC モード (SNAT)] を選択します。
EIP インスタンス
[新しい EIP の購入] を選択します。
関連付けられたロール
初めて NAT ゲートウェイを作成する場合、サービスリンクロールを作成する必要があります。[関連付けられたロールの作成] をクリックします。
今すぐ購入 をクリックし、支払いを完了して NAT ゲートウェイインスタンスを作成します。
購入が完了すると、成功メッセージと 3 つのリソース操作の結果が表示されます:[EIP の作成] (作成済み)、[NAT ゲートウェイの作成] (作成済み)、および [EIP のバインド] (バインド済み)。
NAT ゲートウェイインスタンスの購入後、ボタンをクリックしてコンソールに戻り、SNAT エントリを作成します。
説明SNAT エントリを設定した後にのみ、この VPC を使用するリソースグループはインターネットにアクセスできます。
SNAT エントリは、VPC、vSwitch、ECS/ENI、およびカスタム CIDR ブロックの 4 つの粒度をサポートします。vSwitch 粒度は、選択された vSwitch のみを対象とします。DataWorks リソースグループが選択されていない vSwitch にデプロイされている場合、この SNAT エントリを介してインターネットにアクセスすることはできません。VPC 粒度を推奨します。この場合、ソース CIDR ブロックは 0.0.0.0/0 になります。これにより、VPC 内のすべての CIDR ブロックがカバーされ、すべての vSwitch 上のリソースグループが NAT ゲートウェイを介してインターネットにアクセスできるようになります。
新しく購入したインスタンスの [操作] 列にある 管理 をクリックして、対象の NAT ゲートウェイインスタンスの管理ページに移動し、[SNAT 管理] タブに切り替えます。
[SNAT エントリリスト] セクションで、[SNAT エントリの作成] をクリックして SNAT エントリを作成します。以下は主要な設定です:
パラメータ
値
SNAT エントリの粒度
VPC 粒度を選択して、VPC 内のすべてのリソースグループが設定された EIP を介してインターネットにアクセスできるようにします。
EIP アドレスの選択
現在の NAT ゲートウェイインスタンスにバインドされている EIP を選択します。
SNAT エントリのパラメータを設定した後、[OK] をクリックして SNAT エントリを作成します。
[SNAT エントリリスト] セクションで、新しく作成された SNAT エントリの 状態 が 利用可能 に変わると、リソースグループに関連付けられた VPC はインターネットにアクセスできるようになります。
以前に vSwitch 粒度の SNAT エントリを設定した場合、VPC 粒度の SNAT エントリを作成した後にそれを削除できます。VPC 粒度のエントリは 0.0.0.0/0 のソース CIDR ブロックを使用し、これは VPC 内のすべての vSwitch CIDR ブロックを既にカバーしています。古い vSwitch 粒度のエントリを削除しても、VPC 粒度の SNAT エントリには影響しません。
3. 許可リストへの IP アドレスの追加
リソースグループのパブリック IP アドレスを取得します。
サーバーレスリソースグループ
VPC コンソールに移動します。左側メニューで、[NAT Gateway] > [Internet NAT Gateway] をクリックして、Internet NAT Gateway リストページに移動します。
作成した Internet NAT Gateway を見つけ、[EIP] 列を確認して [EIP] アドレスを取得します。
レガシーリソースグループ
DataWorks リソースグループリストページに移動し、対象のリソースグループを見つけ、詳細 列の 操作 をクリックしてリソースグループの詳細ページに移動します。
EIP アドレスを取得します。
管理者としてデータベースにログインします。
DataWorks がデータソースにアクセスするためのアカウントを作成し、必要な権限を設定します:
-- "dataworks_user" は、カスタマイズ可能なユーザー名です。 -- "StrongPassword123!" は、カスタマイズ可能なユーザーパスワードです。 CREATE USER 'dataworks_user'@'<リソースグループにバインドされたパブリック IP アドレス>' IDENTIFIED BY 'StrongPassword123!'; -- ユーザーに、リソースグループにバインドされたパブリック IP アドレスから指定されたデータベース (例:mydatabase) へのすべての権限を付与します。 GRANT ALL PRIVILEGES ON mydatabase.* TO 'dataworks_user'@'<リソースグループにバインドされたパブリック IP アドレス>' WITH GRANT OPTION;FLUSH PRIVILEGES;コマンドを実行して権限を更新し、exitでデータベースを終了します。
4. 接続テスト
DataWorks コンソールにログインします。 左側のナビゲーションウィンドウで、[Data Integration] をクリックします。 表示されるページで、ドロップダウンリストから目的のワークスペースを選択し、[Data Integrationに移動] をクリックします。
左側メニューで データソース をクリックして データソースリスト ページに移動し、データソースの追加 をクリックします。
MySQL データソースタイプを選択し、データソースの接続情報を設定します:
設定パターン を パブリック IP あり に設定します。
[ホストアドレス] には、MySQL が常駐するサーバーのパブリック IP アドレス (この例では
47.117.XX.XX) を設定します。ポート番号 を
3306に設定します。データベース名 を既存のデータベースの名前に設定します。
許可リストに IP アドレスを追加する の手順で作成した
dataworks_userユーザーとパスワードを、ユーザー名 と パスワード に設定します。
接続設定 セクションで、ワークスペースに関連付けられたリソースグループの横にある [接続テスト] をクリックし、結果が 到達可能 であることを確認してください。
説明テスト結果が [失敗] と表示された場合は、接続診断ツール を使用してトラブルシューティングを行ってください。それでも接続に失敗する場合は、 チケットを送信してサポートを依頼してください。
よくある質問
サーバーレスリソースグループがパブリック FTP データソースに接続する際にタイムアウトした場合はどうすればよいですか?
サーバーレスリソースグループは、デフォルトではインターネットにアクセスできません。パブリック FTP データソースへのアクセス時に接続タイムアウトが発生した場合は、次の手順でトラブルシューティングを行ってください:
サーバーレスリソースグループが存在する VPC に NAT ゲートウェイと SNAT エントリが設定されていることを確認してください。設定されていない場合は、本トピックの「ステップ 2:ネットワーク接続の確立」の説明に従って、NAT ゲートウェイのバインドと SNAT エントリの作成を完了してください。
NAT ゲートウェイが、サーバーレスリソースグループが実際に使用している VPC と vSwitch にバインドされていることを確認してください。バインディングがリソースグループのネットワーク設定と一致していることを確認してください。
VPC ルートテーブルで、FTP サーバーの IP アドレスに対応する CIDR ブロックのルートエントリを追加します。 たとえば、FTP サーバーのアドレスが
121.4.x.xの場合、宛先 CIDR ブロックを121.4.0.0/16に設定したルートエントリを追加し、ネクストホップを NAT ゲートウェイインスタンスに設定します。FTP サーバー側の許可リストを確認して、サーバーレスリソースグループのエグレス IP (NAT ゲートウェイにバインドされた EIP) を FTP サーバーの許可リストに追加してください。
中国本土のネットワークから海外リージョンの DataWorks コンソールにアクセスできない場合はどうすればよいですか?
中国本土から海外リージョン (米国 (シリコンバレー) など) の DataWorks コンソールにアクセスすると、クロスボーダーのネットワーク遅延や制限により、ページの読み込みに失敗したり、読み込みが遅くなったりすることがあります。推奨される手順は次のとおりです:
別のコンピューターやネットワーク環境 (モバイルホットスポットなど) を試して、ローカルネットワークの問題を除外してください。
問題がクロスボーダーのネットワーク状況に起因する場合は、ネットワーク管理チームに連絡して、海外リージョンの DataWorks コンソールにアクセスするためのネットワークポリシーを調整を依頼してください。
海外コンソールへの長期的で安定したアクセスには、低遅延で高可用性のクロスボーダーネットワークアクセラレーションのために Alibaba Cloud Global Accelerator (GA) の使用を検討してください。
プロキシ IP を使用してリソースグループを海外 IP に偽装できますか?
いいえ。Alibaba Cloud は、各リソースグループのエグレス IP アドレスを割り当て、維持します。プロキシ IP やその他の方法を使用して、このアドレスを変更またはカスタマイズすることはできません。Python コードや他のプログラムでプロキシ設定を構成した場合でも、DataWorks タスクは実行時にリソースグループに割り当てられた IP アドレスを使用します。地域制限のあるデータソースにアクセスするには、VPN Gateway または Express Connect を使用してクロスボーダー接続を確立します。
