リードレプリカの作成 - Amazon Relational Database Service

リードレプリカの作成

AWS Management Console、AWS CLI、または RDS API を使用して、既存の DB インスタンスからリードレプリカを作成できます。リードレプリカは、レプリケーション元のソース DB インスタンスの DB インスタンス識別子である SourceDBInstanceIdentifier を指定することで作成できます。

リードレプリカを作成すると、Amazon RDS はソース DB インスタンスの DB スナップショットを取得し、レプリケーションを開始します。DB スナップショットオペレーションが始まると、ソース DB インスタンスでごく短時間の I/O 停止が発生します。通常、I/O 停止は約 1 秒続きます。ソース DB インスタンスがマルチ AZ 配置の場合は、I/O 停止を回避できます。スナップショットがセカンダリ DB インスタンスから取得されるためです。

アクティブな長時間実行トランザクションの場合、リードレプリカの作成プロセスに時間がかかることがあります。長時間実行トランザクションが完了してから、リードレプリカを作成することをお勧めします。同じソース DB インスタンスから複数のリードレプリカを同時に作成する場合、Amazon RDS は初回の作成アクションの開始時にスナップショットを 1 つだけ取得します。

リードレプリカを作成するときは、いくつかの考慮事項があります。最初に、バックアップ保持期間を 0 以外の値に設定することで、ソース DB インスタンスで自動バックアップを有効にする必要があります。この要件は、別のリードレプリカのソース DB インスタンスであるリードレプリカにも適用されます。RDS for MySQL のリードレプリカで自動バックアップを有効にするには、まずリードレプリカを作成し、次にそのリードレプリカを変更して自動バックアップを有効にします。

注記

AWS リージョン 内では、Amazon VPC に基づくすべてのリードレプリカをソース DB インスタンスと同じ仮想プライベートクラウド (VPC) に作成することを強くお勧めします。リードレプリカをソース DB インスタンスとは異なる VPC に作成すると、クラスレスドメイン間ルーティング (CIDR) の範囲がレプリカと RDS システムとの間で重複する可能性があります。CIDR が重複すると、レプリカが不安定になり、レプリカに接続するアプリケーションに悪影響を及ぼす可能性があります。リードレプリカの作成時にエラーが発生した場合は、別のターゲット DB サブネットグループを選択します。詳細については、「VPC 内の DB インスタンスの使用」を参照してください。

コンソールまたは AWS CLI を使用して別の AWS アカウント でリードレプリカを直接作成する方法はありません。

ソース DB インスタンスからリードレプリカを作成するには
  1. AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. ナビゲーションペインで、[データベース] を選択します。

  3. リードレプリカのソースとして使用する DB インスタンスを選択します。

  4. [アクション] で [リードレプリカの作成] を選択します。

  5. [DB インスタンス識別子] に、リードレプリカの名前を入力します。

  6. インスタンス設定を選択します。リードレプリカでもソース DB インスタンスと同等以上の DB インスタンスクラスとストレージタイプを使用することをお勧めします。

  7. AWS リージョン では、リードレプリカの作成先のリージョンを指定します。

  8. [ストレージ] では、割り当てられたストレージのサイズや、ストレージの自動スケーリングを使用するかどうかを指定します。

    ソース DB インスタンスが最新のストレージ設定になっていない場合は、[ストレージファイルシステム設定のアップグレード] オプションを使用できます。この設定を有効にすると、リードレプリカのファイルシステムが適切な設定にアップグレードされます。詳細については、「DB インスタンスのストレージファイルシステムのアップグレード」を参照してください。

  9. [可用性] では、レプリカのフェイルオーバーをサポートするために別のアベイラビリティーゾーンにレプリカのスタンバイを作成するかどうかを選択します。

    注記

    リードレプリカは、ソースのデータベースがマルチ AZ DB インスタンスであるかどうかに関係なく、マルチ AZ DB インスタンスとして作成できます。

  10. 他の DB インスタンスの設定を指定します。各可用性設定の詳細については、「DB インスタンスの設定」を参照してください。

  11. 暗号化されたリードレプリカを作成するには、[その他の設定] を展開してから、次の設定を指定します。

    1. [暗号化の有効化] を選択します。

    2. [AWS KMS key] では、KMS キーの AWS KMS key 識別子を選択します。

    注記

    ソース DB インスタンスは暗号化する必要があります。DB インスタンスの暗号化については、「Amazon RDS リソースの暗号化」を参照してください。

  12. [Create read replica] を選択します。

リードレプリカが作成されると、RDS コンソールの [Databases] (データベース) ページに表示されます。[Role] (ロール) 列に [Replica] (レプリカ) が表示されます。

ソース DB インスタンスからリードレプリカを作成するには、AWS CLI コマンド create-db-instance-read-replica を使用します。この例では、割り当てられたストレージサイズを設定し、ストレージの自動スケーリングを有効にします。また、ファイルシステムを適切な設定にアップグレードします。

他の設定を指定できます。各設定の詳細については、「DB インスタンスの設定」を参照してください。

Linux、macOS、Unix の場合:

aws rds create-db-instance-read-replica \ --db-instance-identifier myreadreplica \ --source-db-instance-identifier mydbinstance \ --allocated-storage 100 \ --max-allocated-storage 1000 \ --upgrade-storage-config

Windows の場合:

aws rds create-db-instance-read-replica ^ --db-instance-identifier myreadreplica ^ --source-db-instance-identifier mydbinstance ^ --allocated-storage 100 ^ --max-allocated-storage 1000 ^ --upgrade-storage-config

ソース MySQL、MariaDB、Oracle、PostgreSQL、または SQL Server DB インスタンスから読み取りレプリカを作成するには、次の必須パラメータを指定して Amazon RDS API CreateDBInstanceReadReplica オペレーションを呼び出します。

  • DBInstanceIdentifier

  • SourceDBInstanceIdentifier