DB クラスターに Aurora レプリカを追加する - Amazon Aurora

DB クラスターに Aurora レプリカを追加する

レプリケーションがある Aurora DB クラスターには、1 つのプライマリ DB インスタンスと最大 15 の Aurora レプリカがあります。プライマリ DB インスタンスは読み書きオペレーションをサポートし、クラスターボリュームに対するすべてのデータ変更を実行します。Aurora レプリカは、プライマリ DB インスタンスと同じストレージボリュームに接続しますが、読み取りオペレーションのみサポートしています。Aurora レプリカを使用して、プライマリ DB インスタンスから読み取りワークロードをオフロードします。詳細については、「Aurora レプリカ」を参照してください。

Amazon Aurora レプリカには以下の制限事項があります。

  • Aurora Serverless v1 DB クラスターの Aurora レプリカを作成することはできません。Aurora Serverless v1 には、データベースのすべての読み取りおよび書き込みオペレーションをサポートするために、自動的にスケールアップおよびスケールダウンする単一の DB インスタンスがあります。

    ただし、リーダーインスタンスを Aurora Serverless v2 DB クラスターに追加することはできます。詳細については、「Aurora Serverless v2 リーダーの追加」を参照してください。

Aurora DB クラスターのプライマリインスタンスと Aurora レプリカを複数のアベイラビリティーゾーンに分散させて、DB クラスターの可用性を改善することをお勧めします。詳細については、「利用可能なリージョン」を参照してください。

Aurora レプリカを Aurora DB クラスターから削除するには、「Aurora DB クラスターからの DB インスタンスの削除」の手順に従って、Aurora レプリカ DB インスタンスを削除します。

注記

Amazon Aurora では、RDS DB インスタンスなどの外部データベースとのレプリケーションもサポートします。RDS DB インスタンスは、Amazon Aurora と同じ AWS リージョンにある必要があります。詳細については、「Amazon Aurora でのレプリケーション」を参照してください。

Aurora レプリカを DB クラスターに追加するには AWS Management Console、AWS CLI、または RDS API を使用します。

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

  2. ナビゲーションペインで、[データベース] を選択し、新しい DB インスタンスを追加する DB クラスターを選択します。

  3. クラスターとプライマリインスタンスの両方が [使用可能] 状態であることを確認します。DB クラスターまたはプライマリインスタンスが [作成中] などの移行状態にある場合、レプリカを追加することはできません。

    クラスターにプライマリインスタンスがない場合は、create-db-instance AWS CLI コマンドを使用してプライマリインスタンスを作成します。この状況は、CLI を使用して DB クラスタースナップショットを復元し、AWS Management Console でクラスターを表示した場合に発生する可能性があります。

  4. [アクション] で、[リーダーの追加] を選択します。

    [リーダーの追加] ページが表示されます。

  5. [リーダーの追加] ページで、Aurora レプリカのオプションを指定します。次の表は、Aurora レプリカの設定を示しています。

    使用するオプション 操作

    アベイラビリティーゾーン

    特定のアベイラビリティーゾーンを指定するかどうかを指定します。リストには、DB クラスター作成時にセキュリティした DB サブネットグループにマッピングされたアベイラビリティーゾーンのみが含まれます。利用可能ゾーンについての詳細は、「リージョンとアベイラビリティーゾーン」を参照してください。

    パブリックアクセス可能

    Aurora レプリカにパブリック IP アドレスを割り当てるには [Yes] を選択します。それ以外の場合は [No] を選択します。Aurora レプリカをパブリックアクセスから隠す方法については、「VPC 内の DB クラスターをインターネットから隠す」を参照してください。

    暗号化

    この Aurora レプリカを保管時に暗号化できるように、[Enable encryption] を選択します。詳細については、「Amazon Aurora リソースの暗号化」を参照してください。

    DB インスタンスクラス

    Aurora レプリカの処理要件やメモリ要件を定義する DB インスタンスクラスを選択します。DB インスタンスクラスのオプションについては、「Aurora DB インスタンスクラス」を参照してください。

    Aurora レプリカの出典

    Aurora レプリカを作成するプライマリインスタンスの識別子を選択します。

    DB インスタンス識別子

    選択した AWS リージョン内で、アカウントにとって一意となるインスタンス名を入力します。名前には、選択した AWS リージョンと DB エンジンなどを含めると理解しやすくなります (aurora-read-instance1 など)。

    優先度

    インスタンスのフェイルオーバー優先度を選択します。値を選択しない場合、デフォルト値は tier-1 になります。この優先度により、プライマリインスタンスの障害からの復旧時に、Aurora レプリカを昇格する順序が決まります。詳細については、「Aurora DB クラスターの耐障害性」を参照してください。

    データベースポート

    Aurora レプリカのポートは、DB クラスターのポートと同じです。

    DB パラメータグループ

    パラメータグループを選択します。Aurora にはデフォルトのパラメータグループが用意されています。また、独自のパラメータグループを作成することもできます。パラメータグループの詳細については、「「パラメータグループを使用する」 」を参照してください。

    Performance Insights

    [Performance Insights を有効にする] チェックボックスはデフォルトで選択されています。値はライターインスタンスから継承されることはありません。詳細については、「Amazon Aurora での Performance Insights を使用したDB 負荷のモニタリング」を参照してください。

    拡張モニタリング

    DB クラスターが実行されているオペレーティングシステムに対してリアルタイムでのメトリクスの収集を有効にするには、[拡張モニタリングを有効にする] を選択します。詳細については、「拡張モニタリングを使用した OS メトリクスのモニタリング」を参照してください。

    モニタリングロール

    [拡張モニタリング] が [拡張モニタリングの有効化] に設定されている場合にのみ使用できます。Amazon CloudWatch Logs との通信を Amazon RDS に許可するために作成した IAM ロールを選択するか、[デフォルト] を選択して、RDS によって rds-monitoring-role という名前のロールが作成されるようにします。詳細については、「拡張モニタリングを使用した OS メトリクスのモニタリング」を参照してください。

    詳細度

    [拡張モニタリング] が [拡張モニタリングの有効化] に設定されている場合にのみ使用できます。DB クラスターのメトリクスを収集する間隔を秒単位で設定します。

    マイナーバージョン自動アップグレード

    Aurora DB クラスターに DB エンジンのマイナーバージョンアップグレードがリリースと同時に自動的に適用されるようにする場合は、[Enable auto minor version upgrade (マイナーバージョン自動アップグレードの有効化)] を選択します。

    [マイナーバージョン自動アップグレード] の設定は Aurora PostgreSQL および Aurora MySQL DB クラスターの両方に適用されます。Aurora MySQL 2.x クラスターの場合、この設定により、クラスターは最大でバージョン 2.07.2 にアップグレードされます。

    Aurora PostgreSQL のエンジンに関する更新の詳細については、「Amazon Aurora PostgreSQL の更新」を参照してください。

    Aurora MySQL のエンジンに関する更新の詳細については、「Amazon Aurora MySQL のデータベースエンジンの更新」を参照してください。

  6. [リーダーの追加] を選択して、Aurora レプリカを作成します。

DB クラスターに Aurora レプリカを作成するには、AWS CLI コマンドの create-db-instance を実行します。--db-cluster-identifier オプションとして DB クラスターの名前を含めます。次の例に示すように、オプションで --availability-zone パラメータを使用して Aurora レプリカのアベイラビリティーゾーンを指定できます。

例えば、次のコマンドは sample-instance-us-west-2a という名前の新しい MySQL 5.7 互換 Aurora レプリカを作成します。

Linux、macOS、Unix の場合:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a \ --db-cluster-identifier sample-cluster --engine aurora-mysql --db-instance-class db.r5.large \ --availability-zone us-west-2a

Windows の場合:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a ^ --db-cluster-identifier sample-cluster --engine aurora-mysql --db-instance-class db.r5.large ^ --availability-zone us-west-2a

次のコマンドは、sample-instance-us-west-2a という名前の新しい MySQL 5.7 互換 Aurora レプリカを作成します。

Linux、macOS、Unix の場合:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a \ --db-cluster-identifier sample-cluster --engine aurora-mysql --db-instance-class db.r5.large \ --availability-zone us-west-2a

Windows の場合:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a ^ --db-cluster-identifier sample-cluster --engine aurora --db-instance-class db.r5.large ^ --availability-zone us-west-2a

次のコマンドは sample-instance-us-west-2a という名前の新しい PostgreSQL 互換 Aurora レプリカを作成します。

Linux、macOS、Unix の場合:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a \ --db-cluster-identifier sample-cluster --engine aurora-postgresql --db-instance-class db.r5.large \ --availability-zone us-west-2a

Windows の場合:

aws rds create-db-instance --db-instance-identifier sample-instance-us-west-2a ^ --db-cluster-identifier sample-cluster --engine aurora-postgresql --db-instance-class db.r5.large ^ --availability-zone us-west-2a

DB クラスターに Aurora レプリカを作成するには、CreateDBInstance オペレーションを呼び出します。DBClusterIdentifier パラメータとして DB クラスターの名前を含めます。オプションで、AvailabilityZone パラメータを使用して Aurora レプリカのアベイラビリティーゾーンを指定できます。