VPC 内の DB インスタンスの使用 - Amazon Relational Database Service

VPC 内の DB インスタンスの使用

レガシー DB インスタンスを使用しない限り、 DB インスタンスは Virtual Private Cloud (VPC) となります。VPC は、AWS クラウドの他の仮想ネットワークから論理的に切り離された仮想ネットワークです。Amazon VPC では、Amazon RDS DB インスタンスや Amazon EC2 インスタンスなど、AWS リソースを VPC で起動できます。VPC は、自分のアカウントに属するデフォルト VPC を使用するか、独自に作成することもできます。すべての VPC は、AWS アカウントに関連付けられます。

デフォルト VPC には、VPC 内でリソースを隔離するために使用できる 3 つのサブネットがあります。デフォルト VPC には、VPC 外から VPC 内のリソースへのアクセスを可能にするインターネットゲートウェイもあります。

VPC 内の Amazon RDS DB インスタンスと VPC 外のインスタンスが関係するシナリオのリストについては、「VPC の DB インスタンスにアクセスするシナリオ」を参照してください。

VPC 内の DB インスタンスで操作する方法については、以下を参照してください。

以下のチュートリアルでは、一般的な Amazon RDS 状況で使用できる VPC の作成方法を学ぶことができます。

VPC 内の DB インスタンスの使用

次に、VPC の DB インスタンスの使用に関するヒントを紹介します。

  • VPC では、少なくとも 2 つのサブネットを指定する必要があります。これらのサブネットは、DB インスタンスをデプロイする AWS リージョン 内の 2 つの異なるアベイラビリティーゾーンに存在している必要があります。サブネットは、VPC の IP アドレス範囲の指定可能なセグメントで、セキュリティや運用上のニーズに基づいてインスタンスをグループ化することができます。

    マルチ AZ 配置の場合、AWS リージョン 内の 2 つ以上のアベイラビリティーゾーンにサブネットを定義すると、Amazon RDS は必要に応じて別のアベイラビリティゾーンに新しいスタンバイを作成できるようになります。シングル AZ 配置の場合も、どこかの時点でマルチ AZ 配置に変換する場合に備えてこのように定義する必要があります。

    注記

    ローカルゾーンの DB サブネットグループは、サブネットを 1 つだけ持つことができます。

  • VPC の DB インスタンスをパブリックにアクセス可能にする場合は、VPC 属性の DNS hostnamesDNS resolution を有効にする必要があります。

  • ご利用の VPC では、DB サブネットグループを作成する必要があります (詳細は次のセクションを参照)。DB サブネットグループを作成するには、作成したサブネットを指定します。Amazon RDS は、サブネットとそのサブネット内の IP アドレスを選択し、DB インスタンスに関連付けます。DB インスタンスは、そのサブネットを含むアベイラビリティーゾーンを使用します。

  • VPC には、DB インスタンスへのアクセスを許可する VPC セキュリティグループが必要です。

  • 各サブネットの CIDR ブロックは、フェイルオーバーやコンピュートスケーリングの見積りなどのメンテナンス作業中に Amazon RDS が使用する予備の IP アドレスに十分対応できる大きさが必要です。

  • VPC では、インスタンスのテナント属性が default または dedicated のいずれかに設定されます。デフォルト VPC では、インスタンスのテナント属性はすべて default に設定され、DB インスタンスのすべてのクラスがサポートされます。

    インスタンステナンシーを dedicated に設定した専有 VPC に DB インスタンスを保持する場合は、その DB インスタンスの DB インスタンスクラスは、Amazon EC2 で承認された 専有インスタンスタイプのいずれかである必要があります。例えば、m3.medium EC2 ハードウェア専有インスタンスは、db.m3.medium DB インスタンスクラスに対応します。VPC のインスタンステナンシーについては、Amazon Elastic Compute Cloud ユーザーガイドの「ハードウェア専有インスタンス」を参照してください。

    ハードウェア専有インスタンスに対応するインスタンスタイプの詳細については、EC2 の料金ページで「Amazon EC2 のハードウェア専有インスタンス」を参照してください。

    注記

    インスタンスのテナンシー属性を Amazon RDS DB インスタンス専有に設定しても、DB インスタンスが専有ホストで実行されることは保証されません。

  • オプショングループは DB インスタンスに割り当てられると、DB インスタンスがあるサポートされているプラットフォーム (VPC または VPC ではない EC2-Classic) にリンクされます。DB インスタンスが VPC 内にある場合、その DB インスタンスに関連付けられているオプショングループはその VPC にリンクされます。このリンクは、別の VPC 内にまたは別のプラットフォーム上に DB インスタンスを復元しようとしても、その DB インスタンスに割り当てられているオプショングループは使用できないことを意味します。

  • 別の VPC 内または別のプラットフォーム上に DB インスタンスを復元する場合は、デフォルトのオプショングループを DB インスタンスに割り当てるか、その VPC またはプラットフォームにリンクされているオプショングループを割り当てるか、新しいオプショングループを作成して DB インスタンスに割り当てる必要があります。Oracle TDE などの永続または固定オプションを使用する場合は、別の VPC 内に DB インスタンスを復元するときに、永続または固定オプションを含む新しいオプショングループを作成する必要があります。

DB サブネットグループの使用

サブネットは、VPC の IP アドレス範囲のセグメントで、セキュリティや運用上のニーズに基づいてリソースをグループ化するために指定します。DB サブネットグループは VPC に作成するサブネット (通常はプライベート) のコレクションで、DB インスタンス用に指定します。DB サブネットグループを使用することにより、CLI または API を使用して DB インスタンスを作成するときに、特定の VPC を指定することができます。コンソールを使用する場合は、使用する VPC とサブネットを選択できます。

各 DB サブネットグループには、特定の AWS リージョン 内の少なくとも 2 つのアベイラビリティーゾーンにサブネットが必要です。VPC に DB インスタンスを作成するときには、必ず DB サブネットグループを選択します。DB サブネットグループから、Amazon RDS は DB インスタンスに関連付けるサブネットとそのサブネット内の IP アドレスを選択します。DB インスタンスは、そのサブネットを含むアベイラビリティーゾーンを使用します。マルチ AZ 配置のプライマリ DB インスタンスに障害が発生した場合、Amazon RDS は対応するスタンバイを昇格させ、その後、他のアベイラビリティーゾーンの 1 つのサブネットの IP アドレスを使用して、新しいスタンバイを作成できます。

DB サブネットグループのサブネットはパブリックまたはプライベートのいずれかです。サブネットは、ネットワークアクセス制御リスト (ネットワーク ACL) とルーティングテーブルに定義した設定に応じて、パブリックまたはプライベートになります。DB インスタンスをパブリックにアクセス可能にするには、その DB サブネットグループ内のすべてのサブネットがパブリックである必要があります。パブリックにアクセスできる DB インスタンスに関連付けられているサブネットがパブリックからプライベートに変更された場合、DB インスタンスの可用性に影響する可能性があります。

デュアルスタックモードをサポートする DB サブネットグループを作成するには、DB サブネットグループに追加する各サブネットに Internet Protocol version 6 (IPv6) CIDR ブロックが関連付けられていることを確認してください。詳細については、Amazon RDS IP アドレス指定Amazon VPC ユーザーガイドの「IPv6 に移行する」を参照してください。

注記

ローカルゾーンの DB サブネットグループは、サブネットを 1 つだけ持つことができます。

Amazon RDS は、VPC に DB インスタンスを作成すると、DB サブネットグループから選択した IP アドレスを使用して、DB インスタンスにネットワークインターフェイスを割り当てます。ただし、基になる IP アドレスはフェイルオーバー時に変わる可能性があるため、DB インスタンスに接続するときにはドメインネームシステム (DNS) 名を使用することを強くお勧めします。

注記

VPC で実行する DB インスタンスごとに、Amazon RDS による復旧アクション用として、DB サブネットグループのサブネットごとに最低 1 つのアドレスを確保してください。

Amazon RDS IP アドレス指定

IP アドレスは、VPC のリソースの相互通信とインターネット上のリソースとの通信を有効にします。Amazon RDS は、Internet Protocol version 4 (IPv4) と IPv6 の両方のアドレス指定プロトコルをサポートします。デフォルトでは、Amazon RDS と Amazon VPC は IPv4 アドレス指定プロトコルを使用します。この動作をオフにすることはできません。VPC の作成時には、IPv4 CIDR ブロック (プライベート IPv4 アドレスの範囲) を指定する必要があります。必要に応じて、IPv6 CIDR ブロックを VPC とサブネットに割り当て、そのブロックからサブネットの DB インスタンスに IPv6 アドレスを割り当てることができます。

IPv6 プロトコルのサポートにより、サポートされる IP アドレスの数が増えます。IPv6 プロトコルを使用することで、インターネットの今後の成長に十分なアドレスを確保できます。新しい RDS リソースと既存の RDS リソースは、Amazon VPC 内の IPv4 アドレスと IPv6 アドレスを使用できます。アプリケーションの異なる部分で使用される 2 つのプロトコル間のネットワークトラフィックの設定、保護、および変換を行うと、運用上のオーバーヘッドが発生する可能性があります。Amazon RDS リソースについては IPv6 プロトコルを標準化して、ネットワーク構成を簡素化できます。

IPv4 アドレス

VPC を作成するときには、その VPC の IPv4 アドレスの範囲を CIDR ブロックの形式で指定する必要があります (10.0.0.0/16 など)。DB サブネットグループは、DB インスタンスが使用できる、この CIDR ブロック内の IP アドレスの範囲を定義します。これらの IP アドレスはプライベートまたはパブリックです。

プライベート IPv4 アドレスは、インターネットから到達できない IP アドレスです。DB インスタンスと同じ VPC 内の他のリソース (Amazon EC2 インスタンスなど) との通信には、プライベート IPv4 アドレスを使用できます。各 DB インスタンスには、VPC 内の通信用のプライベート IP アドレスがあります。

パブリック IP アドレスは、インターネットから到達可能な IPv4 アドレスです。DB インスタンスとインターネット上のリソース (SQL クライアントなど) との通信には、パブリックアドレスを使用できます。DB インスタンス にパブリック IP アドレスが割り当てられるかどうかは、ユーザーが制御します。

一般的な Amazon RDS 状況で使用できるプライベート IPv4 アドレスのみで VPC を作成する方法のチュートリアルについては、「チュートリアル: DB インスタンスで使用する Amazon VPC を作成する (IPv4 専用)」を参照してください。

IPv6 アドレス

オプションで IPv6 CIDR ブロックを VPC およびサブネットと関連付けて、そのブロックから VPC 内のリソースに IPv6 アドレスを割り当てることができます。各 IPv6 アドレスは、グローバルに一意です。

VPC の IPv6 CIDR ブロックは、Amazon の IPv6 アドレスのプールから自動的に割り当てられます。範囲を自分で選択することはできません。

IPv6 アドレスに接続するときには、以下の条件が満たされていることを確認してください。

  • クライアントは、クライアントから IPv6 経由でのデータベーストラフィックが許可されるように構成されています。

  • DB インスタンスによって使用される RDS セキュリティグループは、クライアントからデータベースへの IPv6 経由のトラフィックが許可されるように、正しく構成されています。

  • クライアントのオペレーティングシステムスタックは IPv6 アドレス上のトラフィックを許可し、オペレーティングシステムドライバーとライブラリは、正しいデフォルトの DB インスタンスエンドポイント (IPv4 または IPv6) を選択するように構成されています。

IPv6 の詳細については、Amazon VPC ユーザーガイドの「IP アドレス指定」を参照してください。

デュアルスタックモード

DB インスタンスが IPv4 と IPv6 の両方のアドレス指定プロトコルで通信できるときには、デュアルスタックモードで実行しています。したがって、リソースは DB インスタンスと IPv4、IPv6、またはその両方で通信できます。RDS は、プライベートデュアルスタックモード DB インスタンスの IPv6 エンドポイントについてインターネットゲートウェイアクセスを無効にして、IPv6 エンドポイントがプライベートであり、VPC 内からのみアクセスできるようにします。

一般的な Amazon RDS 状況で使用できる IPv4 と IPv6 の両方のアドレスを持つ VPC を作成する方法のチュートリアルについては、「チュートリアル: DB インスタンス用の仮想プライベートクラウド (VPC) を作成する (デュアルスタックモード)」を参照してください。

デュアルスタックモードと DB サブネットグループ

デュアルスタックモードを使用するには、DB インスタンスに関連付ける DB サブネットグループ内の各サブネットに IPv6 CIDR ブロックが関連付けられていることを確認してください。新しい DB サブネットグループを作成するか、既存の DB サブネットグループを変更して、この要件を満たすことができます。DB インスタンスがデュアルスタックモードになった後も、クライアントは通常どおり接続できます。クライアントセキュリティファイアウォールと RDS DB インスタンスのセキュリティグループが、IPv6 経由のトラフィックを許可するように正しく設定されていることを確認します。接続するには、クライアントは DB インスタンスのエンドポイント を使用します。クライアントアプリケーションは、データベースへの接続時に優先するプロトコルを指定できます。デュアルスタックモードでは、DB インスタンスは、クライアントの優先ネットワークプロトコル (IPv4 または IPv6) を検出し、そのプロトコルを使用して接続します。

サブネットの削除または CIDR の関連付け解除により、DB サブネットグループがデュアルスタックモードをサポートしなくなった場合、DB サブネットグループに関連付けられている DB インスタンスに対して互換性のないネットワーク状態が発生するリスクがあります。また、新しいデュアルスタックモードの DB インスタンスを作成するときに DB サブネットグループを使用することはできません。

AWS Management Console を使用して DB サブネットグループがデュアルスタックモードをサポートしているかどうかを判断するには、DB サブネットグループの詳細ページで [Network type] (ネットワークタイプ) を確認します。AWS CLI を使用して DB サブネットグループがデュアルスタックモードをサポートしているかどうかを判断するには、describe-db-subnet-groups コマンドを呼び出して、出力の SupportedNetworkTypes を確認します。

リードレプリカは独立した DB インスタンスとして扱われ、プライマリ DB インスタンスとは異なるネットワークタイプを持つことができます。リードレプリカのプライマリ DB インスタンスのネットワークタイプを変更しても、リードレプリカは影響を受けません。DB インスタンスを復元するときには、サポートされている任意のネットワークタイプに復元できます。

デュアルスタックモードの DB インスタンスの操作

DB インスタンスを作成または変更するときには、デュアルスタックモードを指定して、リソースが DB インスタンスと IPv4、IPv6、またはその両方で通信することを許可できます。

AWS Management Console を使用して DB インスタンスを変更するときには、[Network type] (ネットワークタイプ) セクションでデュアルスタックモードを指定できます。次の画像は、AWS Management Console の [Network type] (ネットワークタイプ) セクションを示しています。


							[Dual-stack mode] (デュアルスタックモード) が選択されているコンソールの [Network type] (ネットワークタイプ) セクション

AWS CLI を使用して DB インスタンスを作成または変更するときには、--network-type オプションを DUAL に設定して、デュアルスタックモードを使用します。RDS API を使用して DB インスタンスを作成または変更するときには、NetworkType パラメータを DUAL に設定して、デュアルスタックモードを使用します。DB インスタンスのネットワークタイプを変更すると、ダウンタイムが発生する可能性があります。指定された DB エンジンバージョンまたは DB サブネットグループでデュアルスタックモードがサポートされていない場合は、NetworkTypeNotSupported エラーが返されます。

DB インスタンスの作成の詳細については、「Amazon RDS DB インスタンスの作成」を参照してください。DB インスタンスの変更の詳細については、「Amazon RDS DB インスタンスを変更する」を参照してください。

AWS Management Console を使用して DB インスタンスがデュアルスタックモードであるかどうかを判断するには、DB インスタンスの [Connectivity & security] (接続性とセキュリティ) タブの [Network type] (ネットワークタイプ) を確認します。

IPv4 専用 DB インスタンスをデュアルスタックモードを使用するように変更する

IPv4 専用 DB インスタンスをデュアルスタックモードを使用するように変更できます。このためには、DB インスタンスのネットワークタイプを変更します。変更によってダウンタイムが発生する可能性があります。

DB インスタンスをデュアルスタックモードを使用するように変更する前に、その DB サブネットグループがデュアルスタックモードをサポートしていることを確認してください。DB インスタンスに関連付けられた DB サブネットグループがデュアルスタックモードをサポートしていない場合は、DB インスタンスを変更するときに、それをサポートする別の DB サブネットグループを指定します。DB インスタンスをデュアルスタックモードを使用するように変更する前に DB インスタンスの DB サブネットグループを変更する場合は、変更の前後に DB サブネットグループが DB インスタンスに対して有効であることを確認してください。

変更後に DB インスタンスに接続できない場合は、選択したネットワーク (IPv4 または IPv6) 上のデータベースへのクロストラフィックを許可するように、クライアントとデータベースのセキュリティファイアウォールとルートテーブルが正確に設定されていることを確認してください。IPv6 アドレスを使用して接続するには、オペレーティングシステムのパラメータ、ライブラリ、またはドライバーを変更しなければならない場合もあります。

DB インスタンスをデュアルスタックモードに変更するときには、以下の制限が適用されます。

  • デュアルスタックモード DB インスタンスをパブリックにアクセス可能にすることはできません。

  • DB インスタンスは IPv6 専用のエンドポイントを持つことはできません。

  • シングル AZ 配置からマルチ AZ 配置へ、またはマルチ AZ 配置からシングル AZ 配置への変更を保留することはできません。

IPv4 専用の DB インスタンスをデュアルスタックモードを使用するように変更するには

  1. DB サブネットグループをデュアルスタックモードをサポートするように変更するか、デュアルスタックモードをサポートする DB サブネットグループを作成します。

    1. IPv6 CIDR ブロックと VPC の関連付け

      詳細については、Amazon VPC ユーザーガイドの「IPv6 CIDR ブロックを VPC に関連付ける」を参照してください。

    2. IPv6 CIDR ブロックを DB サブネットグループ内のすべてのサブネットにアタッチします。

      詳細については、『Amazon VPC ユーザーガイド』の「IPv6 CIDR ブロックをサブネットに関連付ける」を参照してください。

    3. DB サブネットグループがデュアルスタックモードをサポートしていることを確認します。

      AWS Management Console を使用している場合は、DB サブネットグループを選択し、[Supported network types] (サポートされているネットワークタイプ) の値が [Dual, IPv4] (デュアル、IPv4) であることを確認します。

      AWS CLI を使用している場合は、describe-db-subnet-groups コマンドを呼び出して、DB インスタンスの SupportedNetworkType の値が Dual, IPv4 であることを確認します。

  2. DB インスタンスに関連付けられたセキュリティグループを、データベースへの IPv6 接続を許可するように変更するか、IPv6 接続を許可する新しいセキュリティグループを作成します。

    手順については、Amazon VPC ユーザーガイドの「セキュリティグループのルール」を参照してください。

  3. DB インスタンスをデュアルスタックモードをサポートするように変更し、[Network type] (ネットワークタイプ) を[Dual-stack mode] (デュアルスタックモード) に設定します。

    AWS Management Console を使用している場合、以下の設定が正しいことを確認します。

    • [Network type] (ネットワークタイプ) – [Dual-stack mode] (デュアルスタックモード)

      
											[Dual-stack mode] (デュアルスタックモード) が選択されているコンソールの [Network type] (ネットワークタイプ) セクション
    • [Subnet group] (サブネットグループ) — 前のステップで設定した DB サブネットグループ

    • [Security group] (セキュリティグループ) - 前のステップで設定したセキュリティ

    AWS CLI を使用している場合、以下の設定が正しいことを確認します。

    • --network-typedual

    • --db-subnet-group-name - 前のステップで設定した DB サブネットグループ

    • --vpc-security-group-ids - 前のステップで設定した DB セキュリティグループ

  4. DB インスタンスがデュアルスタックモードをサポートしていることを確認します。

    AWS Management Console を使用している場合、DB インスタンスの [Connectivity & security] (接続とセキュリティ) タブに移動し、[Network type] (ネットワークタイプ) の値が [Dual-stack mode] (デュアルスタックモード) であることを確認します。

    AWS CLI を使用している場合は、describe-db-instances コマンドを呼び出して、DB インスタンスの NetworkType の値が dual であることを確認します。

    DB インスタンスエンドポイントで dig コマンドを実行して、関連付けられている IPv6 アドレスを特定します。

    dig db-instance-endpoint AAAA

    DB インスタンスに接続するには、IPv6 アドレスではなく DB インスタンスエンドポイントを使用します。

デュアルスタックネットワーク DB インスタンスの可用性

次の DB エンジンのバージョンは、デュアルスタックネットワーク DB インスタンスをサポートしています。

  • すべての RDS for MariaDB バージョン

  • RDS for MySQL バージョン:

    • 8.0.21 以上の 8.0 バージョン

    • 5.7.31 以上の 5.7 バージョン

  • すべての RDS for Oracle バージョン

  • RDS for PostgreSQL バージョン:

    • すべての 14 バージョン

    • 13.3 以上の 13 バージョン

    • 12.7 以上の 12 バージョン

    • 11.12 以上の 11 バージョン

    • 10.17 以上の 10 バージョン

  • RDS for SQL Server バージョン:

    • 15.00.4043.16.v1 以上の 15 バージョン

    • 14.00.3294.2.v1 以上の 14 バージョン

    • 13.00.5820.21.v1 以上の 13 バージョン

デュアルスタックネットワーク DB インスタンスの制限

デュアルスタックネットワーク DB インスタンスには、次の制限が適用されます。

  • DB インスタンスは、IPv6 プロトコルを排他的に使用することはできません。IPv4 を排他的に使用するか、IPv4 と IPv6 プロトコル を使用することができます (デュアルスタックモード)。

  • Amazon RDS は、ネイティブ IPv6 サブネットをサポートしていません。

  • デュアルスタックモードを使用する DB インスタンスはプライベートでなければなりません。パブリックにアクセス可能にすることはできません。

  • デュアルスタックモードは、db.m3 および db.r3 DB インスタンスクラスをサポートしません。

  • RDS for SQL Server の場合、Always On AG アベイラビリティーグループリスナーエンドポイントを使用するデュアルスタックモード DB インスタンスは、IPv4 アドレスのみを示します。

  • デュアルスタックモード DB インスタンスでは RDS Proxy を使用できません。

  • AWS Outposts DB インスタンスではデュアルスタックモードを使用できません。

  • ローカルゾーンでは、DB インスタンスでデュアルスタックモードを使用することはできません。

VPC 内の DB インスタンスをインターネットから隠す

Amazon RDS の一般的なシナリオの 1 つでは、一般向けウェブアプリケーションを使用する EC2 インスタンスと、パブリックアクセスが不可能なデータベースを使用する DB インスタンスがある VPC を想定しています。例えば、パブリックサブネットとプライベートサブネットを持つ VPC を作成できます。ウェブサーバーとして機能する Amazon EC2 インスタンスをパブリックサブネットにデプロイし、DB インスタンスをプライベートサブネットにデプロイできます。このような配置では、ウェブサーバーだけが DB インスタンスにアクセスできます。このシナリオの説明については、「VPC 内の DB インスタンスに同じ VPC 内の EC2 インスタンスからアクセスする」を参照してください。

VPC 内で DB インスタンスを起動すると、DB インスタンスには VPC 内のトラフィック用のプライベート IP アドレスが割り当てられます。このプライベート IP アドレスにはパブリックアクセスができません。パブリックアクセスオプションを使用すると、DB インスタンスがプライベート IP アドレスだけでなく、パブリック IP アドレスも保持するかどうかを指定できます。DB インスタンスがパブリックアクセス可能として指定されている場合、その DNS エンドポイントは、DB インスタンスの VPC 内からのプライベート IP アドレスに、そして DB インスタンスの VPC 外からパブリック IP アドレスに解決されます。DB インスタンスへのアクセスは、最終的にそこで使用されるセキュリティグループによって制御され、DB インスタンスに割り当てられたセキュリティグループで許可されなければ、パブリックからアクセスすることはできません。

パブリックアクセスオプションを変更することによって、DB インスタンスのパブリックアクセシビリティをオンまたはオフにすることができます。詳細については、DB エンジンの変更に関するセクションを参照してください。

次の図は、[追加の接続設定] セクションの [パブリックアクセス] オプションを示しています。このオプションを設定するには、[接続] セクションの [追加の接続設定] セクションを開きます。

DB インスタンスを変更して [パブリックアクセス] オプションを設定する方法については、「Amazon RDS DB インスタンスを変更する」を参照してください。

VPC に DB インスタンスを作成する

次の手順で VPC 内に DB インスタンスを作成できます。アカウントにデフォルト VPC がある場合は、VPC と DB サブネットグループが既に作成されているため、ステップ 3 から始めることができます。AWS アカウントにデフォルト VPC がない場合、または追加 VPC を作成する場合は、新しい VPC を作成できます。

デフォルト VPC があるかどうかわからない場合は、「EC2-VPC または EC2-Classic のどちらのプラットフォームを使用しているかを確認する」を参照してください。

注記

VPC の DB インスタンスへのパブリックアクセスを可能にするには、VPC 属性の DNS hostnamesDNS resolution を有効化して、VPC 関する DNS 情報を更新する必要があります。VPC インスタンスの DNS 情報の更新については、「VPC の DNS サポートを更新する」を参照してください。

VPC 内に DB インスタンスを作成するには、以下のステップを実行します。

ステップ 1: VPC を作成する

AWS アカウントにデフォルト VPC がない場合、または追加 VPC を作成する場合は、次の手順を実行して新しい VPC を作成します。Amazon VPC ドキュメントの「プライベートサブネットおよびパブリックサブネットを持つ VPC を作成するステップ 1: VPC の作成」を参照してください。

ステップ 2: VPC にサブネットを追加する

VPC を作成したら、少なくとも最後の 2 つのアベイラビリティーゾーンにサブネットを作成する必要があります。これらのサブネットは、DB サブネットグループを作成するときに使用します。デフォルト VPC がある場合、AWS リージョン 内の各アベイラビリティーゾーンに、自動的にサブネットが作成されます。

VPC でサブネットを作成する手順については、「プライベートサブネットおよびパブリックサブネットを持つ VPC を作成する」を参照してください。

ステップ 3: DB サブネットグループを作成する

DB サブネットグループは VPC 用に作成するサブネット (通常はプライベート) のコレクションで、DB インスタンスに指定します。DB サブネットグループには、CLI または API を使用して DB インスタンスを作成するときに、特定の VPC を指定することができます。コンソールを使用する場合は、使用する VPC とサブネットを選択できます。各 DB サブネットグループには、AWS リージョン 内の少なくとも 2 つのアベイラビリティーゾーンに少なくとも 1 つのサブネットが必要です。

ベストプラクティスとして、各 DB サブネットグループには、AWS リージョン 内のアベイラビリティーゾーンごとに少なくとも 1 つのサブネットが必要です。マルチ AZ 配置の場合、AWS リージョン のすべてのアベイラビリティーゾーンのサブネットを定義すると、Amazon RDS で必要に応じて別のアベイラビリティーゾーンに新しいスタンバイレプリカを作成できます。将来、マルチ AZ 配置に変換される可能性があるため、シングル AZ 配置でもこのベストプラクティスに従うことができます。

DB インスタンスをパブリックにアクセス可能にするには、DB サブネットグループのサブネットにインターネットゲートウェイが必要です。サブネット用のインターネットゲートウェイの詳細については、Amazon VPC ドキュメントの「インターネットゲートウェイ」を参照してください。

注記

ローカルゾーンの DB サブネットグループは、サブネットを 1 つだけ持つことができます。

VPC に DB インスタンスを作成するときには、必ず DB サブネットグループを選択します。Amazon RDS は、サブネットとそのサブネット内の IP アドレスを選択し、DB インスタンスに関連付けます。Amazon RDS では、Elastic Network Interface が作成され、その IP アドレスで DB インスタンスに関連付けられます。DB インスタンスは、そのサブネットを含むアベイラビリティーゾーンを使用します。マルチ AZ 配置の場合、AWS リージョン 内の 2 つ以上のアベイラビリティーゾーンにサブネットを定義すると、Amazon RDS は必要に応じて別のアベイラビリティーゾーンに新しいスタンバイを作成できます。シングル AZ 配置の場合も、どこかの時点でマルチ AZ 配置に変換する場合に備えてこのように定義する必要があります。

このステップでは、DB サブネットグループを作成し、このグループに VPC 用に作成したサブネットを追加します。

DB サブネットグループを作成する方法

  1. Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. [Navigation] ペインで、[Subnet groups] を選択します。

  3. [Create DB Subnet Group] を選択します。

  4. [Name] には、DB サブネットグループの名前を入力します。

  5. [Description] に、DB サブネットグループの説明を入力します。

  6. [VPC ] で、作成した VPC を選択します。

  7. [サブネットの追加] セクションで、サブネットを含むアベイラビリティーゾーンを [アベイラビリティーゾーン] から選択し、サブネットを [サブネット] から選択します。

    
							[Create DB Subnet Group] ボタン
    注記

    ローカルゾーンを有効にしている場合は、[DB サブネットグループの作成] ページでアベイラビリティーゾーングループを選択できます。この場合、[アベイラビリティーゾーングループ]、[アベイラビリティーゾーン]、[サブネット] の順に選択します。

  8. [Create] を選択します。

    RDS コンソールの DB サブネットグループリストに新しい DB サブネットグループが表示されます。DB サブネットグループを選択すると、ウィンドウ下部の詳細ペインに、そのグループに関連付けられたすべてのサブネットなどの詳細を表示することができます。

ステップ 4: VPC セキュリティグループを作成する

DB インスタンスを作成する前に、DB インスタンスに関連付ける VPC セキュリティグループを作成する必要があります。DB インスタンスのセキュリティグループを作成する方法については、「 プライベート DB インスタンスの VPC セキュリティグループを作成する」、または Amazon VPC ドキュメントの「VPC のセキュリティグループ」を参照してください。

ステップ 5: VPC に DB インスタンスを作成する

このステップでは、DB インスタンスを作成し、前のステップで作成した VPC 名、DB サブネットグループ、および VPC セキュリティグループを使用します。

注記

VPC の DB インスタンスをパブリックにアクセス可能にする場合は、VPC 属性の DNS hostnamesDNS resolution を有効にする必要があります。VPC インスタンスの DNS 情報の更新方法については、「VPC の DNS サポートを更新する」を参照してください。

DB インスタンスの作成方法の詳細については、「 Amazon RDS DB インスタンスの作成」を参照してください。 。

[Connectivity] (接続) セクションにプロンプトが表示されたら、前のステップで作成した VPC の名前、DB サブネットグループ、VPC セキュリティグループを入力します。