Amazon MWAA でのネットワーキングについて
Amazon VPC は、AWS アカウント にリンクされた仮想ネットワークです。仮想インフラストラクチャとネットワークトラフィックのセグメンテーションをきめ細かく制御できるため、クラウドセキュリティと動的なスケーリングが可能になります。このページでは、Amazon Managed Workflows for Apache Airflow をサポートするために必要な、パブリックルーティング または プライベートルーティング を使用する Amazon VPC インフラストラクチャについて説明します。
目次
用語
- パブリックルーティング
-
インターネットにアクセスできる Amazon VPC ネットワーク。
- プライベート・ルーティング
-
インターネットにアクセス できない Amazon VPC ネットワーク。
サポート対象
次の表では、Amazon MWAA がサポートする Amazon VPC の種類について説明しています。
| Amazon VPC タイプ | サポート |
|---|---|
|
環境を作成しようとしているアカウントが所有する Amazon VPC。 |
はい |
|
複数の AWS アカウント が共有 Amazon VPC で、それぞれが自分の AWS リソースを作成します。 |
はい |
VPC インフラストラクチャの概要
Amazon MWAA 環境を作成すると、Amazon MWAA は、お客様が環境に合わせて選択した Apache Airflow アクセスモードに基づいて、お客様の環境用に 1 つから 2 つの VPC エンドポイントを作成します。これらのエンドポイントは、Amazon VPC 内の Elastic Network Interface (ENI) とプライベート IP アドレスで表されます。これらのエンドポイントが作成されると、これらの IP 宛のトラフィックは、環境で使用されている AWS サービスに対応するように、プライベートまたはパブリックにルーティングされます。
次のセクションでは、トラフィックをインターネット経由でパブリックに、または Amazon VPC 内 でプライベートにルーティングするために必要な Amazon VPC インフラストラクチャについて説明します。
インターネット経由のパブリックルーティング
このセクションでは、パブリックルーティングを使用する環境の Amazon VPC インフラストラクチャについて説明します。次の VPC インフラストラクチャが必要です。
-
1 つの VPC セキュリティグループ。VPC セキュリティ・グループは仮想ファイアウォールとして機能し、インスタンスのイングレス(受信)とイグレス(送信)のネットワーク・トラフィックを制御します。
-
最大 5 つのセキュリティグループを指定できます。
-
セキュリティグループは、自己参照型のインバウンドルールをセキュリティグループ自身に指定する必要があります。
-
セキュリティグループでは、すべてのトラフィックに対して送信ルールを指定する必要があります (
0.0.0.0/0; IPv6 の場合は::/0を使用)。 -
セキュリティグループは、自己参照ルールに含まれるすべてのトラフィックを許可する必要があります。例えば、(推奨) 全アクセス自己参照型セキュリティグループの例 です。
-
セキュリティグループは、HTTPS ポートレンジ
443と TCP ポートレンジ5432のためのポート範囲を指定して オプション でトラフィックをさらに制限することができます。例えば、(オプション)ポート5432 へのインバウンドアクセスを制限するセキュリティグループの例 と (オプション)ポート 443 へのインバウンドアクセスを制限するセキュリティ・グループの例 です。
-
-
2 つのパブリックサブネット。パブリックサブネットは、インターネットゲートウェイへのルートが含まれているルートテーブルに関連付けられているサブネットです。
-
2 つのパブリックサブネットが必要です。これにより、Amazon MWAA は、一方のコンテナに障害が発生した場合に、もう一方のアベイラビリティーゾーンでお客様の環境用の新しいコンテナイメージを構築できます。
-
サブネットは異なるアベイラビリティゾーンになければなりません。例えば、
us-east-1aやus-east-1bなどです。 -
サブネットは Elastic IP アドレス (EIP) を使用して、NAT ゲートウェイ (または NAT インスタンス) にルーティングする必要があります。
-
サブネットは、インターネット行きのトラフィックをインターネットゲートウェイに誘導するルートテーブルを持つ必要があります。
-
-
2 つのプライベートサブネット。プライベート・サブネットとは、インターネットゲートウェイへのルートを持つルート・テーブルと関連付けられて いない サブネットのことです。
-
2 つのプライベートサブネットが必要です。これにより、Amazon MWAA は、一方のコンテナに障害が発生した場合に、もう一方のアベイラビリティーゾーンでお客様の環境用の新しいコンテナイメージを構築できます。
-
サブネットは異なるアベイラビリティゾーンになければなりません。例えば、
us-east-1aやus-east-1bなどです。 -
サブネットには NAT デバイス (ゲートウェイまたはインスタンス)へのルートテーブルが 必要 です。
-
サブネットは、インターネットゲートウェイにルーティングしては ならない です。
-
IPv6 サブネットの場合は
assignIpV6AddressOnCreationをtrueに設定します。 -
IPv6 プライベート サブネットの場合、出力専用インターネットゲートウェイ (EIGW) への接続が必要です。
-
-
ネットワークアクセス制御リスト(ACL)。NACL は、サブネットレベルでインバウンドトラフィックとアウトバウンドトラフィックを (許可または拒否ルールを使用して) 管理します。
-
NACL には、すべてのトラフィックを許可するインバウンドルールが必要です (
0.0.0.0/0; IPv6 の場合は::/0を使用)。 -
NACL には、すべてのトラフィックを許可する送信ルールが必要です (
0.0.0.0/0; IPv6 の場合は::/0を使用)。 -
例えば、(推奨) ACL の例 です。
-
-
2 つの NAT ゲートウェイ (または NAT インスタンス)。NAT デバイスは、プライベートサブネット内のインスタンスからインターネットや他の AWS サービスにトラフィックを転送し、その応答をインスタンスに返送します。
-
NAT デバイスはパブリックサブネットに接続する必要があります。(パブリックサブネットごとに 1 つの NAT デバイス)
-
NAT デバイスには、各パブリックサブネットに Elastic IPv4 アドレス (EIP) がアタッチされている必要があります。
-
-
インターネットゲートウェイ。インターネットゲートウェイは、Amazon VPC をインターネットおよびその他の AWS サービスに接続します。
-
インターネットゲートウェイが Amazon VPC に接続されていなければならなりません。
-
インターネットにアクセスできないプライベートルーティング
このセクションでは、プライベートルーティング を使用する環境の Amazon VPC インフラストラクチャについて説明します。次の VPC インフラストラクチャが必要です。
-
1 つの VPC セキュリティグループ。VPC セキュリティ・グループは仮想ファイアウォールとして機能し、インスタンスのイングレス(受信)とイグレス(送信)のネットワーク・トラフィックを制御します。
-
最大 5 つのセキュリティグループを指定できます。
-
セキュリティグループは、自己参照型のインバウンドルールをセキュリティグループ自身に指定する必要があります。
-
セキュリティグループでは、すべてのトラフィックに対して送信ルールを指定する必要があります (
0.0.0.0/0; IPv6 の場合は::/0を使用)。 -
セキュリティグループは、自己参照ルールに含まれるすべてのトラフィックを許可する必要があります。例えば、(推奨) 全アクセス自己参照型セキュリティグループの例 です。
-
セキュリティグループは、HTTPS ポートレンジ
443と TCP ポートレンジ5432のためのポート範囲を指定して オプション でトラフィックをさらに制限することができます。例えば、(オプション)ポート5432 へのインバウンドアクセスを制限するセキュリティグループの例 と (オプション)ポート 443 へのインバウンドアクセスを制限するセキュリティ・グループの例 です。
-
-
2 つのプライベートサブネット。プライベート・サブネットとは、インターネットゲートウェイへのルートを持つルート・テーブルと関連付けられて いない サブネットのことです。
-
2 つのプライベートサブネットが必要です。これにより、Amazon MWAA は、一方のコンテナに障害が発生した場合に、もう一方のアベイラビリティーゾーンでお客様の環境用の新しいコンテナイメージを構築できます。
-
サブネットは異なるアベイラビリティゾーンになければなりません。例えば、
us-east-1aやus-east-1bなどです。 -
サブネットには VPC エンドポイントへのルートテーブルが必要です。
-
サブネットには、DAG の一部としてインターネットからダウンロードする EIGW へのルートテーブルが必要です。
-
サブネットには NAT デバイス (ゲートウェイ または インスタンス) へのルートテーブルやインターネットゲートウェイがあっては なりません。
-
-
ネットワークアクセス制御リスト(ACL)。NACL は、サブネットレベルでインバウンドトラフィックとアウトバウンドトラフィックを (許可または拒否ルールを使用して) 管理します。
-
NACL には、すべてのトラフィックを許可するインバウンドルールが必要です (
0.0.0.0/0; IPv6 の場合は::/0を使用)。 -
NACL には、すべてのトラフィックを拒否するアウトバウンドルールが必要です(
0.0.0.0/0; IPv6 の場合は::/0を使用)。 -
例えば、(推奨) ACL の例 です。
-
-
ローカルルートテーブル。ローカル・ルート・テーブルは、VPC 内の通信のためのデフォルト・ルートです。
-
ローカルルートテーブルはプライベートサブネットに関連付けられている必要があります。
-
ローカルルートテーブルを使用して、VPC 内のインスタンスが自ネットワークと通信できるようにする必要があります。例えば、AWS Client VPN を使用して Apache Airflow ウェブサーバーの VPC インターフェイスエンドポイントにアクセスする場合、ルートテーブルは VPC エンドポイントにルーティングする必要があります。
-
-
環境で使用されている各 AWS サービスのための VPC エンドポイント、および Amazon MWAA 環境と同じ AWS リージョン および Amazon VPC 内の Apache Airflow VPC エンドポイント。
-
環境で使用される各 AWS サービスの VPC エンドポイントと Apache Airflow の VPC エンドポイント。例えば、(必須) VPC エンドポイント です。
-
VPC エンドポイントではプライベート DNS が有効になっている必要があります。
-
VPC エンドポイントは、環境の 2 つのプライベートサブネットに関連付けられている必要があります。
-
VPC エンドポイントは、環境のセキュリティグループに関連付けられている必要があります。
-
各エンドポイントの VPC エンドポイントポリシーは、環境で使用される AWS のサービスへのアクセスを許可するように設定する必要があります。例えば、(推奨) すべてのアクセスを許可する VPC エンドポイントポリシーの例 です。
-
Amazon S3 用の VPC エンドポイントポリシーは、バケットアクセスを許可するように設定する必要があります。例えば、(推奨) バケットアクセスを許可する Amazon S3 ゲートウェイエンドポイントポリシーの例 です。
-
Amazon VPC と Apache エアフローアクセスモードのユースケース例
このセクションでは、Amazon VPC でのネットワークアクセスのさまざまなユースケースと、Amazon MWAA コンソールで選択する Apache Airflow ウェブサーバーアクセスモードについて説明します。
インターネットアクセスが許可されている-新しい Amazon VPC ネットワーク
VPC 内のインターネットアクセスが組織で許可されており、ユーザーがインターネット経由で Apache Airflow ウェブサーバーにアクセスできるようにしたい場合:
-
インターネットにアクセスできる Amazon VPC ネットワークを作成します。
-
Apache Airflow ウェブサーバー用の パブリックネットワーク アクセスモードの環境を作成します。
-
推奨事項:同時に Amazon VPC インフラストラクチャ、Amazon S3 バケット、および Amazon MWAA 環境を作成する CloudFormation のクイックスタートテンプレートを使用することをお勧めします。詳細については、Amazon Managed Workflows for Apache Airflow のクイックスタートチュートリアル を参照してください。
VPC 内のインターネットアクセスが組織で許可されており、Apache Airflow ウェブサーバーへのアクセスを VPC 内のユーザーに制限したい場合:
-
インターネットにアクセスできる Amazon VPC ネットワークを作成します。
-
Apache Airflow ウェブサーバーの VPC インターフェースエンドポイントにコンピューターからアクセスするメカニズムを作成します。
-
Apache Airflow ウェブサーバー用の プライベートネットワーク アクセスモードの環境を作成します。
-
推奨事項:
-
私たちのおすすめ: Amazon MWAA コンソールを使うか、オプション 1: Amazon MWAA コンソールで VPC ネットワークを作成する、CloudFormation または オプション 2: インターネットにアクセス 可能な Amazon VPC ネットワークの作成 のテンプレートを使用してください
-
私たちのおすすめ: Apache Airflow ウェブサーバーへのアクセスを設定する際に、チュートリアル: AWS Client VPN を使用したプライベートネットワークアクセスの設定 で AWS Client VPN を使用することをお勧めします。
-
インターネットアクセスは許可されていません-新しい Amazon VPC ネットワーク
VPC 内のインターネットアクセスが組織によって 許可されていない 場合:
-
インターネットにアクセスせずに Amazon VPC ネットワークを作成します。
-
Apache Airflow ウェブサーバーの VPC インターフェースエンドポイントにコンピューターからアクセスするメカニズムを作成します。
-
環境で使用される AWS のサービスごとに VPC エンドポイントを作成します。
-
Apache Airflow ウェブサーバー用の プライベートネットワーク アクセスモードの環境を作成します。
-
推奨事項:
-
CloudFormation のテンプレートを使用してインターネットにアクセスせずに Amazon VPC を作成し、オプション 3: インターネットにアクセス せずに Amazon VPC ネットワークを作成する でAmazon MWAA が使用する各 AWS サービスの VPC エンドポイントを作成することをお勧めします。
-
私たちのおすすめ: Apache Airflow ウェブサーバーへのアクセスを設定する際に、チュートリアル: AWS Client VPN を使用したプライベートネットワークアクセスの設定 で AWS Client VPN を使用することをお勧めします。
-
インターネットアクセスは許可されていません-既存の Amazon VPC ネットワーク
もし組織があなたの VPC でのインターネットアクセスを 許可していない場合、かつ 既に必要な Amazon VPC ネットワークがインターネットアクセスなしに設定されている場合:
-
環境で使用される AWS のサービスごとに VPC エンドポイントを作成します。
-
Apache エアフロー用の VPC エンドポイントを作成します。
-
Apache Airflow ウェブサーバーの VPC インターフェースエンドポイントにコンピューターからアクセスするメカニズムを作成します。
-
Apache Airflow ウェブサーバー用の プライベートネットワーク アクセスモードの環境を作成します。
-
推奨事項:
-
Amazon MWAA が使用する AWS の各サービスに必要な VPC エンドポイントと、Apache Airflow in に必要な VPC エンドポイントを Amazon VPC に必要な VPC サービスエンドポイントをプライベートルーティングで作成する で作成してアタッチすることをお勧めします。
-
私たちのおすすめ: Apache Airflow ウェブサーバーへのアクセスを設定する際に、チュートリアル: AWS Client VPN を使用したプライベートネットワークアクセスの設定 で AWS Client VPN を使用することをお勧めします。
-