

# Amazon RDS 環境のセットアップ
<a name="CHAP_SettingUp"></a>

このページでは、アカウント設定、セキュリティ、リソース管理など、Amazon Relational Database Service をセットアップするための包括的なガイドを提供します。データベース環境を効率的に作成、管理、保護するための重要なステップについて説明します。Amazon RDS を初めて使用する場合も、特定の要件に合わせて設定する場合も、これらのセクションを参照して、セットアップが最適化されており、ベストプラクティスに準拠していることを確認できます。

**Topics**
+ [AWS アカウント へのサインアップ](#sign-up-for-aws)
+ [要件の確認](#CHAP_SettingUp.Requirements)
+ [セキュリティグループを作成して VPC 内の DB インスタンスへのアクセスを提供する](#CHAP_SettingUp.SecurityGroup)

既に AWS アカウント があり、Amazon RDS の要件を理解していて、IAM と VPC セキュリティグループでデフォルト設定を使用する場合は、[Amazon RDS のスタート方法](CHAP_GettingStarted.md) にスキップできます。

## AWS アカウント へのサインアップ
<a name="sign-up-for-aws"></a>

AWS を使い始めるには、AWS アカウントが必要です。AWS アカウントの作成の詳細については、「*AWS アカウント管理 リファレンスガイド*」の「[AWS アカウントの開始方法](https://docs.aws.amazon.com/accounts/latest/reference/getting-started.html)」を参照してください。

## 要件の確認
<a name="CHAP_SettingUp.Requirements"></a>

Amazon RDS の基本的な構成要素は DB インスタンスです。DB インスタンスでは、データベースを作成します。DB インスタンスは、*エンドポイント*というネットワークアドレスを提供します。アプリケーションでは、このエンドポイントを使用して DB インスタンスに接続します。DB インスタンスの作成時に、ストレージ、メモリ、データベースエンジンとバージョン、ネットワーク構成、セキュリティ、メンテナンス期間などの詳細を指定します。DB インスタンスへのネットワークアクセスは、セキュリティグループを通じて制御します。

DB インスタンスとセキュリティグループを作成する前に、DB インスタンスとネットワークに関する要件を理解しておく必要があります。重要な留意事項を以下に示します。
+ **リソース要件 **– アプリケーションまたはサービスに関するメモリとプロセッサの要件。これらの設定を使用すると、使用する DB インスタンスクラスを判断するのに役立ちます。DB インスタンスクラスの仕様については、「[ DB インスタンスクラス](Concepts.DBInstanceClass.md)」を参照してください。
+ **VPC、サブネット、セキュリティグループ – **DB インスタンスは Virtual Private Cloud (VPC) である可能性が最も高くなります。DB インスタンスに接続するには、セキュリティグループルールを設定する必要があります。これらのルールは、使用する VPC の種類と使用方法に応じて設定が異なります。例えば、デフォルト VPC またはユーザー定義の VPC を使用できます。

  各 VPC オプションに関するルールを次に説明します。
  + **デフォルト VPC** – AWS アカウントのデフォルト VPC が現在の AWS リージョンにある場合、その VPC は DB インスタンスをサポートするように設定されます。DB インスタンスの作成時にデフォルト VPC を指定する場合は、次の操作を行います。
    + アプリケーションやサービスから Amazon RDS DB インスタンスへの接続を許可する *VPC セキュリティグループ*を必ず作成します。VPC セキュリティグループを作成するには、VPC コンソールの [**Security Group**] (セキュリティグループ) オプションまたは AWS CLI を使用します。詳細については、「[ステップ 3: VPC セキュリティグループを作成する](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.CreateVPCSecurityGroup)」を参照してください。
    + デフォルトの DB サブネットグループを指定します。この AWS リージョンで DB インスタンスを初めて作成した場合、DB インスタンスの作成時にデフォルトの DB サブネットグループが、Amazon RDS により作成されます。
  + **ユーザー定義の VPC – **DB インスタンスの作成時にユーザー定義の VPC を指定する場合は、以下の点に注意します。
    + アプリケーションやサービスから Amazon RDS DB インスタンスへの接続を許可する *VPC セキュリティグループ*を必ず作成します。VPC セキュリティグループを作成するには、VPC コンソールの [**Security Group**] (セキュリティグループ) オプションまたは AWS CLI を使用します。詳細については、「[ステップ 3: VPC セキュリティグループを作成する](USER_VPC.WorkingWithRDSInstanceinaVPC.md#USER_VPC.CreateVPCSecurityGroup)」を参照してください。
    + DB インスタンスをホストするには、VPC は特定の要件 (2 つ以上のサブネットを保持しており、各サブネットは個別のアベイラビリティーゾーン内にあることなど) を満たす必要があります。詳細については、「[Amazon VPC と Amazon RDS](USER_VPC.md)」を参照してください。
    + DB インスタンスで使用できる VPC 内のサブネットを定義する DB サブネットグループを必ず指定します。詳細については、「[VPC 内の DB インスタンスの使用](USER_VPC.WorkingWithRDSInstanceinaVPC.md#Overview.RDSVPC.Create)」の「DB サブネットグループの使用」セクションを参照してください。
+ **高可用性 – **フェイルオーバーサポートが必要かどうか。Amazon RDS では、マルチ AZ 配置により、フェイルオーバーのサポート用に、プライマリ DB インスタンスとセカンダリスタンバイ DB インスタンスが別個のアベイラビリティーゾーンに作成されます。本番稼働用のワークロードには、高可用性を維持するためにマルチ AZ 配置をお勧めします。開発およびテストの目的では、マルチ AZ 配置以外のデプロイを使用できます。詳細については、「[Amazon RDS でのマルチ AZ 配置の設定と管理](Concepts.MultiAZ.md)」を参照してください。
+ **IAM ポリシー **– DAmazon RDS オペレーションの実行に必要なアクセス許可を付与するためのポリシーが、自分の AWS アカウントにあるかどうか。IAM 認証情報を使用して AWS に接続している場合、IAM アカウントには、Amazon RDS オペレーションの実行するためのアクセス許可を付与する IAM ポリシーが必要です。詳細については、「[Amazon RDS での Identity and Access Management](UsingWithRDS.IAM.md)」を参照してください。
+ **開いているポート **– データベースでリッスンする TCP/IP ポート。一部の企業のファイアウォールでは、データベースエンジン用のデフォルトポートへの接続がブロックされる場合があります。企業のファイアウォールがデフォルトのポートをブロックしている場合は、新しい DB インスタンス用に他のポートを選択します。指定したポートでリッスンする DB インスタンスを作成した場合、DB インスタンスを変更することでポートを変更できます。
+ **AWS リージョン **– データベースが必要となる AWS リージョン。アプリケーションやウェブサービスの近くにデータベースを配置すると、ネットワークレイテンシーを低減できます。詳細については、「[リージョン、アベイラビリティーゾーン、および Local Zones](Concepts.RegionsAndAvailabilityZones.md)」を参照してください。
+ **DB ディスクサブシステム **– ストレージ要件について検討します。Amazon RDS には、次の 2 つのストレージタイプがあります。
  + 汎用 (SSD)
  + プロビジョンド IOPS (PIOPS)

  マグネティックストレージ (標準ストレージとも呼ばれます) は廃止され、新しい DB インスタンスでは提供されなくなります。Amazon RDS ストレージの詳細については、「[Amazon RDS DB インスタンスストレージ](CHAP_Storage.md)」を参照してください。

セキュリティグループと DB インスタンスの作成に必要な情報を把握したら、次のステップに進みます。

## セキュリティグループを作成して VPC 内の DB インスタンスへのアクセスを提供する
<a name="CHAP_SettingUp.SecurityGroup"></a>

VPC セキュリティグループは、VPC 内の DB インスタンスへのアクセスを提供します。セキュリティグループは、関連付けられた DB インスタンスのファイアウォールとして動作し、インバウンドトラフィックとアウトバウンドトラフィックの両方を DB インスタンスレベルで制御します。DB インスタンスはデフォルトでファイアウォールによって作成され、DB インスタンスを保護するデフォルトのセキュリティグループとなります。

DB インスタンスに接続する前に、接続を可能にするルールをセキュリティグループに追加する必要があります。ネットワークと設定に関する情報を使用して、DB インスタンスへのアクセスを許可するルールを作成します。

例えば、アプリケーションから VPC 内にある DB インスタンスのデータベースにアクセスするとします。この場合、カスタム TCP ルールを追加し、アプリケーションからデータベースにアクセスするためのポート範囲と IP アドレスを指定する必要があります。アプリケーションが Amazon EC2 インスタンスにある場合は、Amazon EC2 インスタンスに設定したセキュリティグループを使用できます。

DB インスタンスを作成するときに、Amazon EC2 インスタンスと DB インスタンス間の接続を設定できます。(詳しくは、「[EC2 インスタンスとの自動ネットワーク接続を設定する](USER_CreateDBInstance.md#USER_CreateDBInstance.Prerequisites.VPC.Automatic)」を参照してください。)

**ヒント**  
DB インスタンスを作成するときに、Amazon EC2 インスタンスと DB インスタンス間のネットワーク接続を自動的に設定できます。詳細については、「[EC2 インスタンスとの自動ネットワーク接続を設定する](USER_CreateDBInstance.md#USER_CreateDBInstance.Prerequisites.VPC.Automatic)」を参照してください。

Amazon Lightsail のリソースを DB インスタンスに接続する方法については、「[ Connect Lightsail resources to AWS のサービス using VPC peering](https://docs.aws.amazon.com/lightsail/latest/userguide/using-lightsail-with-other-aws-services.html)」を参照してください。

DB インスタンスにアクセスするための一般的なシナリオについては、[VPC の DB インスタンスにアクセスするシナリオ](USER_VPC.Scenarios.md) を参照してください。

**VPC セキュリティグループを作成するには**

1. AWS マネジメントコンソール にサインインして、Amazon VPC コンソール ([https://console.aws.amazon.com/vpc](https://console.aws.amazon.com/vpc)) を開きます。
**注記**  
RDS コンソールではなく VPC コンソールにアクセスしていることを確認します。

1. AWS マネジメントコンソールで、VPC セキュリティグループと DB インスタンスを作成する AWS リージョンを選択します。この AWS リージョンにある Amazon VPC リソースのリストには、少なくとも 1 の VPC と複数のサブネットが表示されます。表示されない場合、この AWS リージョンにはデフォルト VPC がありません。

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

1. **[セキュリティグループの作成]** を選択します。

   [**Create security group**] (セキュリティグループの作成) ページが表示されます。

1. [**Basic details**] (基本的な詳細) で、[**Security group name**] (セキュリティグループ名) と [**Description**] (説明) を入力します。[**VPC**] で、DB インスタンスを作成する先の VPC を選択します。

1. [**Inbound rules**] (インバウンドルール) で、[**Add rule**] (ルールを追加) を選択します。

   1. [**タイプ**] で [**カスタム TCP**] を選択します。

   1. [**Port range**] (ポート範囲) で、DB インスタンスに使用するポート値を入力します。

   1. [**Source**] (ソース) で、セキュリティグループ名を選択するか、DB インスタンスにアクセスする IP アドレスの範囲 (CIDR 値) を入力します。[**マイ IP**] を選択すると、ブラウザで検出された IP アドレスから DB インスタンスにアクセスできます。

1. IP アドレスや異なるポート範囲を追加する必要がある場合は、[**Add rule**] (ルールを追加) を選択し、ルールの情報を入力します。

1. (オプション) [**Outbound rules**] (アウトバウンドルール) で、アウトバウンドトラフィックのルールを追加します。デフォルトではすべてのアウトバウンドトラフィックが許可されます｡

1. [**セキュリティグループの作成**] を選択します。

ここで作成した VPC セキュリティグループは、DB インスタンスの作成時にセキュリティグループとして使用できます。

**注記**  
デフォルトの VPC を使用する場合、すべての VPC のサブネットにまたがるデフォルトのサブネットグループが作成されます。DB インスタンスを作成する場合は、デフォルト VPC を選択し、[**DB サブネットグループ**] の [**デフォルト**] を使用できます。

セットアップに必要なステップが完了したら、ユーザーの要件とセキュリティグループを利用して、DB インスタンスを作成できます。これを行うには、「[Amazon RDS DB インスタンスの作成](USER_CreateDBInstance.md)」の手順に従います。特定の DB エンジンを使用する DB インスタンスを作成して使用を開始する方法については、次の表にある関連ドキュメントを参照してください。



| データベースエンジン | ドキュメント | 
| --- | --- | 
| MariaDB | [MariaDB DB インスタンスの作成と接続](CHAP_GettingStarted.CreatingConnecting.MariaDB.md) | 
| Microsoft SQL Server | [Microsoft SQL Server DB インスタンスを作成して接続する](CHAP_GettingStarted.CreatingConnecting.SQLServer.md) | 
| MySQL | [MySQL DB インスタンスの作成と接続](CHAP_GettingStarted.CreatingConnecting.MySQL.md) | 
| Oracle | [Oracle DB インスタンスを作成して接続する](CHAP_GettingStarted.CreatingConnecting.Oracle.md) | 
| PostgreSQL | [PostgreSQL DB インスタンスを作成して接続する](CHAP_GettingStarted.CreatingConnecting.PostgreSQL.md) | 

**注記**  
作成後に DB インスタンスに接続できない場合は、「[Amazon RDS DB インスタンスに接続できない](CHAP_Troubleshooting.md#CHAP_Troubleshooting.Connecting)」のトラブルシューティング情報を参照してください。