Amazon VPC に必要な VPC サービスエンドポイントをプライベートルーティングで作成する - Amazon Managed Workflows for Apache Airflow

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon VPC に必要な VPC サービスエンドポイントをプライベートルーティングで作成する

インターネットにアクセスできない既存の Amazon VPC ネットワークでは、Apache Airflow 用の Amazon マネージドワークフローで Apache Airflow を使用するには、追加の VPC サービスエンドポイント (AWS PrivateLink) が必要です。このページでは、Amazon MWAA が使用する AWS サービスに必要な VPC エンドポイント、Apache Airflow に必要な VPC エンドポイント、およびプライベートルーティングを使用して VPC エンドポイントを作成して既存の Amazon VPC にアタッチする方法について説明します。

料金

プライベートネットワークとプライベートルーティング

この画像は、プライベートウェブサーバーを備えた Amazon MWAA 環境のアーキテクチャを示しています。

プライベートネットワークアクセスモードは、Apache Airflow UI へのアクセスを、「お使いの環境のIAM ポリシー」へのアクセスが許可されている Amazon VPC 内のユーザーに制限します。

プライベートなウェブサーバーアクセスを持つ環境を作成する場合、すべての依存関係を Python Wheel アーカイブ (.whl) にパッケージ化し、その後、requirements.txt.whl を参照する必要があります。wheel を使用して依存関係をパッケージ化およびインストールする手順については、「Python wheel を使用した依存関係の管理」を参照してください。。

以下の画像は、Amazon MWAA コンソールの [プライベートネットワーク] オプションの場所を示しています。

この画像は、Amazon MWAA コンソールの [プライベートネットワーク] オプションが表示される場所を示しています。
  • プライベートルーティング。「インターネットにアクセスできない Amazon VPC」は VPC 内のネットワークトラフィックを制限します。このページでは、Amazon VPC にインターネットアクセスがなく、環境で使用されるサービスごとに AWS VPC エンドポイントが必要であり、Amazon MWAA 環境と同じ AWS リージョンと Amazon VPC の Apache Airflow 用の VPC エンドポイントが必要であることを前提としています。

(必須) VPC エンドポイント

次のセクションでは、インターネットにアクセスできない Amazon VPC に必要な VPC エンドポイントを示しています。Apache Airflow に必要な VPC エンドポイントを含め、Amazon MWAA が使用する各 AWS サービスの VPC エンドポイントを一覧表示します。

com.amazonaws.YOUR_REGION.s3 com.amazonaws.YOUR_REGION.monitoring com.amazonaws.YOUR_REGION.ecr.dkr com.amazonaws.YOUR_REGION.ecr.api com.amazonaws.YOUR_REGION.logs com.amazonaws.YOUR_REGION.sqs com.amazonaws.YOUR_REGION.kms com.amazonaws.YOUR_REGION.airflow.api com.amazonaws.YOUR_REGION.airflow.env com.amazonaws.YOUR_REGION.airflow.ops

必要な VPC エンドポイントのアタッチ

このセクションでは、Amazon VPC に必要な VPC エンドポイントをプライベートルーティングでアタッチする手順について説明します。

AWS サービスに必要な VPC エンドポイント

次のセクションでは、環境で使用される AWS サービスの VPC エンドポイントを既存の Amazon VPC にアタッチする手順を示します。

VPC エンドポイントをプライベートサブネットにアタッチするには
  1. Amazon VPC コンソールで「Endpoints ページ」を開きます。

  2. AWS リージョンセレクタを使用して、リージョンを選択します。

  3. Amazon S3 のエンドポイントを作成する:

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .s3 と入力し、キーボードの [Enter] を押します。

    3. [ゲートウェイ] タイプのリストにあるサービスエンドポイントを選択することをお勧めします。

      例えば、次のようになります: com.amazonaws.us-west-2.s3 amazon Gateway

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択されていることと、[DNS 名を有効化] を選択してそのプライベート DNS が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  4. Amazon ECR の最初のエンドポイントを作成する:

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .ecr.dkr と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  5. Amazon ECR 用の 2 つ目のエンドポイントを作成する:

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .ecr.api と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  6. CloudWatch ログのエンドポイントを作成します。

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .logs と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  7. CloudWatch モニタリング用のエンドポイントを作成します。

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .monitoring と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  8. Amazon SQS のエンドポイントを作成する:

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .sqs と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  9. のエンドポイントを作成します AWS KMS。

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .kms と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

Apache Airflow 用の VPC エンドポイント

以下のセクションでは、Apache Airflow の VPC エンドポイントを既存の Amazon VPC にアタッチする手順を示しています。

VPC エンドポイントをプライベートサブネットにアタッチするには
  1. Amazon VPC コンソールで「Endpoints ページ」を開きます。

  2. AWS リージョンセレクタを使用して、リージョンを選択します。

  3. Apache Airflow API のエンドポイントを作成します。

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .airflow.api と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  4. Apache Airflow 環境の 1 つ目のエンドポイントを作成します。

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .airflow.env と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

  5. Apache Airflow オペレーション用の 2 つ目のエンドポイントを作成します。

    1. [エンドポイントの作成] を選択します。

    2. [属性でフィルタリングまたはキーワードで検索] テキストフィールドに .airflow.ops と入力し、キーボードの [Enter] を押します。

    3. サービスのエンドポイントを選択します。

    4. [VPC] 内の環境の Amazon VPC を選択してください。

    5. 異なるアベイラビリティーゾーンにある 2 つのプライベートサブネットが選択され、[DNS 名を有効化] が有効になっていることを確認します。

    6. 環境の Amazon VPC セキュリティグループを選択します。

    7. [ポリシー][フルアクセス] を選択します。

    8. [エンドポイントの作成] を選択します。

(オプション) Amazon S3 VPC インターフェイスエンドポイントのプライベート IP アドレスを有効にする

Amazon S3 インターフェイスエンドポイントはプライベート DNS をサポートしていません。S3 エンドポイントのリクエストは引き続きパブリック IP アドレスに解決されます。S3 アドレスをプライベート IP アドレスに解決するには、S3 リージョンエンドポイントの「Route 53 にプライベートホストゾーン」を追加する必要があります。

Route 53 の使用

このセクションでは、Route 53 を使用して S3 インターフェイスエンドポイントのプライベート IP アドレスを有効にする手順について説明します。

  1. Amazon S3 VPC インターフェイスエンドポイント (s3.eu-west-1.amazonaws.com など) 用のプライベートホストゾーンを作成し、Amazon VPC に関連付けます。

  2. Amazon S3 VPC インターフェイスエンドポイント (s3.eu-west-1.amazonaws.com など) の ALIAS A レコードを作成します。このレコードは VPC インターフェイスエンドポイントの DNS 名に関連付けられます。

  3. Amazon S3 インターフェイスエンドポイント (*. s3.eu-west-1.amazonaws.com など) に対して、VPC インターフェースエンドポイントの DNS 名に解決する ALIAS A ワイルドカードレコードを作成します。

カスタム DNS を使用する VPC

Amazon VPC がカスタム DNS ルーティングを使用している場合は、CNAME レコードを作成して DNS リゾルバー (Route 53 ではなく、通常は DNS サーバーを実行している EC2 インスタンス) に変更を加える必要があります。例:

Name: s3.us-west-2.amazonaws.com Type: CNAME Value: *.vpce-0f67d23e37648915c-e2q2e2j3.s3.us-west-2.vpce.amazonaws.com