AWS リージョン 間での Amazon Aurora MySQL DB クラスターのレプリケーション
Amazon Aurora MySQL DB クラスターを、出典 DB クラスターとは異なる AWS リージョン に、リードレプリカとして作成できます。このアプローチを使用すると、災害対策機能が向上し、ユーザーに近い AWS リージョン への読み取りオペレーションをスケールして、AWS リージョン 間の移行を容易にすることができます。
暗号化されている DB クラスターと暗号化されていない DB クラスターの両方のリードレプリカを作成できます。出典 DB クラスターが暗号化されている場合、リードレプリカを暗号化する必要があります。
出典 DB クラスターごとに、リードレプリカとすることができるクロスリージョン DB クラスターは最大 5 つです。
注記
クロスリージョンリードレプリカの代わりに、 Aurora Global Database を使用して、最小限のラグタイムで読み取り操作をスケールできます。Aurora Global Database では、1 つの AWS リージョン にプライマリ Aurora DB クラスターがあり、異なるリージョンに最大 5 つの読み取り専用セカンダリ DB クラスターがあります。各セカンダリ DB クラスターには、最大 16 個の (15 ではなく) Aurora レプリカを含めることができます。プライマリ DB クラスターからすべてのセカンダリへのレプリケーションは、データベースエンジンではなく Aurora ストレージレイヤーによって処理されるため、変更をレプリケートする際のラグタイムは非常に短く、通常は 1 秒未満となります。データベースエンジンをレプリケーションプロセスから除外するということは、データベースエンジンがワークロードの処理のみを実行することを意味します。また、Aurora MySQL の binlog (バイナリログ) のレプリケーションを設定または管理する必要もありません。詳細については、「Amazon Aurora Global Database の使用」を参照してください。
別の AWS リージョン に Aurora MySQL DB クラスターのリードレプリカを作成する場合は、以下の点に注意してください。
-
出典 DB クラスターとクロスリージョンリードレプリカ DB クラスターのどちらにも、最大 15 個の Aurora レプリカを DB クラスターのプライマリインスタンスと同時に作成できます。この機能により、出典 AWS リージョン とレプリケーションターゲットの AWS リージョン の両方で、読み取りオペレーションをスケールできるようになります。
-
クロスリージョンシナリオでは、AWS リージョン 間のネットワークチャネルが長くなるため、出典 DB クラスターとリードレプリカ間のラグタイムが長くなります。
-
クロスリージョンレプリケーションから転送されたデータには、Amazon RDS のデータ転送料金が発生します。以下のクロスリージョンレプリケーションアクションでは、出典 AWS リージョン から転送されるデータに対して料金が発生します。
-
リードレプリカを作成すると、Amazon RDS によって出典クラスターのスナップショットが作成され、リードレプリカを保持する AWS リージョン に、そのスナップショットが転送されます。
-
出典データベースのデータが変更されるたびに、Amazon RDS によって、出典リージョンからリードレプリカを保持する AWS リージョン にデータが転送されます。
Amazon RDS データ転送料金の詳細については、「Amazon Aurora の料金
」を参照してください。 -
-
同じ出典 DB クラスターを参照するリードレプリカに対して、複数の同時作成または削除アクションを実行できます。ただし、出典 DB クラスターごとに作成できるリードレプリカは 5 つまでです。
-
レプリケーションを効率的に実行するには、各リードレプリカに、出典 DB クラスターと同程度のコンピューティングおよびストレージリソースが必要です。出典 DB クラスターを拡張した場合、リードレプリカも拡張する必要があります。
トピック
スタートする前に
クロスリージョンリードレプリカとなる Aurora MySQL DB クラスターを作成する前に、出典 Aurora MySQL DB クラスターでバイナリログを有効にする必要があります。Aurora MySQL のクロスリージョンレプリケーションは、MySQL バイナリレプリケーションを使用してクロスリージョンリードレプリカ DB クラスターでの変更を再生します。
Aurora MySQL DB クラスターでバイナリログ記録を有効にするには、出典 DB クラスターの binlog_format
パラメータを更新します。binlog_format
パラメータはクラスターレベルのパラメータであり、デフォルトクラスターパラメータグループにあります。DB クラスターがデフォルトクラスター DB パラメータグループを使用している場合、新しい DB クラスターパラメータグループを作成して binlog_format
設定を変更します。binlog_format
を MIXED
に設定することをお勧めします。ただし、特定バイナリログ形式が必要な場合は binlog_format
を ROW
または STATEMENT
に設定する必要もあります。変更を適用するには、Aurora DB クラスターを再起動します。
Aurora MySQL でバイナリログ記録を使用する方法の詳細については、「Aurora と MySQL との間、または Aurora と別の Aurora DB クラスターとの間のレプリケーション (バイナリログレプリケーション)」を参照してください。Aurora MySQL 設定パラメータの変更の詳細については、「Amazon Aurora の DB クラスターパラメータと DB インスタンスパラメータ」および「Amazon Aurora のパラメータグループ」を参照してください。