リードレプリカの作成
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 インスタンスからリードレプリカを作成するには
-
AWS Management Console にサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/
) を開きます。 -
ナビゲーションペインで、[データベース] を選択します。
-
リードレプリカのソースとして使用する DB インスタンスを選択します。
-
[アクション] で [リードレプリカの作成] を選択します。
-
[DB インスタンス識別子] に、リードレプリカの名前を入力します。
-
インスタンス設定を選択します。リードレプリカでもソース DB インスタンスと同等以上の DB インスタンスクラスとストレージタイプを使用することをお勧めします。
-
AWS リージョン では、リードレプリカの作成先のリージョンを指定します。
-
[ストレージ] では、割り当てられたストレージのサイズや、ストレージの自動スケーリングを使用するかどうかを指定します。
ソース DB インスタンスが最新のストレージ設定になっていない場合は、[ストレージファイルシステム設定のアップグレード] オプションを使用できます。この設定を有効にすると、リードレプリカのファイルシステムが適切な設定にアップグレードされます。詳細については、「DB インスタンスのストレージファイルシステムのアップグレード」を参照してください。
-
[可用性] では、レプリカのフェイルオーバーをサポートするために別のアベイラビリティーゾーンにレプリカのスタンバイを作成するかどうかを選択します。
注記
リードレプリカは、ソースのデータベースがマルチ AZ DB インスタンスであるかどうかに関係なく、マルチ AZ DB インスタンスとして作成できます。
-
他の DB インスタンスの設定を指定します。各可用性設定の詳細については、「DB インスタンスの設定」を参照してください。
-
暗号化されたリードレプリカを作成するには、[その他の設定] を展開してから、次の設定を指定します。
-
[暗号化の有効化] を選択します。
-
[AWS KMS key] では、KMS キーの AWS KMS key 識別子を選択します。
注記
ソース DB インスタンスは暗号化する必要があります。DB インスタンスの暗号化については、「Amazon RDS リソースの暗号化」を参照してください。
-
-
[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-identifiermydbinstance
\ --allocated-storage100
\ --max-allocated-storage1000
\ --upgrade-storage-config
Windows の場合:
aws rds create-db-instance-read-replica ^ --db-instance-identifier
myreadreplica
^ --source-db-instance-identifiermydbinstance
^ --allocated-storage100
^ --max-allocated-storage1000
^ --upgrade-storage-config
ソース MySQL、MariaDB、Oracle、PostgreSQL、または SQL Server DB インスタンスから読み取りレプリカを作成するには、次の必須パラメータを指定して Amazon RDS API CreateDBInstanceReadReplica
オペレーションを呼び出します。
-
DBInstanceIdentifier
-
SourceDBInstanceIdentifier