インターネット アクセスとファイアウォール ルールの構成

このページでは、Cloud Dataflow ジョブに関連付けられているネットワークに対してルートを提供し、Google Cloud Platform(GCP)ファイアウォール ルールを定義する方法について説明します。

注: default ネットワークには、Cloud Dataflow ジョブを実行できる構成が含まれています。ただし、他のサービスもこのネットワークを使用する場合があります。default に変更しても、すべてのサービスとの互換性が保たれることを確認してください。あるいは、Cloud Dataflow 用の別のネットワークを作成してください。

Cloud Dataflow 用のインターネット アクセス

Cloud Dataflow ワーカー仮想マシン(VM)は、GCP の API とサービスにアクセスできる必要があります。ワーカー VM のインターネット アクセス要件を満たすためにワーカー VM で外部 IP アドレスを構成することも、限定公開の Google アクセスを使用することもできます。

限定公開の Google アクセスを使用すると、内部 IP アドレスのみを持つ VM が GCP とサービスの一部のパブリック IP にアクセスできます。ルーティングとファイアウォール ルールの要件および構成手順については、限定公開の Google アクセスの構成をご覧ください。

GCP の外部の API やサービスにアクセスするジョブには、インターネット アクセスが必要です。たとえば、Python SDK ジョブは Python Package Index(PyPI)にアクセスする必要があります。この場合、ワーカー VM に外部 IP アドレスを構成するか、Cloud NAT などのネットワーク アドレス変換を使用する必要があります。詳細については、Apache Beam Web サイトの Python パイプラインの依存関係の管理をお読みください。

DNS の制限事項

Cloud Dataflow は DNS のカスタマイズをサポートしていないため、restricted.googleapis.com または private.googleapis.com 仮想 IP アドレスはサポートされません。

ファイアウォール ルール

ファイアウォール ルールを使用すると、VM との間のトラフィックを許可または拒否できます。このページでは、ファイアウォール ルールの概要ファイアウォール ルールの使用の記載に基づき、GCP ファイアウォール ルールのしくみ(暗黙のファイアウォール ルールを含む)を読者が理解していることを前提としています。

Cloud Dataflow で必要なファイアウォール ルール

Cloud Dataflow では、ワーカー VM が、パイプライン オプションで指定した VPC ネットワーク内で特定の TCP ポートを使用して相互通信する必要があります。このタイプの通信を許可するには、VPC ネットワークにファイアウォール ルールを構成する必要があります。

自動的に作成される default ネットワークなどの一部の VPC ネットワークには、Cloud Dataflow のファイアウォール要件を満たす default-allow-internal ルールが含まれています。

すべてのワーカー VM には dataflow という値を持つネットワーク タグがあるため、Cloud Dataflow 用のさらに具体的なファイアウォール ルールを作成できます。プロジェクト所有者、編集者、またはセキュリティ管理者は、次の gcloud コマンドを使用して、ネットワーク タグ dataflow を持つ VM から同じタグを持つ VM への TCP ポート 12345 および 12346 上のトラフィックを許可する上り許可ルールを作成できます。

gcloud compute firewall-rules create FIREWALL_RULE_NAME \
    --network NETWORK \
    --action allow \
    --direction DIRECTION \
    --target-tags dataflow \
    --source-tags dataflow \
    --priority 0 \
    --rules tcp:12345-12346

上記の例で、次の変数を置き換えます。

  • FIREWALL_RULE_NAME は、ファイアウォール ルールの名前で置き換えます。
  • NETWORK は、ワーカー VM が使用するネットワークの名前で置き換えます。
  • DIRECTION は、ファイアウォール ルールの方向で置き換えます。

ファイアウォール ルールに関する詳細なガイダンスについては、ファイアウォール ルールの使用をご覧ください。Cloud Dataflow で使用される特定の TCP ポートについては、プロジェクト コンテナ マニフェストを表示できます。コンテナ マニフェストは、ホストポートをコンテナにマッピングするためにポートを明示的に指定します。ワーカーのいずれかと SSH セッションを確立して iproute2 を実行すると、ネットワーク構成とアクティビティを確認できます。詳細については、iproute2 ページをご覧ください。

ワーカー VM への SSH アクセス

Cloud Dataflow では SSH は必要ありませんが、SSH はトラブルシューティングに役立ちます。

ワーカー VM に外部 IP アドレスがある場合は、GCP Console または gcloud コマンドライン ツールを使用して、VM に接続できます。SSH を使用して接続するには、少なくとも、gcloud を実行しているシステムか、GCP Console へのアクセスに使用するウェブブラウザを実行しているシステムの IP アドレスから、TCP ポート 22 での着信接続を許可するファイアウォール ルールが必要です。

内部 IP アドレスのみを持つワーカー VM に接続する必要がある場合は、外部 IP アドレスを持たないインスタンスへの接続をご覧ください。

このページは役立ちましたか?評価をお願いいたします。

フィードバックを送信...

ご不明な点がありましたら、Google のサポートページをご覧ください。