Amazon Aurora グローバルデータベースの開始方法 - Amazon Aurora

Amazon Aurora グローバルデータベースの開始方法

Aurora グローバルデータベースの使用を開始するには、まず、使用する Aurora DB エンジンと AWS リージョンを決定します。Aurora グローバルデータベースをサポートしているのは、特定の AWS リージョンにある Aurora MySQL と Aurora PostgreSQL のデータベースエンジンの、特定のバージョンのみです。完全なリストについては、「Aurora グローバルデータベース」を参照してください。

Aurora グローバルデータベースは、次のいずれかの方法で作成できます。

  • 新しい Aurora DB クラスターと Aurora DB インスタンスを使用して新しい Aurora グローバルデータベースを作成する – これを行うには、Amazon Aurora グローバルデータベースの作成 の手順とおりに進めてください。プライマリ Aurora DB クラスターを作成した後、「Amazon Aurora リージョンを AWS グローバルデータベースに追加する」のステップに従ってセカンダリ AWS リージョンを追加します。

  • Aurora グローバルデータベース機能をサポートする既存の Aurora DB クラスターを使用し、それに AWS リージョンを追加する – 既存の Aurora DB クラスターが Aurora グローバルモードをサポートする DB エンジンバージョンを使用しているか、グローバル互換性がある場合にのみ実行できます。DB エンジンのバージョンの中には、このモードが明確であるものと、そうでないものがあります。

    Aurora DB クラスターが選択されたときに、AWS マネジメントコンソール で [Action (アクション)] で [Add region (リージョン選択)] を選択できるかどうかを確認します。可能であれば、その Aurora DB クラスターを Aurora グローバルクラスターに使用できます。詳細については、Amazon Aurora リージョンを AWS グローバルデータベースに追加する を参照してください。

Aurora グローバルデータベースを作成する前に、すべての構成要件を把握しておくことを推奨します。

Amazon Aurora グローバルデータベースの構成要件

Aurora グローバルデータベースは、2 つ以上の AWS リージョンにまたがっています。プライマリ AWS リージョンは、書き込み Aurora DB インスタンスが 1 つある Aurora DB クラスターをサポートします。セカンダリ AWS リージョンは、Aurora レプリカ全体で構成されている、読み取り専用の Aurora DB クラスターを実行します。1 つ以上のセカンダリ AWS リージョンが必要になりますが、Aurora グローバルデータベースはセカンダリ AWS リージョンを最大 5 つ持つことができます。この表は、Aurora グローバルデータベースで許容されている Aurora DB クラスター、Aurora DB インスタンス、Aurora レプリカの最大数をリスト化したものです。

説明 プライマリ AWS リージョン セカンダリ AWS リージョン

Aurora DB クラスター

1

5 (最大)

ライターインスタンス

1

0

読み取り専用インスタンス (Aurora レプリカ)、Aurora DB クラスターあたり

15 (最大数)

16 (総数)

読み取り専用インスタンス (最大許容数、指定されたセカンダリリージョンの実数)

15 - s

s = セカンダリ AWS リージョンの総数

Aurora グローバルデータベースを構成している Aurora DB クラスターには、以下の固有の要件があります。

  • DB インスタンスクラスの要件–Aurora グローバルデータベースには、メモリを大量に消費するアプリケーションに最適化された DB インスタンスクラスが必要です。使用できるのは、db.r4db.r5 の DB インスタンスクラスのみです。詳細については、「DB インスタンスクラス」を参照してください。

  • AWS リージョンの要件–Aurora グローバルデータベースには、1 つの Aurora リージョンに 1 つのプライマリ AWS DB クラスターと、別のリージョンに 1 つ以上のセカンダリ Aurora DB クラスターが必要です。セカンダリ (読み取り専用) Aurora DB クラスターは最大 5 つ作成できます。それぞれが異なるリージョンに存在していなければなりません。つまり、Aurora グローバルデータベースにある 2 つの Aurora DB クラスターを、同じ AWS リージョン内に置くことはできません。

  • 命名の要件–それぞれの Aurora DB クラスターで選ぶ名前は、すべての AWS リージョンを横断して一意でなければなりません。異なる Aurora DB クラスターに、たとえそれらが別のリージョンに置かれていたとしても、同じ名前を付けることはできません。

このセクションの手順を実行するには、AWS のアカウントが必要です。Amazon Aurora で作業を行うためのセットアップタスクを完了してください。詳細については、「Amazon Aurora の環境をセットアップする」をご参照ください。Aurora DB クラスターを作成するための他の準備手順も完了する必要があります。詳細については、「Amazon Aurora DB クラスターの作成」を参照してください。

Amazon Aurora グローバルデータベースの作成

場合によっては、グローバル互換性がある Aurora データベースエンジンを実行している既存の Aurora プロビジョニングされた DB クラスターがある場合があります。その場合は、別の AWS リージョンを追加して、Aurora グローバルデータベースを作成できます。これを行うには、「Amazon Aurora リージョンを AWS グローバルデータベースに追加する」を参照してください。

Aurora グローバルデータベースは、AWS マネジメントコンソール、AWS CLI、または RDS API を使用して、次のステップ通りに作成します。

Aurora グローバルデータベースの作成ステップは、Aurora グローバルデータベース機能をサポートしている AWS リージョンへのサインインから開始します。詳細な一覧については、「Aurora グローバルデータベース」を参照してください。

以下のステップの一環として、Aurora DB クラスターの Amazon VPC に基づいて Virtual Private Cloud (VPC) を選択します。独自の VPC を使用するには、事前に作成して、選択できるようにすることをお勧めします。同時に、関連するサブネットを作成し、必要に応じてサブネットグループとセキュリティグループを作成します。詳細については、「Amazon Aurora で使用する VPC を作成する方法」を参照してください。

Aurora DB クラスターの作成に関する全般情報については、「Amazon Aurora DB クラスターの作成」を参照してください。

Aurora グローバルデータベースを作成するには

  1. AWS マネジメントコンソールにサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. [データベースの作成] を選択します。[Create database (データベースの作成)] ページで、次の操作を行います。

    • データベースの作成方法として [標準作成」を選択します。([簡易作成] を選択しないでください)。

    • [エンジンオプション] セクションで、エンジンタイプとして [Amazon Aurora] を選択します。

      
            [データベースの作成] ページの [エンジン] オプションのスクリーンショット。

次に、MySQL と互換性がある Amazon AuroraPostgreSQL との互換性がある Amazon Aurora を選択し、以下のプロシージャに示すステップを実行して Aurora グローバルデータベースの作成を続けます。

Aurora MySQL を使用するグローバルデータベースの作成

以下のステップは、Aurora MySQL の 5.6.10a を除く、Aurora MySQL のすべてのバージョンに適用されます。Aurora グローバルデータベースに Aurora MySQL の 5.6.10a を使用する場合は、「Aurora グローバルデータベースでの Aurora MySQL 5.6.10a の使用」を参照してください。

Aurora MySQL を使用して Aurora グローバルデータベースを作成するには

[データベースの作成] ページ二記入します。

  1. [Engine options (エンジンオプション)] で、以下の項目を選択します。

    1. [Edition (エディション)] で MySQL と互換性がある Amazon Aurora を選択します。

    2. [Capacity type (キャパシティーのタイプ)] は、[Provisioned (プロビジョニング済み)] を選択します。

    3. [レプリケーション機能] は、デフォルトのままにします (single-master replication)。

    4. [Show versions that support the global database feature (グローバルデータベース機能をサポートしているバージョンの表示)] をオンにします。

    5. [バージョン] では、Aurora グローバルデータベースに使用する Aurora MySQL のバージョンを選択します。

      
                AuroraDB クラスターを作成するとき (Aurora グローバルデータベースの最初のフェーズ) の、エディション、キャパシティタイプ、レプリケーション機能、エンジンバージョン、バージョン選択のスクリーンショット。
  2. [テンプレート] では、[本番稼働] を選択します。あるいは、ユースケースに適していれば [Dev/Test (開発/テスト)] を選択することもできます。本番稼働環境では、開発/テストを使用しないでください。

  3. [設定] では、以下の操作を行います。

    1. DB クラスター識別子にわかりやすい名前を入力します。Aurora グローバルデータベースの作成が完了すると、プライマリ DB クラスターはこの名前で識別されます。

    2. DB インスタンスの admin ユーザーアカウント用に独自のパスワードを入力します。あるいは Aurora で生成します。[autogenerate a password (パスワードの自動生成)] をクリックすると、パスワードをコピーするためのオプションが表示されます。

      
                グローバルデータベースを作成する際の [設定] の選択項目のスクリーンショット。
  4. [DB インスタンスサイズ] では、db.r4db.r5、または別のメモリ最適化 DB インスタンスサイズを選択します。必要に応じて、[Include previous generation classes (以前の世代のクラスを含める)] を選択し、使用する DB インスタンスクラスを選択します。

  5. [Availability & durability (可用性と耐久性)] では、Aurora に、Aurora レプリカを異なるアベイラビリティーゾーン (AZ) に作成させるように、選択することを推奨します。Aurora レプリカをすぐに作成しないときは、後で作成する必要があります。

    
                可用性と耐久性のスクリーンショット。
  6. [接続] では、この DB インスタンスの仮想ネットワーク環境を定義している Amazon VPC に基づいた、Virtual Private Cloud (VPC) を選択します。既定値を選択すれば、この作業を簡略化することができます。

  7. [Database authentication (データベース認証)] の設定を完了します。このプロセスを簡略化するには、今すぐに [Password authentication (パスワード認証)] を選択して、AWS Identity and Access Management (IAM) のセットアップは後で行います。

  8. [追加設定] では、以下の操作を行います。

    1. [最初のデータベース名] に名前を入力して、このクラスターのプライマリ Aurora DB インスタンスを作成します。これは、Aurora プライマリ DB クラスターの書き込みノードです。

      使用するカスタムパラメータグループが既にある場合を除いて、DB クラスターパラメータグループおよび DB パラメータグループは、デフォルトを選択したままにします。

    2. [Enable backtrack (バックトラックを有効にする)] が選択されているときは選択を解除します。Aurora グローバルデータベースはバックトラックをサポートしていません。[Additional configuration (追加構成)] では、その他デフォルトの設定を受け入れて構いません。

  9. [データベースの作成] を選択します。

    Aurora が Aurora DB インスタンス、Aurora レプリカ、Aurora DB クラスターの作成プロセスを完了するまで、数分かかることがあります。Aurora DB クラスターが Aurora グローバルデータベースのプライマリ DB クラスターとして使用できる状態であるかは、ステータスによって確認できます。その場合は、次に示すように、ライタノードとレプリカノードの状態が [Available (使用可能)] になります。

    
                Auroraグローバルデータベースで利用できる Aurora DB クラスターがある、データベースのスクリーンショット。

プライマリ DB クラスターが利用可能になったら、セカンダリクラスターを追加して Aurora グローバルデータベースを作成します。そのためには、Amazon Aurora リージョンを AWS グローバルデータベースに追加する の手順を実行します。

Aurora グローバルデータベースでの Aurora MySQL 5.6.10a の使用

以下のステップが適用されるのは、Aurora MySQL の 5.6.10a バージョンのみです。Aurora MySQL の他のバージョンについては、「Aurora MySQL を使用するグローバルデータベースの作成」を参照してください。

Aurora MySQL 5.6.10a を使用して Aurora グローバルデータベースを作成するには

[データベースの作成] ページ二記入します。

  1. [Engine options (エンジンオプション)] で、以下の項目を選択します。

    1. [Edition (エディション)] で MySQL と互換性がある Amazon Aurora を選択します。

    2. [Capacity type (キャパシティーのタイプ)] は、[Provisioned (プロビジョニング済み)] を選択します。

    3. [レプリケーション機能] は、デフォルトのままにします (single-master replication)。

    4. [Show versions that support the global database feature (グローバルデータベース機能をサポートしているバージョンの表示)] をオンにします。

    5. [Version (バージョン)] で Aurora (MySQL 5.6) global_10a を選択します。

  2. [テンプレート] では、[本番稼働] を選択します。

  3. [グローバルデータベース設定] では、以下の操作を行います。

    1. [グローバルデータベース識別子] に、わかりやすい名前を入力します。

    2. [Credentials Settings (認証情報の設定)] では、DB インスタンスの postgres ユーザーアカウント用に独自のパスワードを入力します。あるいは Aurora で生成します。[パスワードの自動生成] を選択すると、パスワードをコピーするオプションが表示されます。

      
                          Auroraグローバルデータベースを作成するときの Aurora MySQL 5.6.10a エンジンオプションのスクリーンショット。
  4. [Encryption (暗号化)] では、必要に応じて暗号化を有効または無効にします。

  5. [Create database (データベースの作成)] ページの残りのセクションでは、[Primary region settings (プライマリリージョンの設定)] を設定します。これらは以下の手順で行います。

    1. [DB インスタンスサイズ] では、db.r4db.r5、または別のメモリ最適化 DB インスタンスサイズを選択します。必要に応じて、[以前の世代のクラスを含める] を選択し、使用する DB インスタンスクラスを選択します。

      
                            [データベースの作成] ページの Aurora MySQL 5.6.10a プライマリリージョン設定セクションのスクリーンショット。
    2. [可用性と耐久性] では、Aurora に、Aurora レプリカを異なる AZ に作成させるように、選択することを推奨します。Aurora レプリカをすぐに作成しないときは、後で作成する必要があります。

    3. [接続] で、この DB インスタンスの仮想ネットワーク環境が定義されている Amazon VPC に基づき、Virtual Private Cloud (VPC) を選択します。デフォルトを選択するとこのタスクを簡略化できます。

    4. [暗号化キー] では、使用するキーを選択します。以前に [Encryption (暗号化)] を選択しなかった場合は、このオプションを無視してください。

    5. [Database authentication (データベース認証)] の設定を完了します。このプロセスを簡略化するには、今すぐに [Password authentication (パスワード認証)] を選択して、IAM のセットアップは後で行います。

    6. [追加設定] では、以下の操作を行います。

      1. [DB インスタンス識別子] では、データベースインスタンスの名前を入力するか、デフォルトの名前を使用します。これは、この Aurora グローバルデータベースの、Aurora プライマリ DB クラスターのライターインスタンスです。

      2. [DB クラスター識別子] には、わかりやすい名前を入力するか、デフォルトの名前を使用します。

      3. 使用するカスタムパラメータグループが既にある場合を除いて、DB クラスターパラメータグループおよび DB パラメータグループは、デフォルトを選択したままにします。

      4. [追加構成] では、その他すべてでデフォルトの設定を受け入れて構いません。

    7. [データベースの作成] を選択します。

      Aurora が Aurora DB インスタンス、Aurora レプリカ、Aurora DB クラスターの作成プロセスを完了するまで、数分かかることがあります。Aurora DB クラスターが Aurora グローバルデータベースのプライマリ DB クラスターとして使用できる状態であるかは、ステータスによって確認できます。その場合は、次に示すように、ライタノードとレプリカノードの状態が [Available (使用可能)] になります。

      
                               1 つのプライマリ DB クラスターを持つ、Aurora MySQL5.6.10a– ベースの Aurora グローバルデータベースのスクリーンショット。

この Aurora グローバルデータベースには、引き続きセカンダリ Aurora DB クラスターが必要です。「Amazon Aurora リージョンを AWS グローバルデータベースに追加する」のステップに従って、今すぐに追加できます。

Aurora PostgreSQL を使用するグローバルデータベースの作成

Aurora PostgreSQL を使用して Aurora グローバルデータベースを作成するには

[データベースの作成] ページ二記入します。

  1. [Engine options (エンジンオプション)] で、以下の項目を選択します。

    1. [Edition (エディション)] で PostgreSQL との互換性がある Amazon Aurora を選択します。

    2. [Capacity type (キャパシティーのタイプ)] は、[Provisioned (プロビジョニング済み)] を選択します。

    3. [Show versions that support the global database feature (グローバルデータベース機能をサポートしているバージョンの表示)] をオンにします。

    4. [バージョン] では、Aurora グローバルデータベースに使用する Aurora PostgreSQL のバージョンを選択します。

      
                  AuroraDB クラスターを作成するとき (Aurora グローバルデータベースの最初のフェーズ) の、エディション、キャパシティタイプ、レプリケーション機能、エンジンバージョン、バージョン選択のスクリーンショット。
  2. [テンプレート] では、[本番稼働] を選択します。または、必要に応じて [Dev/Test (開発/テスト)] を選択することもできます。本番稼働環境では、開発/テストを使用しないでください。

  3. [設定] では、以下の操作を行います。

    1. DB クラスター識別子にわかりやすい名前を入力します。Aurora グローバルデータベースの作成が完了すると、プライマリ DB クラスターはこの名前で識別されます。

    2. DB クラスターのデフォルト管理アカウント用に自分のパスワードを入力します。あるいは Aurora で生成します。[パスワードの自動生成] を選択すると、パスワードをコピーするオプションが表示されます。

      
                  グローバルデータベースを作成する際の [設定] の選択項目のスクリーンショット。
  4. [DB インスタンスサイズ] では、db.r4db.r5、または別のメモリ最適化 DB インスタンスサイズを選択します。必要に応じて、[Include previous generation classes (以前の世代のクラスを含める)] を選択し、使用する DB インスタンスクラスを選択します。

    
              DB インスタンスサイズのスクリーンショット。
  5. [可用性と耐久性] では、Aurora に、Aurora レプリカを異なる AZ に作成させるように、選択することを推奨します。Aurora レプリカをすぐに作成しないときは、後で作成する必要があります。

  6. [接続] で、この DB インスタンスの仮想ネットワーク環境が定義されている Amazon VPC に基づき、Virtual Private Cloud (VPC) を選択します。既定値を選択すれば、この作業を簡略化することができます。

  7. [Database authentication (データベース認証)] の設定を完了します。このプロセスを簡略化するには、今すぐに [Password authentication (パスワード認証)] を選択して、IAM またはパスワードと Kerberos 認証のセットアップは後で行います。

  8. [追加設定] では、以下の操作を行います。

    1. [最初のデータベース名] に名前を入力して、このクラスターのプライマリ Aurora DB インスタンスを作成します。これは、Aurora プライマリ DB クラスターの書き込みノードです。

      使用するカスタムパラメータグループが既にある場合を除いて、DB クラスターパラメータグループおよび DB パラメータグループは、デフォルトを選択したままにします。

    2. [Additional configuration (追加構成)] では、モニタリング、ログのエクスポートなどその他すべてでデフォルトの設定を受け入れて構いません。

  9. [データベースの作成] を選択します。

    Aurora が Aurora DB インスタンス、Aurora レプリカ、Aurora DB クラスターの作成プロセスを完了するまで、数分かかることがあります。クラスターを使用する準備が整うと、Aurora DB クラスターと、書き込みおよびレプリカのノードは、すべて [Available (利用可能)] ステータスで表示されます。セカンダリを追加すると、これは Aurora グローバルデータベースのプライマリ DB クラスターになります。

    
              Auroraグローバルデータベースで利用できる Aurora DB クラスターがある、データベースのスクリーンショット。

プライマリ DB クラスターが作成されて利用可能になったら、「Amazon Aurora リージョンを AWS グローバルデータベースに追加する」のステップに従ってセカンダリクラスターを 1 つまたは複数作成します。

次の手順の AWS CLI コマンドで、次のタスクを実行します。

  1. Aurora グローバルデータベースを作成し、名前を指定して、使用する Aurora データベースエンジンのタイプを指定します。

  2. Aurora グローバルデータベースの Aurora DB クラスターを作成します。

  3. クラスターの Aurora DB インスタンスを作成します。

  4. Aurora DB クラスターの Aurora DB インスタンスを作成します。

  5. Aurora DB クラスターのセカンダリ DB インスタンスを作成します。これは、Aurora DB クラスターを完了するためのリーダーです。

  6. 別のリージョンにセカンダリ Aurora DB クラスターを作成し、「Amazon Aurora リージョンを AWS グローバルデータベースに追加する」のステップに従って Aurora グローバルデータベースに追加します。

Aurora データベースエンジンの手順に従います。

Aurora MySQL を使用するグローバルデータベースの作成

Aurora MySQL を使用して Aurora グローバルデータベースを作成するには

  1. create-global-clusterCLI コマンドを使用して、AWS リージョン、Aurora データベースエンジンとバージョンの名前を渡します。使用する Aurora MySQL のバージョンの表に示されてる中から、パラメータを選択します。

    Aurora MySQL の他のオプションは、以下の表に示すとおり、Aurora MySQL データベースエンジンのバージョンに応じて異なります。

    Parameter Aurora MySQL 5.6.10a Aurora MySQL 5.7
    --engine

    aurora

    aurora-mysql

    --engine-mode

    グローバル

    -

    --engine-version

    5.6.10a, 5.6.mysql_aurora.1.22.0, 5.6.mysql_aurora.1.22.1, 5.6.mysql_aurora.1.22.2, 5.6.mysql_aurora.1.22.3, 5.6.mysql_aurora.1.23.0, 5.6.mysql_aurora.1.23.1, およびそれ以降のバージョン

    5.7.mysql_aurora.2.07.0, 5.7.mysql_aurora.2.07.1, 5.7.mysql_aurora.2.07.2, 5.7.mysql_aurora.2.07.3, 5.7.mysql_aurora.2.08.0, 5.7.mysql_aurora.2.08.1, 5.7.mysql_aurora.2.08.1, 5.7.mysql_aurora.2.08.3, 5.7.mysql_aurora.2.09.0, 5.7.mysql_aurora.2.08.1, およびそれ以降のバージョン

    Linux、macOS、Unix の場合:

    aws rds create-global-cluster --region primary_region \ --global-cluster-identifier global_database_id \ --engine aurora \ --engine-version version # optional

    Windows の場合:

    aws rds create-global-cluster ^ --global-cluster-identifier global_database_id ^ --engine aurora ^ --engine-version version # optional

    これにより、名前 (識別子) と Aurora データベースエンジンだけの、「空の」Aurora グローバルデータベースが作成されます。Aurora グローバルデータベースが利用できるようになるまで、数分かかります。次のステップに進む前に、describe-global-clusters CLI コマンドを使用して利用可能かどうかを確認します。

    aws rds describe-global-clusters --region primary_region --global-cluster-identifier global_database_id

    Aurora グローバルデータベースが利用可能になったら、プライマリ Aurora DB クラスターを作成できます。

  2. プライマリ Aurora DB クラスターを作成するときは、create-db-cluster CLI コマンドを使用します。--global-cluster-identifier を使用して、Aurora グローバルデータベースの名前を加えます。

    Linux、macOS、Unix の場合:

    aws rds create-db-cluster \ --region primary_region \ --db-cluster-identifier db_cluster_id \ --master-username userid \ --master-user-password password \ --engine { aurora | aurora-mysql } \ --engine-mode global # Required for --engine-version 5.6.10a only \ --engine-version version \ --global-cluster-identifier global_database_id

    Windows の場合:

    aws rds create-db-cluster ^ --region primary_region ^ --db-cluster-identifier db_cluster_id ^ --master-username userid ^ --master-user-password password ^ --engine { aurora | aurora-mysql } ^ --engine-mode global # Required for --engine-version 5.6.10a only ^ --engine-version version ^ --global-cluster-identifier global_database_id

    Aurora MySQL の他のオプションは、Aurora MySQL データベースエンジンのバージョンに応じて異なります。

    describe-db-clustersAWS CLI コマンドを使用して、Aurora DB クラスターの準備が整ったことを確認します。特定の Aurora DB クラスターを選ぶときは、--db-cluster-identifier パラメータを使用します。あるいは、Aurora DB クラスターの名前をコマンドで除外すると、指定されたリージョンにあるすべての Aurora DB クラスターの詳細を取得できます。

    aws rds describe-db-clusters --region primary_region --db-cluster-identifier db_cluster_id

    レスポンスがクラスターに対して "Status": "available" と表示されたら利用できます。

  3. プライマリ Aurora DB クラスターに DB インスタンスを作成します。これを行うには、create-db-instance CLI コマンドを使用します。コマンドに Aurora DB クラスターの名前を指定し、インスタンスの設定の詳細を指定します。コマンドは --master-username--master-user-password のパラメータを Aurora DB クラスターから取得するので、それらをコマンドに渡す必要はありません。

    Linux、macOS、Unix の場合:

    aws rds create-db-instance \ --db-cluster-identifier db_cluster_id \ --db-instance-class instance_class \ --db-instance-identifier db_instance_id \ --engine { aurora | aurora-mysql} \ --engine-mode global # Required for --engine-version 5.6.10a only \ --engine-version version \ --region primary_region

    Windows の場合:

    aws rds create-db-instance ^ --db-cluster-identifier db_cluster_id ^ --db-instance-class instance_class ^ --db-instance-identifier db_instance_id ^ --engine { aurora | aurora-mysql } ^ --engine-mode global # Required for --engine-version 5.6.10a only ^ --engine-version version ^ --region primary_region

    --db-instance-class では、db.r4db.r5 のクラスのクラスターのみ (db.r4.large など) を使用します。詳細については、「DB インスタンスクラス」を参照してください。

    このコマンドは完了するまで時間がかかる場合があります。次に進む前に、ステータスをチェックして Aurora DB インスタンスが利用可能かどうかを確認します。

    aws rds describe-db-clusters --db-cluster-identifier sample_secondary_db_cluster

    コマンドが「利用可能」のステータスを返したら、プライマリ DB クラスターに新たな Aurora DB インスタンスを作成できます。これは、Aurora DB クラスターのリーダーインスタンス (Aurora レプリカ) です。

  4. クラスターに別の Aurora DB インスタンスを作成するときは、create-db-instance CLI コマンドを使用します。

    Linux、macOS、Unix の場合:

    aws rds create-db-instance \ --db-cluster-identifier sample_secondary_db_cluster \ --db-instance-class instance_class \ --db-instance-identifier sample_replica_db \ --engine aurora

    Windows の場合:

    aws rds create-db-instance ^ --db-cluster-identifier sample_secondary_db_cluster ^ --db-instance-class instance_class ^ --db-instance-identifier sample_replica_db ^ --engine aurora

DB インスタンスが利用可能になると、書き込みノードからレプリカへのレプリケーションが開始されます。次に進む前に、DB インスタンスが利用可能かどうかを describe-db-instances CLI コマンドを使用して確認します。

この時点で、書き込み DB インスタンスと Aurora レプリカを含むプライマリ Aurora DB クラスターを備えた、Aurora グローバルデータベースがあります。ここで別のリージョンに読み取り専用の Aurora DB クラスターを追加し、Aurora グローバルデータベースを完成させます。これを行うには、「Amazon Aurora リージョンを AWS グローバルデータベースに追加する」の手順に従います。

Aurora PostgreSQL を使用するグローバルデータベースの作成

次のコマンドを使用して Aurora グローバルデータベースの Aurora オブジェクトを作成する場合、各データベースが使用可能になるまでに数分かかる場合があります。任意のコマンドを完了した後、特定の Aurora オブジェクトのステータスをチェックして、ステータスが使用可能であることを確認します。

これを行うには、describe-global-clusters CLI コマンドを使用します。

aws rds describe-global-clusters --region primary_region --global-cluster-identifier global_database_id

Aurora PostgreSQL を使用して Aurora グローバルデータベースを作成するには

  1. create-global-cluster CLI コマンドを使用します。

    Linux、macOS、Unix の場合:

    aws rds create-global-cluster --region primary_region \ --global-cluster-identifier global_database_id \ --engine aurora-postgresql \ --engine-version version # optional

    Windows の場合:

    aws rds create-global-cluster ^ --global-cluster-identifier global_database_id ^ --engine aurora-postgresql ^ --engine-version version # optional

    Aurora グローバルデータベースが利用可能になったら、プライマリ Aurora DB クラスターを作成できます。

  2. プライマリ Aurora DB クラスターを作成するときは、create-db-cluster CLI コマンドを使用します。--global-cluster-identifier を使用して、Aurora グローバルデータベースの名前を加えます。

    Linux、macOS、Unix の場合:

    aws rds create-db-cluster \ --region primary_region \ --db-cluster-identifier db_cluster_id \ --master-username userid \ --master-user-password password \ --engine aurora-postgresql \ --engine-version version \ --global-cluster-identifier global_database_id

    Windows の場合:

    aws rds create-db-cluster ^ --region primary_region ^ --db-cluster-identifier db_cluster_id ^ --master-username userid ^ --master-user-password password ^ --engine aurora-postgresql ^ --engine-version version ^ --global-cluster-identifier global_database_id

    Aurora DB クラスターの準備が整っていることを確認します。以下のコマンドからのレスポンスが Aurora DB クラスターに対して "Status": "available" と表示されたら、次へ進めます。

    aws rds describe-db-clusters --region primary_region --db-cluster-identifier db_cluster_id
  3. プライマリ Aurora DB クラスターに DB インスタンスを作成します。これを行うには、create-db-instance CLI コマンドを使用します。

    1. Aurora DB クラスターの名前を --db-instance-identifier パラメータに渡します。

      コマンドは --master-username--master-user-password のパラメータを Aurora DB クラスターから取得するので、それらをコマンドに渡す必要はありません。

      --db-instance-class では、db.r4db.r5 のみ (db.r4.large など) を使用します。詳細については、「DB インスタンスクラス」を参照してください。

      Linux、macOS、Unix の場合:

      aws rds create-db-instance \ --db-cluster-identifier db_cluster_id \ --db-instance-class instance_class \ --db-instance-identifier db_instance_id \ --engine aurora-postgresql \ --engine-version version \ --region primary_region

      Windows の場合:

      aws rds create-db-instance ^ --db-cluster-identifier db_cluster_id ^ --db-instance-class instance_class ^ --db-instance-identifier db_instance_id ^ --engine aurora-postgresql ^ --engine-version version ^ --region primary_region
  4. 次に進む前に、Aurora DB インスタンスのステータスを確認します。

    aws rds describe-db-clusters --db-cluster-identifier sample_secondary_db_cluster

    レスポンスで、Aurora DB インスタンスのステータスが「利用可能」と表示されていたら、プライマリ DB クラスターに新たな Aurora DB インスタンスを作成できます。

  5. Aurora DB クラスターの Aurora レプリカを作成するときは、create-db-instance CLI コマンドを使用します。

    Linux、macOS、Unix の場合:

    aws rds create-db-instance \ --db-cluster-identifier sample_secondary_db_cluster \ --db-instance-class instance_class \ --db-instance-identifier sample_replica_db \ --engine aurora-postgresql

    Windows の場合:

    aws rds create-db-instance ^ --db-cluster-identifier sample_secondary_db_cluster ^ --db-instance-class instance_class ^ --db-instance-identifier sample_replica_db ^ --engine aurora-postgresql

DB インスタンスが利用可能になると、書き込みノードからレプリカへのレプリケーションが開始されます。次に進む前に、DB インスタンスが利用可能かどうかを describe-db-instances CLI コマンドを使用して確認します。

Aurora グローバルデータベースがありますが、その中にあるのは、書き込み DB インスタンスと Aurora レプリカで構成された Aurora DB クラスターを持つ、プライマリリージョンのみです。ここで別のリージョンに読み取り専用の Aurora DB クラスターを追加し、Aurora グローバルデータベースを完成させます。これを行うには、「Amazon Aurora リージョンを AWS グローバルデータベースに追加する」の手順に従います。

RDS API を使用して Aurora グローバルデータベースを作成するには、CreateGlobalCluster オペレーションを実行します。

Amazon Aurora リージョンを AWS グローバルデータベースに追加する

Aurora グローバルデータベースには、プライマリ Aurora DB クラスターのほかに、異なる AWS リージョンに 1 つ以上のセカンダリ Aurora DB クラスターが必要です。Aurora グローバルデータベースには、最大 5 つのセカンダリ DB クラスターをアタッチできます。Aurora グローバルデータベースに追加する各セカンダリ DB クラスターで、プライマリ DB クラスターに許容された Aurora レプリカの数を、1 つずつ減らします。

例えば、Aurora グローバルデータベースに 5 つのセカンダリリージョンがある場合、プライマリ DB クラスターが持てるレプリカの数は 10 です (15 ではなく)。詳細については、「Amazon Aurora グローバルデータベースの構成要件」をご参照ください。

プライマリクラスターにあるリーダーインスタンスとすべてのセカンダリクラスターにあるリーダーインスタンスの合計が 15 の場合、Aurora グローバルデータベースにセカンダリクラスターを追加できません。

Aurora グローバルデータベースに AWS リージョンを追加するには

  1. AWS マネジメントコンソールにサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. AWS マネジメントコンソール のナビゲーションペインで、[データベース] を選択します。

  3. セカンダリ Aurora DB クラスターを必要とする Aurora グローバルデータベースを選択します。プライマリ Aurora DB クラスターが Available であることを確認します。

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

    
                 [アクション] メニューから [リージョンの追加] が選択された、プロビジョンド DB クラスターのスクリーンショット。
  5. [リージョンの追加] ページで、セカンダリ AWS リージョンを選択します。

    同じ Aurora グローバルデータベースのセカンダリ Aurora DB クラスターがすでに存在する AWS リージョンを選択することはできません。また、プライマリ Aurora DB クラスターと同じリージョンにすることはできません。

    
                  Aurora グローバルデータベースの [リージョンの追加] ペインのスクリーンショット。
  6. 新しい AWS リージョンのセカンダリ Aurora クラスターの残りのフィールドに入力してください。これらは、Aurora DB クラスターインスタンスと同じ設定オプションですが、以下のオプションは Aurora MySQL – ベースの Aurora グローバルデータベースにのみ適用されます。

  7. リージョンを追加します。

Aurora グローバルデータベースにリージョンを追加すると、スクリーンショットのように、AWS マネジメントコンソール のデータベースのリストに表示されます。


            セカンダリクラスターが Aurora グローバルデータベースに追加されたことを示すスクリーンショット。

セカンダリ AWS リージョンを Aurora グローバルデータベースに追加するには

  1. Aurora グローバルデータベースの名前 (--global-cluster-identifier) を指定して、create-db-cluster CLI コマンドを使用します。他のパラメータでは、以下の操作を行います。

  2. --region では、Aurora プライマリリージョンのものとは異なる AWS リージョンを選択します。

  3. 次のいずれかを行ってください。

    • Aurora MySQL5.6.10a のみに基づく Aurora グローバルデータベースの場合は、次のパラメータを使用します。

      • --engineaurora

      • --engine-modeglobal

      • --engine-version5.6.10a

    • 他の Aurora DB エンジンに基づく Aurora グローバルデータベースの場合は、--engine および --engine-version パラメータに特定の値を選択します。これらの値は、Aurora グローバルデータベースのプライマリ Aurora DB クラスターの値と同じです。

      次の表に、現在のオプションを示します。

      Parameter Aurora MySQL 5.6 Aurora MySQL 5.7 Aurora PostgreSQL

      --engine

      aurora

      aurora-mysql

      aurora-postgresql

      --engine-version

      5.6.mysql_aurora.1.22.0, 5.6.mysql_aurora.1.22.1, 5.6.mysql_aurora.1.22.2, 5.6.mysql_aurora.1.22.3, 5.6.mysql_aurora.1.23.0, 5.6.mysql_aurora.1.23.1

      5.7.mysql_aurora.2.07.0、5.7.mysql_aurora.2.07.1、5.7.mysql_aurora.2.07.2、5.7.mysql_aurora.2.07.3、5.7.mysql_aurora.2.08.0、5.7.mysql_aurora.2.08.1、5.7.mysql_aurora.2.08.2、5.7.mysql_aurora.2.08.3、5.7.mysql_aurora.2.09.0 (以降)

      10.11 (以降)、11.7 (以降)、12.4 (以降)

  4. 暗号化されたクラスターの場合は、暗号化の --source-region としてプライマリ AWS リージョンを指定します。

次の例では、新しい Aurora DB クラスターを作成し、それを読み取り専用のセカンダリ Aurora DB クラスターとして Aurora グローバルデータベースにアタッチします。最後のステップでは、Aurora DB インスタンスを新しい Aurora DB クラスターに追加します。

Linux、macOS、Unix の場合:

aws rds --region secondary_region \ create-db-cluster \ --db-cluster-identifier secondary_cluster_id \ --global-cluster-identifier global_database_id \ --engine { aurora | aurora-mysql | aurora-postgresql } --engine-version version aws rds --region secondary_region \ create-db-instance \ --db-instance-class instance_class \ --db-cluster-identifier secondary_cluster_id \ --db-instance-identifier db_instance_id \ --engine { aurora | aurora-mysql | aurora-postgresql }

Windows の場合:

aws rds --region secondary_region ^ create-db-cluster ^ --db-cluster-identifier secondary_cluster_id ^ --global-cluster-identifier global_database_id_id ^ --engine { aurora | aurora-mysql | aurora-postgresql } ^ --engine-version version aws rds --region secondary_region ^ create-db-instance ^ --db-instance-class instance_class ^ --db-cluster-identifier secondary_cluster_id ^ --db-instance-identifier db_instance_id ^ --engine { aurora | aurora-mysql | aurora-postgresql }

RDS API を使用して新しい AWS リージョンを Aurora グローバルデータベースに追加するには、CreateDBCluster オペレーションを実行します。GlobalClusterIdentifier パラメータを使用して、既存のグローバルデータベースの識別子を指定します。

セカンダリリージョンでのヘッドレス Aurora DB クラスターの作成

Aurora グローバルデータベースでは、プライマリとは異なる AWS リージョンに少なくとも 1 つのセカンダリ Aurora DB クラスターが必要です。セカンダリクラスターにはヘッドレス構成を使用できます。ヘッドレスセカンダリ Aurora DB クラスターは、Reader DB インスタンスがないクラスターのことです。この種類の構成では、Aurora グローバルデータベースの費用を削減できます。Aurora DB クラスターでは、コンピューティングとストレージは分離されています。DB インスタンスがない場合、コンピューティングに対する課金は発生せず、ストレージに対してのみが課金されます。正しく設定されていれば、ヘッドレスセカンダリのストレージボリュームはプライマリ Aurora DB クラスターと同期したままになります。

セカンダリクラスターを追加して、通常、Aurora グローバルデータベースの作成時に行うようにします。ただし、プライマリ Aurora DB クラスターがセカンダリへのレプリケーションを開始した後、セカンダリ Aurora DB クラスターから Aurora DB (読み取り専用インスタンス) を削除します。読み取りインスタンスが存在しなくなったため、このセカンダリクラスターは「ヘッドレス」と見なされます。ただし、ストレージボリュームはプライマリ Aurora DB クラスターと同期されます。

警告

プライマリが最初のレプリケーションプロセスを完了するまで、セカンダリ Aurora DB クラスターから読み取り専用インスタンスを削除しないでください。

ヘッドレスセカンダリ Aurora DB クラスターを Aurora グローバルデータベースに追加するには

  1. AWS マネジメントコンソールにサインインし、Amazon RDS コンソール (https://console.aws.amazon.com/rds/) を開きます。

  2. AWS マネジメントコンソール のナビゲーションペインで、[データベース] を選択します。

  3. セカンダリ Aurora DB クラスターを必要とする Aurora グローバルデータベースを選択します。プライマリ Aurora DB クラスターが Available であることを確認します。

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

  5. [リージョンの追加] ページで、セカンダリ AWS リージョンを選択します。

    同じ Aurora グローバルデータベースのセカンダリ Aurora DB クラスターがすでに存在する AWS リージョンを選択することはできません。また、プライマリ Aurora DB クラスターと同じリージョンにすることはできません。

  6. 新しい AWS リージョンのセカンダリ Aurora クラスターの残りのフィールドに入力してください。これらは、任意の Aurora DB クラスターインスタンスと同じ設定オプションです。

    Aurora MySQL – ベースの Aurora グローバルデータベースの場合、[Enable read replica write forwarding (リードレプリカの書き込み転送を有効にする)] オプションを無視します。リーダーインスタンスを削除した後は、このオプションは機能しません。

  7. リージョンを追加します。Aurora グローバルデータベースにリージョンを追加すると、スクリーンショットのように、AWS マネジメントコンソール のデータベースのリストに表示されます。

    
            リーダーインスタンスを持つセカンダリクラスターを示すスクリーンショットは、Aurora グローバルデータベースの一部になりました。
  8. 続行する前に、AWS マネジメントコンソール または AWS CLI を使用して、セカンダリ Aurora DB クラスターとその Reader インスタンスのステータスを確認します。次に例を示します。

    $ aws rds describe-db-clusters --db-cluster-id secondary-cluster-id --query '*[].[Status]' --output text

    新しく追加されたセカンダリ Aurora DB クラスターのステータスが [creating (作成中)] から [available (使用可能)] に変わるまでに数分かかる場合があります。 Aurora DB クラスターが使用可能になったら、Reader インスタンスを削除できます。

  9. セカンダリ Aurora DB クラスターで Reader インスタンスを選択し、[ Delete (削除)] をクリックします。

    
              Reader インスタンスが選択され、削除できる状態になったことを示すスクリーンショット。

Reader インスタンスを削除しても、セカンダリクラスターは Aurora グローバルデータベースの一部にとどまります。以下に示すように、インスタンスに関連付けられていません。


        ヘッドレスセカンダリ DB クラスターを示すスクリーンショット。

このような停止が発生した場合、このヘッドレスセカンダリ Aurora DB クラスターを使用して、プライマリ AWS リージョンの予期しない停止から Amazon Aurora グローバルデータベースを手動で回復できます。

Amazon Aurora グローバルデータベースのスナップショットの使用

Aurora DB クラスターのスナップショットを復元するか、Amazon RDS DB インスタンスからスナップショットを復元することで、Aurora グローバルデータベースの開始点として使用することができます。スナップショットを復元し、新しい Aurora プロビジョンド DB クラスターを同時に作成します。次に、復元した DB クラスターに AWS 別のリージョンを追加して、それを Aurora グローバルデータベースに変換します。この方法でスナップショットを使って作成された Aurora DB クラスターは、すべて Aurora グローバルデータベースのプライマリクラスターになります。

使用するスナップショットは、provisionedserverlessAurora DB クラスターから取得できます。

注記

プロビジョンド Aurora DB クラスターは、Aurora MySQL 5.6.10a – ベースのグローバルデータベースから作成されたスナップショットから、作成することはできません。Aurora MySQL 5.6.10a – ベースのグローバルデータベースから作成されたスナップショットは、Aurora グローバルデータベースとしてのみ復元が可能です。

復元プロセス中は、スナップショットと同じ DB エンジンタイプを選択します。たとえば、Aurora PostgreSQL を実行している Aurora Serverless v1 DB クラスターから作成されたスナップショットを復元するとします。この場合、同じ Aurora DB エンジンとバージョンを使用して Aurora PostgreSQL DB クラスターを作成します。

復元された DB クラスターは、Aurora リージョンを追加するときに、AWS グローバルデータベースのプライマリクラスターのロールを引き継ぎます。このプライマリクラスターに含まれるすべてのデータは、Aurora グローバルデータベースに追加したセカンダリクラスターにレプリケートされます。


            Aurora グローバルデータベースの [スナップショットの復元] ページを示すスクリーンショット。