エンドポイント使用制限ポリシーを使用して環境を構成する

Managed Airflow(第 3 世代) | Managed Airflow(第 2 世代) | Managed Airflow(以前の第 1 世代)

このページでは、エンドポイント使用制限の組織のポリシーが適用されている場合に、Managed Airflow 環境を作成する方法について説明します。

constraints/gcp.restrictEndpointUsage 組織のポリシーは、リソースへのアクセスに使用できる Google API エンドポイントを制限します。これにより、組織はロケーション エンドポイントまたはリージョン エンドポイントの使用を強制できます。たとえば、特定の地理的領域内にデータを保持するという要件を満たすことができます。

マネージド Airflow のエンドポイント使用制限ポリシーについて

Restrict Endpoint Usage ポリシーで Cloud Storage API、Cloud Logging API、Pub/Sub API、Data Lineage API などのサービスのグローバル エンドポイントへのアクセスが拒否されているプロジェクトで Managed Airflow 環境を作成すると、Managed Airflow は、これらのサービスに対応するリージョン エンドポイント(REP)を使用するように環境の内部コンポーネントを構成します。

環境で使用される特定のエンドポイントは、環境の作成時のみ、エンドポイントの使用を制限するポリシーによって決定されます。これらのエンドポイントは、後でポリシーが再構成されても変更されません。

Managed Airflow 環境に必要なサービスを制限する

Restrict Endpoint Usage ポリシーで Managed Airflow に必要なサービスの一部が制限されている場合、次の制限が適用されます。

  • Airflow UI の Airflow タスクログ

    Airflow UI は、タスクログを表示するためにグローバル Cloud Logging エンドポイント(logging.googleapis.com)に依存しています。エンドポイントの使用を制限するポリシーで logging.googleapis.com を拒否すると、Airflow UI でタスクログを使用できなくなります。

    この制限は Airflow UI にのみ適用されます。DAG UI のタスクログと、 Google Cloud コンソールと Cloud Logging の Airflow ワーカーログは引き続き表示できます。

  • 環境指標

    一部の Monitoring API はリージョン エンドポイントを完全にサポートしていないため、Managed Airflow は Cloud Monitoring にグローバル エンドポイント(monitoring.googleapis.com)を使用します。monitoring.googleapis.com を制限すると、一部の環境指標に影響する可能性があります。

  • DAG の Airflow 演算子

    エンドポイント使用制限ポリシーで拒否されたグローバル エンドポイントに接続する Airflow オペレーターは失敗します。オペレーターがサポートしている場合は、DAG の Airflow オペレーターがリージョン エンドポイントを使用するように構成されていることを確認します。

始める前に

  • エンドポイントの使用を制限するポリシーが設定された環境は、Managed Airflow(第 2 世代)バージョン 2.16.7 以降でサポートされています。

エンドポイント使用制限ポリシーを構成する

特定のグローバル エンドポイントへのアクセスを拒否するようにエンドポイントの使用を制限するポリシーを構成する方法の詳細と例については、エンドポイントの使用を制限するをご覧ください。

エンドポイント使用制限ポリシーを使用してパブリック IP 環境を作成する

パブリック IP の Managed Airflow 環境では、追加の設定は必要ありません。手順は次のとおりです。

  1. リージョン化するサービスに、選択したリージョンで使用可能なリージョン エンドポイントがあることを確認します。

  2. エンドポイントの使用制限ポリシーがすでに構成されており、リージョン化するサービスに対してグローバル エンドポイントが拒否されていることを確認します。

  3. 新しい Managed Airflow 環境を作成する

    この環境では、エンドポイント使用制限ポリシーに従ってリージョン エンドポイントが使用されます。

エンドポイント使用制限ポリシーを使用してプライベート IP 環境を作成する

プライベート IP 構成で Restrict Endpoint Usage ポリシーを使用して環境を作成するには、Private Service Connect と Cloud DNS を使用して、必要なリージョン エンドポイント(REP)にトラフィックを解決して転送するように VPC ネットワークを構成する必要があります。

エンドポイント使用制限ポリシーを使用してプライベート IP 環境を作成するには:

  1. リージョン化するサービスに、選択したリージョンで使用可能なリージョン エンドポイントがあることを確認します。

  2. エンドポイントの使用制限ポリシーがすでに構成されており、リージョン化するサービスに対してグローバル エンドポイントが拒否されていることを確認します。

  3. プライベート IP 環境で使用する VPC ネットワークとサブネットワークがすでにあることを確認します。

  4. エンドポイントの使用を制限するポリシーによって制限されている次の各サービスについて、ネットワーク構成の手順を繰り返します。

    • storage.googleapis.com
    • logging.googleapis.com
    • pubsub.googleapis.com
    • datalineage.googleapis.com
    • DAG で使用される他のすべてのサービスの Google API エンドポイント。

ポリシーで制限されたサービスのプライベート IP ネットワーキングを構成する

プロジェクト内の Google サービスで、グローバル エンドポイントへのアクセスが制限されている場合は、対応するリージョン エンドポイント(REP)に次の手順を適用します。

これらのサービスのリージョン バリエーションをターゲットにするには、Private Service Connect エンドポイントを作成し、Managed Airflow 環境のリージョンを指定する必要があります。たとえば、環境が us-central1 にある場合は、Cloud Storage の storage.us-central1.rep.googleapis.com REP をターゲットにします。

Private Service Connect エンドポイントを使用して、サポートされている Google API のリージョン エンドポイントに接続する方法の詳細については、エンドポイントを介してリージョン Google API にアクセスするをご覧ください。

Private Service Connect エンドポイントを作成する

  1. Google Cloud コンソールで、[Private Service Connect] ページに移動します。

    [Private Service Connect] に移動

  2. [エンドポイントを接続] をクリックします。

  3. Private Service Connect エンドポイントを次のように構成します。

    • ターゲット: [Google API] を選択します。

    • ターゲットの詳細:

      1. スコープ: Regional を選択します。
      2. リージョン: Managed Airflow 環境のリージョンを選択します。
      3. ターゲット サービス: 構成するサービスを選択します。これにより、選択したリージョンの REP が選択されます。

      例:

      環境が us-central1 にあり、Cloud Storage を構成している場合は、Iowa (us-central1)Cloud Storage (storage.us-central1.rep.googleapis.com) を選択します。

    • エンドポイントの詳細:

      1. エンドポイント名: エンドポイントの名前。

        例: psc-storage-endpoint-us-central1

      2. ネットワークとサブネットワーク: Managed Airflow 環境の VPC ネットワークとサブネットワークを選択します。

      3. IP アドレス: 既存の IP アドレスを選択するか、[IP アドレスを作成] をクリックして、選択したサブネットワークから新しい静的内部 IP アドレスを予約します。

        この IP アドレスにわかりやすい名前を付けます。この IP アドレスは、後で DNS レコードを構成するときに使用します。

        例: psc-storage-us-central1

  4. [エンドポイントを追加] をクリックします。

限定公開 DNS ゾーンを作成する

  1. Google Cloud コンソールで、[Cloud DNS] ページに移動します。

    [Cloud DNS] に移動

  2. [ゾーンを作成] をクリックします。

  3. [ゾーンのタイプ] で [Private] を選択します。

  4. 次の構成を指定します。

    • ゾーン名: ゾーンの名前。

      例: storage-us-central1

    • DNS 名: DNS 名。末尾のドットを含めます。

      例: storage.us-central1.rep.googleapis.com.

    • ネットワーク: Managed Airflow 環境の VPC ネットワークを選択します。

  5. [作成] をクリックします。

作成した DNS ゾーンに DNS レコードを追加する

  1. Google Cloud コンソールで、[Cloud DNS] ページに移動します。

    [Cloud DNS] に移動

  2. 作成したゾーンの名前をクリックします。

  3. [標準を追加] をクリックします。

  4. DNS レコードを次のように構成します。

    • DNS 名: DNS ゾーンのサブドメインを指定します。

      例: storage.us-central1.rep.googleapis.com

    • リソース レコードのタイプ: [A] を選択します。

    • IPv4 アドレス: Private Service Connect エンドポイントに割り当てた IP アドレスを選択します。

  5. [作成] をクリックします。

プライベート IP Managed Airflow 環境を作成する

環境で使用されるすべてのサービスを構成したら、選択した VPC ネットワークとサブネットワークにプライベート IP 環境を作成します。

次のステップ