Amazon Aurora
Aurora のユーザーガイド (API バージョン 2014-10-31)

VPC の DB インスタンスにアクセスするシナリオ

Amazon Aurora は、DB インスタンスにアクセスするための以下のシナリオをサポートします。

VPC 内の DB インスタンスに同じ VPC 内の EC2 インスタンスがアクセスする

VPC 内の DB インスタンスの一般的な用途は、同じ VPC 内の EC2 インスタンスで実行されるアプリケーションサーバーとデータを共有することです。これは、AWS Elastic Beanstalk を使用して同じ VPC 内で EC2 インスタンスおよび DB インスタンスを作成する場合に作成されたユーザーシナリオです。

以下の図に、このシナリオを示しています。


					VPC と EC2 のセキュリティグループのシナリオ

同じ VPC 内の EC2 インスタンスと DB インスタンス間のアクセスを管理する方法として最も簡単なのは、次の方法です。

  • DB インスタンスが存在する VPC セキュリティグループを作成します。このセキュリティグループは、DB インスタンスへのアクセスを制限するのに使用できます。たとえば、DB インスタンスを作成したときに割り当てたポートと、開発またはそのほかの目的で DB インスタンスにアクセスするのに使用する IP アドレスを使用して TCP へのアクセスを許可する、セキュリティグループのカスタムルールを作成できます。

  • EC2 インスタンス (ウェブサーバーとクライアント) が属する VPC セキュリティグループを作成します。このセキュリティグループは、必要に応じて VPC のルーティングテーブルを介してインターネットから EC2 インスタンスへのアクセスを許可できます。たとえば、ポート 22 経由で EC2 インスタンスへの TCP アクセスを許可するルールをこのセキュリティグループに設定できます。

  • EC2 インスタンス用に作成したセキュリティグループからの接続を許可する DB インスタンスのセキュリティグループで、カスタムルールを作成します。これは、セキュリティグループのメンバーに DB インスタンスへのアクセスを許可します。

このシナリオのパブリックとプライベートの両方のサブネットを使用する VPC を作成する方法のチュートリアルについては、「チュートリアル: DB インスタンスで使用する Amazon VPC の作成」を参照してください。

他のセキュリティグループからの接続を許可する VPC セキュリティグループにルールを作成するには、以下を実行します。

  1. AWS マネジメントコンソールにサインインし、Amazon VPC コンソール (https://console.aws.amazon.com/vpc) を開きます。

  2. ナビゲーションペインで、[Security Groups] を選択します。

  3. 他のセキュリティグループのメンバーからのアクセスを許可するセキュリティグループを、選択または作成します。前述のシナリオで、これは DB インスタンス向けに使用するセキュリティグループです。[Inbound Rules (インバウンドルール)] タブを選択してから、[Edit rule (ルールの編集)] を選択します。

  4. [インバウンドルールの編集] ページで、[ルールの追加] を選択します。

  5. [タイプ] から、[All ICMP (すべての ICMP)] オプションのいずれかを選択します。[Source] ボックスにセキュリティグループの ID を入力します。これにより、セキュリティグループのリストが作成されます。このセキュリティグループによって保護されているリソースへのアクセスを許可するメンバーが、所属しているセキュリティグループを選択します。前述のシナリオで、これは EC2 インスタンス向けに使用するセキュリティグループです。

  6. [All TCP] を [Type] と [Source] ボックスのセキュリティグループとして使用してルールを作成し、TCP プロトコルのステップを繰り返します。UDP プロトコルを使用する場合は、[All UDP] を [Type] と [Source] ボックスのセキュリティグループとして使用してルールを作成します。

  7. MySQL 用のポート 3306 のような DB インスタンスを作成したときに使用したポートを経由したアクセスを許可する、カスタム TCP のルールを作成します。[Source] ボックスに使用するセキュリティグループまたは IP アドレスを入力します。

  8. 完了したら、[Save] を選択します。


					他のセキュリティグループのルールにセキュリティグループを追加する

VPC 内の DB インスタンスに別の VPC 内の EC2 インスタンスがアクセスする

DB インスタンスがアクセスに使用している EC2 インスタンスとは異なる VPC にある場合、VPC ピア接続を使用してその DB インスタンスにアクセスできます。

以下の図に、このシナリオを示しています。


				VPC 内の DB インスタンスに別の VPC 内の EC2 インスタンスがアクセスする

VPC ピア接続は、プライベート IP アドレスを使用して 2 つの VPC 間でトラフィックをルーティングすることを可能にするネットワーク接続です。どちらの VPC のインスタンスも、同じネットワーク内に存在しているかのように、相互に通信できます。VPC ピアリング接続は、自分の VPC 間、別の AWS アカウントの VPC との間、または別の AWS リージョンの VPC との間に作成できます。VPC ピア接続の詳細については、『Amazon Virtual Private Cloud ユーザーガイド』の「VPC ピア接続」を参照してください。

VPC 内の Amazon Aurora DB インスタンスと、Amazon VPC 外の EC2 インスタンスの間で通信するには、ClassicLink を使用します。Classic Link を使用すると、EC2 インスタンスのアプリケーションは、DB インスタンスのエンドポイントを使用することによって、DB インスタンスに接続できます。ClassicLink は無料で利用できます。

以下の図に、このシナリオを示しています。


					VPC 内の DB インスタンスに VPC 外の EC2 インスタンスがアクセスする

この ClassicLink を使用すると、IP アドレス範囲を定義し、アクセスコントロールリスト (ACL) を用いてネットワークトラフィックを管理できる、論理的に分離されたデータベースに EC2 インスタンスを接続できます。VPC 内の DB インスタンスと通信するために、パブリック IP アドレスやトンネリングを使用する必要はありません。このような配置により、インスタンス間通信に対して高スループットで低レイテンシーの接続を提供します。

VPC 内の DB インスタンスと VPC 外の EC2 インスタンスの間で ClassicLink を有効にするには

  1. AWS マネジメントコンソールにサインインし、Amazon VPC コンソール (https://console.aws.amazon.com/vpc) を開きます。

  2. 画面左枠のナビゲーションペインで、[VPC] を選択します。

  3. DB インスタンスが使用する VPC を選択します。

  4. [Actions] で、[Enable ClassicLink] を選択します。確認ダイアログボックスで、[Yes, Enable] を選択します。

  5. EC2 コンソールで、VPC 内の DB インスタンスに接続する EC2 インスタンスを選択します。

  6. [Actions] で、[ClassicLink] を選択し、続いて [Link to VPC] を選択します。

  7. [Link to VPC] ページで、使用するセキュリティグループを選択し、[Link to VPC] を選択します。

注記

ClassicLink 機能は、EC2-Classic をサポートするアカウントとリージョンのコンソールにのみ表示されます。詳細については、Linux インスタンス用 Amazon EC2 ユーザーガイドの「ClassicLink」を参照してください。

インターネット経由でクライアントアプリケーションが VPC 内の DB インスタンスにアクセスする

クライアントアプリケーションからインターネットを通じて VPC 内の DB インスタンスにアクセスするには、1 つのパブリックサブネットを持つ VPC と、インターネットを介した通信を有効にするためのインターネットゲートウェイを構成する必要があります。

以下の図に、このシナリオを示しています。


					インターネット経由でクライアントアプリケーションが VPC 内の DB インスタンスにアクセスする

次の構成をお勧めします。

  • サイズ /16 (たとえば CIDR: 10.0.0.0/16) の VPC。このサイズでは 65,536 個のプライベート IP アドレスが提供されます。

  • サイズ /24 (たとえば CIDR: 10.0.0.0/24) のサブネット。このサイズでは 256 個のプライベート IP アドレスが提供されます。

  • VPC およびサブネットに関連付けられている Amazon Aurora DB インスタンス。Amazon RDS はサブネット内の IP アドレスを DB インスタンスに割り当てます。

  • インターネットと他の AWS 製品に VPC を接続するインターネットゲートウェイ。

  • DB インスタンスに関連付けられたセキュリティグループ。セキュリティグループのインバウンドルールにより、クライアントアプリケーションは DB インスタンスにアクセスできます。

VPC での DB インスタンスの作成方法に関する詳細は、「VPC に DB インスタンスを作成する」を参照してください。