翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。
作成者:トーマス・スコット (AWS)
概要
このパターンでは、サーバーレスアーキテクチャを使用して、Amazon Web Services (AWS) クラウドで静的アウトバウンド IP アドレスを生成する方法を説明します。組織がセキュアファイル転送プロトコル (SFTP) を使用して別の事業体にファイルを送信したい場合、この方法を利用することができる。つまり、事業体は、ファイアウォールを通過するファイルを許可する IP アドレスにアクセスできる必要があります。
このパターンのアプローチは、Elastic IP アドレスをアウトバウンド IP アドレスとして使用する AWS Lambda 関数を作成するのに役立ちます。このパターンの手順に従うことで、Lambda 関数と、静的 IP アドレスを持つインターネットゲートウェイ経由でアウトバウンドトラフィックをルーティングする仮想プライベートクラウド (VPC) を作成できます。静的 IP アドレスを使用するには、Lambda 関数を VPC とそのサブネットにアタッチします。
前提条件と制限
前提条件
アクティブな AWS アカウント。
AWS Identity and Access Management (IAM) アクセス権限で、Lambda 関数の作成とデプロイ、VPC とそのサブネットの作成が可能です。詳細については、AWS Lambda ドキュメントの「実行ロールとユーザー権限」を参照してください。
Infrastructure as Code (IaC) を使用してこのパターンのアプローチを実装する場合は、AWS Cloud9 などの統合開発環境 (IDE) が必要です。詳細については、AWS Cloud9 ドキュメントにある「AWS Cloud9 とは?」を参照してください。
アーキテクチャ
このパターンのサーバーレスアーキテクチャを次の図に示します。

この図表は、次のワークフローを示しています:
アウトバウンドトラフィックは
NAT gateway 1
のPublic subnet 1
から離れます。アウトバウンドトラフィックは
NAT gateway 2
のPublic subnet 2
から離れます。Lambda 関数は
Private subnet 1
またはPrivate subnet 2
で実行できます。Private subnet 1
とPrivate subnet 2
はパブリックサブネットの NAT ゲートウェイにトラフィックをルーティングします。NAT ゲートウェイは、パブリックサブネットからインターネットゲートウェイにアウトバウンドトラフィックを送信します。
アウトバウンドデータは、インターネットゲートウェイから外部サーバーに転送されます。
テクノロジースタック
Lambda
Amazon Virtual Private Cloud (Amazon VPC)
自動化とスケール
異なるアベイラビリティーゾーンにある 2 つのパブリックサブネットと 2 つのプライベートサブネットを使用することで、高可用性 (HA) を確保できます。1 つのアベイラビリティーゾーンが使用できなくなっても、パターンのソリューションは引き続き機能します。
ツール
「AWS Lambda」 – AWS Lambda はサーバーのプロビジョニングや管理を行わずにコードの実行を支援できるコンピューティングサービスです。Lambda は必要に応じてコードを実行し、1 日あたり数個のリクエストから 1 秒あたり数千のリクエストまで自動的にスケールします。課金は実際に消費したコンピューティング時間に対してのみ発生します。コードが実行されていない場合、料金は発生しません。
「Amazon VPC」— Amazon Virtual Private Cloud (Amazon VPC) では、AWS クラウドの論理的に隔離されたセクションをプロビジョニングすることで、ユーザーが定義した仮想ネットワーク内で AWS リソースを起動できます。仮想ネットワークは、お客様自身のデータセンターで運用されていた従来のネットワークによく似ていますが、AWS のスケーラブルなインフラストラクチャを使用できるというメリットがあります。
エピック
タスク | 説明 | 必要なスキル |
---|---|---|
新しい VPC を作成します。 | AWS マネジメントコンソールにサインインし、Amazon VPC コンソールを開いて、 VPC の作成に関する詳細は、Amazon VPC ドキュメントの「Amazon VPC の使用開始」を参照してください。 | AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
最初のパブリックサブネットを作成します。 |
| AWS 管理者 |
2 番目のパブリックサブネットを作成します。 |
| AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
最初のプライベートサブネットを作成します。 |
| AWS 管理者 |
2 番目のプライベートサブネットを作成する |
| AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
最初の Elastic IP アドレスを作成します。 |
注記この Elastic IP アドレスは、最初の NAT ゲートウェイに使用されます。 | AWS 管理者 |
2 番目の Elastic IP アドレスを作成します。 |
注記この Elastic IP アドレスは、2 番目の NAT ゲートウェイに使用されます。 | AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
インターネットゲートウェイを作成します。 |
| AWS 管理者 |
インターネットゲートウェイを VPC にアタッチします。 | 作成したインターネットゲートウェイを選択して、[アクション]、[VPC にアタッチ] を選択します。 | AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
最初の NAT ゲートウェイを作成します。 |
| AWS 管理者 |
2 番目の NAT ゲートウェイを作成します。 |
| AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
パブリックワンサブネット用のルートテーブルを作成します。 |
| AWS 管理者 |
パブリック2 サブネットのルートテーブルを作成します。 |
| AWS 管理者 |
プライベートワンサブネットのルートテーブルを作成します。 |
| AWS 管理者 |
プライベートツーサブネットのルートテーブルを作成します。 |
| AWS 管理者 |
タスク | 説明 | 必要なスキル |
---|---|---|
新しい Lambda 関数の作成 |
| AWS 管理者 |
Lambda 関数 を VPC に追加します。 |
| AWS 管理者 |
外部サービスを呼び出すコードを記述します。 |
| AWS 管理者 |