EC2 インスタンスと Aurora DB クラスターを自動的に接続する - Amazon Aurora

EC2 インスタンスと Aurora DB クラスターを自動的に接続する

RDS コンソールを使用して、Amazon Elastic Compute Cloud (Amazon EC2) インスタンスと Aurora DB クラスターとの接続を簡単に設定できます。多くの場合、DB クラスターはプライベートサブネットにあり、EC2 インスタンスは VPC 内のパブリックサブネットにあります。EC2 インスタンスの SQL クライアントを使用して、DB クラスターに接続できます。EC2 インスタンスは、プライベート DB クラスターにアクセスするウェブサーバーやアプリケーションを実行することもできます。

Aurora DB クラスター と EC2 インスタンスを自動接続します。

Aurora DB クラスターと同じ VPC にない EC2 インスタンスに接続する場合は、「VPC の DB クラスターにアクセスするシナリオ」のシナリオを参照してください。

EC2 インスタンスとの自動接続の概要

EC2 インスタンスと Aurora DB クラスター間の接続を設定すると、Amazon RDS は EC2 インスタンスと DB クラスター の VPC セキュリティグループを自動的に設定します。

EC2 インスタンスと Aurora DB クラスター を接続するための要件は次のとおりです。

  • EC2 インスタンスは DB クラスター と同じ VPC に存在する必要があります。

    同じ VPC に EC2 インスタンスが存在しない場合、コンソールには EC2 インスタンス作成用のリンクが表示されます。

  • 現在、DB クラスターを Aurora Serverless DB クラスターまたは Aurora グローバルデータベースの一部にすることはできません。

  • 接続を設定するユーザーには、以下の Amazon EC2 オペレーションを実行するアクセス許可が必要です。

    • ec2:AuthorizeSecurityGroupEgress

    • ec2:AuthorizeSecurityGroupIngress

    • ec2:CreateSecurityGroup

    • ec2:DescribeInstances

    • ec2:DescribeNetworkInterfaces

    • ec2:DescribeSecurityGroups

    • ec2:ModifyNetworkInterfaceAttribute

    • ec2:RevokeSecurityGroupEgress

DB インスタンスと EC2 インスタンスが異なるアベイラビリティーゾーンにある場合、アベイラビリティーゾーン間のコストが発生する可能性があります。

EC2 インスタンスへの接続を設定すると、次の表で示されているように、Amazon RDS は、DB クラスターと EC2 インスタンスに関連付けられているセキュリティグループの現在の設定に基づいて動作します。

現在の RDS セキュリティグループの設定 現在の EC2 セキュリティグループの設定 RDS アクション

DB クラスターに関連付けられたセキュリティグループには、パターン rds-ec2-n (n は数字) に一致する名前のセキュリティグループが 1 つまたは複数あります。パターンに一致するセキュリティグループは変更されていません。このセキュリティグループには、EC2 インスタンスの VPC セキュリティグループをソースとするインバウンドルールが 1 つのみ存在します。

パターン ec2-rds-n (n は数字) に一致する名前の EC2 インスタンスに関連付けられたセキュリティグループが 1 つまたは複数存在します。パターンに一致するセキュリティグループは変更されていません。このセキュリティグループには、 DB クラスター の VPC セキュリティグループをソースとするアウトバウンドルールが 1 つのみ存在します。

RDS は何のアクションも実行しません。

EC2 インスタンスと DB クラスターとの接続は、既に自動で設定されています。EC2 インスタンスと RDS データベースの間には既に接続が存在するため、セキュリティグループは変更されません。

次の条件のいずれかが適用されます。

  • DB クラスターには、パターン rds-ec2-n と名前が一致する関連付けられたセキュリティグループはありません。

  • DB クラスターに関連付けられたセキュリティグループには、パターン rds-ec2-n に一致する名前のセキュリティグループが 1 つまたは複数あります。ただし、Amazon RDS は、これらのセキュリティグループのいずれも、EC2 インスタンスとの接続には使用できません。Amazon RDS は、EC2 インスタンスの VPC セキュリティグループをソースとするインバウンドルールが 1 つも存在しないセキュリティグループを使用できません。また、Amazon RDS は、変更されたセキュリティグループを使用できません。変更の例としては、ルールの追加や、既存ルールのポート変更などがあります。

次の条件のいずれかが適用されます。

  • EC2 インスタンスに関連付けされた、パターン ec2-rds-n に一致する名前のセキュリティグループは存在しません。

  • EC2 インスタンスに関連付けられた、パターン ec2-rds-n に一致する名前のセキュリティグループが 1 つまたは複数存在します。ただし、Amazon RDS は、これらのセキュリティグループのいずれも、DB クラスターとの接続には使用できません。Amazon RDS は、DB クラスター の VPC セキュリティグループをソースとするアウトバウンドルールが 1 つもないセキュリティグループを使用できません。また、Amazon RDS は、変更されたセキュリティグループを使用できません。

RDS action: create new security groups

DB クラスターに関連付けられたセキュリティグループには、パターン rds-ec2-n に一致する名前のセキュリティグループが 1 つまたは複数あります。パターンに一致するセキュリティグループは変更されていません。このセキュリティグループには、EC2 インスタンスの VPC セキュリティグループをソースとするインバウンドルールが 1 つのみ存在します。

EC2 インスタンスに関連付けられた、パターン ec2-rds-n に一致する名前のセキュリティグループが 1 つまたは複数存在します。ただし、Amazon RDS は、これらのセキュリティグループのいずれも、DB クラスターとの接続には使用できません。Amazon RDS は、DB クラスター の VPC セキュリティグループをソースとするアウトバウンドルールが 1 つもないセキュリティグループを使用できません。また、Amazon RDS は、変更されたセキュリティグループを使用できません。

RDS action: create new security groups

DB クラスターに関連付けられたセキュリティグループには、パターン rds-ec2-n に一致する名前のセキュリティグループが 1 つまたは複数あります。パターンに一致するセキュリティグループは変更されていません。このセキュリティグループには、EC2 インスタンスの VPC セキュリティグループをソースとするインバウンドルールが 1 つのみ存在します。

接続に有効な EC2 セキュリティグループは存在しますが、EC2 インスタンスに関連付けられていません。このセキュリティグループには、パターン ec2-rds-n に一致する名前が付いています。これは変更されていません。また、これには DB クラスター の VPC セキュリティグループをソースとするアウトバウンドルールが 1 つのみ存在します。

RDS action: associate EC2 security group

次の条件のいずれかが適用されます。

  • DB クラスターには、パターン rds-ec2-n と名前が一致する関連付けられたセキュリティグループはありません。

  • DB クラスターに関連付けられたセキュリティグループには、パターン rds-ec2-n に一致する名前のセキュリティグループが 1 つまたは複数あります。ただし、Amazon RDS は、これらのセキュリティグループのいずれも、EC2 インスタンスとの接続には使用できません。Amazon RDS は、EC2 インスタンスの VPC セキュリティグループをソースとするインバウンドルールが 1 つも存在しないセキュリティグループを使用できません。また、Amazon RDS は、変更されたセキュリティグループを使用できません。

EC2 インスタンスに関連付けられた、パターン ec2-rds-n に一致する名前のセキュリティグループが 1 つまたは複数存在します。パターンに一致するセキュリティグループは変更されていません。このセキュリティグループには、 DB クラスター の VPC セキュリティグループをソースとするアウトバウンドルールが 1 つのみ存在します。

RDS action: create new security groups
RDS アクション: 新しいセキュリティグループを作成する

Amazon RDS は以下のアクションを実行します。

  • パターン rds-ec2-n に一致する新しいセキュリティグループを作成します。このセキュリティグループには、EC2 インスタンスの VPC セキュリティグループをソースとするインバウンドルールが存在します。このセキュリティグループでは、 DB クラスターに関連付けられており、EC2 インスタンスが DB クラスターへのアクセスを許可します。

  • パターン ec2-rds-n に一致する新しいセキュリティグループを作成します。このセキュリティグループには、DB クラスターの VPC セキュリティグループをターゲットとするアウトバウンドルールが存在します。このセキュリティグループには EC2 インスタンスに関連付けられ、EC2 インスタンスが DB クラスターにトラフィックの送信を許可します。

RDS アクション: EC2 セキュリティグループを関連付ける

Amazon RDS は、有効な既存の EC2 セキュリティグループを EC2 インスタンスに関連付けます。このセキュリティグループにより、EC2 インスタンスは DB クラスターにトラフィックの送信を許可します。

EC2 インスタンスと Aurora DB クラスターを自動的に接続する

EC2 インスタンスと Aurora DB クラスターとの接続を設定する前に、「EC2 インスタンスとの自動接続の概要」で説明されている要件を満たしていることを確認してください。

接続の設定後にこれらのセキュリティグループを変更すると、EC2 インスタンスと Aurora DB クラスターとの接続に影響する可能性があります。

注記

AWS Management Console を使用することでのみ、EC2 インスタンスと Aurora DB クラスターとの接続を自動で設定できます。AWS CLI または RDS API を使用して自動で接続を設定することはできません。

EC2 インスタンスと Aurora DB クラスター を自動的に接続するには
  1. AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. ナビゲーションペインで、[Databases] (データベース) を選択し、 DB クラスターのリンクを選択します。

  3. [アクション] から [EC2 接続の設定] を選択します。

    [Set up EC2 connection] (EC2 接続の設定) ページが表示されます。

  4. [Set up EC2 connection] (EC2 接続の設定) ページで、[EC2 instance] (EC2 インスタンス) を選択します。

    EC2 接続の設定ページ。

    同じ VPC に EC2 インスタンスが存在しない場合は、[Create EC2 instance] (EC2 インスタンスの作成) を選択します。この場合、新しい EC2 インスタンスが DB クラスターと同じ VPC にあることを確認してください。

  5. Continue (続行) をクリックします。

    [Review and confirm] (確認と確定) ページが表示されます。

    EC2 接続の確認と確定ページ。
  6. [Review and confirm] (確認と確定) ページで、EC2 インスタンスとの接続を設定するために RDS が行う変更を確認します。

    変更が正しければ、[確認とセットアップ] を選択します。

    変更内容が正しくない場合は、[Previous] (前へ) または [Cancel] (キャンセル) を選択します。

接続中のコンピューティングリソースを表示する

AWS Management Console を使用して、Aurora DB クラスターに接続されているコンピューティングリソースを表示できます。表示されるリソースには、自動的に設定されたコンピューティングリソース接続が含まれます。コンピューティングリソースとの接続は、次の方法で自動的に設定できます。

コンピューティングリソースリストには、手動でデータベースに接続されたものは含まれていません。例えば、データベースに関連付けられた VPC セキュリティグループにルールを追加することで、コンピューティングリソースがデータベースに手動でアクセスできるようになります。

コンピューティングリソースをリスト化するには、次の条件を満たしている必要があります。

  • コンピューティングリソースに関連付けられているセキュリティグループの名前がパターン ec2-rds-n (n は数字) と一致する。

  • コンピューティングリソースに関連付けられたセキュリティグループには、ポート範囲が DB クラスターが使用するポートに設定されたアウトバウンドルールがあります。

  • コンピューティングリソースに関連付けられたセキュリティグループには、ソースが DB クラスターに関連付けられたセキュリティグループに設定されたアウトバウンドルールがある。

  • DB クラスターに関連付けられたセキュリティグループの名前が、パターン rds-ec2-n (n は数字) に一致する。

  • DB クラスターに関連付けられたセキュリティグループには、ポート範囲が DB クラスターが使用するポートに設定されたインバウンドルールがあります。

  • DB クラスターに関連付けられたセキュリティグループには、ソースがコンピューティングリソースに関連付けられたセキュリティグループに設定されたインバウンドルールがある。

Aurora DB クラスターに接続されているコンピューティングリソースを表示するには
  1. AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. ナビゲーションペインで、[Databases] (データベース) を選択し、 DB クラスターの名前を選択します。

  3. [Connectivity & security] (接続とセキュリティ) タブの [Connected compute resources] (接続されたコンピューティングリソース) にコンピューティングリソースが表示されます。

    接続中のコンピューティングリソース。

特定の DB エンジンを実行している DB インスタンスに接続する

特定の DB エンジンを実行している DB インスタンスへの接続については、DB エンジンの指示に従ってください。