クイックスタートガイド: グローバルクラスター
設定
Amazon DocumentDB グローバルクラスターは、少なくとも 2 つの AWS リージョン にまたがっています。プライマリリージョンは、1 つのプライマリ (ライター) インスタンスと最大 15 個のレプリカインスタンスを持つクラスターをサポートします。セカンダリリージョンでは、最大 16 個のレプリカインスタンスで構成される読み取り専用クラスターが実行されます。グローバルクラスターには、最大 5 つのセカンダリリージョンを設定することできます。この表は、グローバルクラスターで許容されているクラスター、インスタンス、レプリカの最大数をリスト化したものです。
| 説明 | プライマリ AWS リージョン | セカンダリ AWS リージョン |
|---|---|---|
| クラスター | 1 | 5 (最大) |
| ライターインスタンス | 1 | 0 |
| 読み取り専用インスタンス (Amazon DocumentDB レプリカ)、クラスターごと | 15 (最大数) | 16 (総数) |
| 読み取り専用インスタンス (最大許容数、指定されたセカンダリリージョンの実数) | 15 - s | s = セカンダリ AWS リージョン の総数 |
クラスターには、以下の固有の要件があります。
-
データベースインスタンスクラスの要件 — 使用できるのは
db.r5とdb.r6gインスタンスクラスのみです。 -
AWS リージョン 要件 — プライマリクラスターは 1 つのリージョンに存在し、少なくとも 1 つのセカンダリクラスターが同じアカウントの別のリージョンに存在する必要があります。セカンダリ (読み取り専用) クラスターは最大 5 つ作成できます。それぞれが異なるリージョンに存在していなければなりません。つまり、2 つのクラスターを、同じリージョン内に置くことはできません。
-
命名の要件 - それぞれのクラスターで選ぶ名前は、すべてのリージョンにおいて一意でなければなりません。異なるクラスターに、たとえそれらが別のリージョンに置かれていたとしても、同じ名前を付けることはできません。
Amazon DocumentDB グローバルクラスターの作成
最初のグローバルクラスターを構築する準備はできていますか。このセクションでは、以下の手順を AWS マネジメントコンソール または AWS CLI を使用して、新しいデータベースクラスターとインスタンスを使用してまったく新しいグローバルクラスターを作成する方法について説明します。
-
AWS マネジメントコンソール で、Amazon DocumentDB に移動します。
-
Amazon DocumentDB コンソールにアクセスしたら、[クラスター] を選択します。
-
[作成] を選択します。
-
Amazon DocumentDB クラスター のフォームの [設定] セクションをそれぞれに応じて入力します。
-
クラスター識別子: このインスタンスの一意の識別子を入力するか、クラスター識別子に基づき Amazon DocumentDB でインスタンスを指定できるようにします。
-
エンジンバージョン: [4.0.0] を選択します。
-
インスタンスクラス: [db.r5.large] を選択します。
-
インスタンス数: [3] を選択します。
-
-
[認証] セクションで、マスターユーザーネームとマスターパスワードを入力します。
-
[詳細設定を表示] を選択します。
-
[ネットワーク設定] セクションで以下の操作を行います。
-
仮想プライベートクラウド (VPC) と サブネットグループ のデフォルトオプションを保持します。
-
VPC セキュリティグループ では、デフォルト VPC は既に追加されている必要があります。
-
[VPC セキュリティグループ] フィールドに
DocDBを入力し、[DocDB-Inbound (VPC)] を選択します。
-
-
クラスターオプション と 保管時の暗号化 では、デフォルトの選択のままにします。
-
バックアップ と ログのエクスポート では、デフォルトの選択のままにします。
-
メンテナンス、タグ、および 削除保護 では、デフォルトの選択のままにします。
-
次に、[クラスターの作成] というボタンをクリックしてください。
Amazon DocumentDB リージョナルクラスターを作成するには、create-global-cluster AWS CLIglobal-cluster-id という名前の Amazon DocumentDB クラスターを作成します。削除に対する保護についての詳細は、「Amazon DocumentDB クラスターの削除」を参照してください。
また、--engine-version はデフォルトで最新のメジャーエンジンバージョンとなるオプションのパラメータです。現在のメジャーエンジンバージョンは 5.0.0 です。新しいメジャーエンジンバージョンがリリースされると、--engine-version のデフォルトのエンジンバージョンが最新のメジャーエンジンバージョンに更新されます。その結果、本稼働ワークロード、特にスクリプティング、自動化、または CloudFormation テンプレートの場合は、明示的に目的のメジャーバージョンを --engine-version 指定することをお勧めします。
db-subnet-group-name または vpc-security-group-id が指定されていない場合、Amazon DocumentDB は、指定されたリージョンに対してデフォルトのサブネットグループと Amazon VPC セキュリティグループを使用します。
次の例では、各 ユーザー入力プレースホルダー を独自の情報に置き換えます。
Linux、macOS、Unix の場合:
aws docdb create-db-cluster \ --global-cluster-identifierglobal-cluster-id\ --source-db-cluster-identifier arn:aws:rds:us-east-1:111122223333:cluster-id
Windows の場合:
aws docdb create-db-cluster ^ --global-cluster-identifierglobal-cluster-id^ --source-db-cluster-identifier arn:aws:rds:us-east-1:111122223333:cluster-id
このオペレーションによる出力は、次のようになります(JSON 形式)。
{ "DBCluster": { "StorageEncrypted": false, "DBClusterMembers": [], "Engine": "docdb", "DeletionProtection" : "enabled", "ClusterCreateTime": "2018-11-26T17:15:19.885Z", "DBSubnetGroup": "default", "EngineVersion": "4.0.0", "MasterUsername": "masteruser", "BackupRetentionPeriod": 1, "DBClusterArn": "arn:aws:rds:us-east-1:123456789012:cluster:cluster-id", "DBClusterIdentifier": "cluster-id", "MultiAZ": false, "DBClusterParameterGroup": "default.docdb4.0", "PreferredBackupWindow": "09:12-09:42", "DbClusterResourceId": "cluster-KQSGI4MHU4NTDDRVNLNTU7XVAY", "PreferredMaintenanceWindow": "tue:04:17-tue:04:47", "Port": 27017, "Status": "creating", "ReaderEndpoint": "cluster-id.cluster-ro-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com", "AssociatedRoles": [], "HostedZoneId": "ZNKXTT8WH85VW", "VpcSecurityGroups": [ { "VpcSecurityGroupId": "sg-77186e0d", "Status": "active" } ], "AvailabilityZones": [ "us-east-1a", "us-east-1c", "us-east-1e" ], "Endpoint": "cluster-id.cluster-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com" } }
クラスターが作成されるまでに数分かかります。AWS マネジメントコンソール または AWS CLI を使用して、クラスターのステータスをモニタリングできます。詳細については、「Amazon DocumentDB クラスターのステータスのモニタリング」を参照してください。
重要
AWS CLI を使用して Amazon DocumentDB リージョナルクラスターを作成すると、インスタンスは作成されません。したがって、プライマリインスタンスと必要なレプリカインスタンスを明示的に作成してください。インスタンスを作成するには、コンソールまたは AWS CLI を使用します。詳細については、「クラスターへの Amazon DocumentDB インスタンスの追加 および CreateDBCluster」がある「Amazon DocumentDB API リファレンス」を参照してください。
リージョンクラスターが使用可能になったら、Amazon DocumentDB グローバルクラスターへの AWS リージョン の追加 の手順に従って、別のリージョンにセカンダリクラスターを追加できます。リージョンを追加すると、リージョンクラスターがプライマリクラスタになり、選択したリージョンに新しいセカンダリクラスターが作成されます。
Amazon DocumentDB グローバルクラスターへの AWS リージョン の追加
グローバルクラスターは、プライマリクラスターとは異なるリージョンに少なくとも 1 つのセカンダリクラスターを必要とし、最大 5 つのセカンダリクラスターを追加できます。追加する各セカンダリクラスターで、プライマリクラスターに許容されたレプリカの数を減らします。例えば、グローバルクラスターに 5 つのセカンダリリージョンがある場合、プライマリクラスターが持てるレプリカの数は 10 です (15 ではなく)。詳細については、「Amazon DocumentDB グローバルクラスターの設定要件」を参照してください。
-
AWS マネジメントコンソール にサインインし、Amazon DocumentDB コンソール を開きます。
-
ナビゲーションペインで [クラスター] を選択します。
-
セカンダリクラスターを追加するクラスターを選択します。クラスターが
Availableであることを確認します。
-
ドロップダウンメニューから [アクション] を選択し、[リージョンの追加] を選択します。
-
[AWS リージョン の追加] ページで、セカンダリリージョンを選択します。同じグローバルクラスターのセカンダリクラスターがすでに存在するリージョンを選択することはできません。また、プライマリクラスターと同じリージョンにすることはできません。これが最初に追加するリージョンである場合は、選択したグローバルクラスター ID も指定する必要があります。
-
新しいリージョンのセカンダリクラスターの残りのフィールドを入力し、[クラスターの作成] を選択してください。リージョンの追加が完了すると、[クラスター] の AWS マネジメントコンソール のリストに表示されます。
-
お客様のグローバルクラスターの名前
create-db-clusterを指定して、(--global-cluster-identifier)CLI コマンドを使用します。他のパラメータでは、以下の操作を行います。-
--regionでは、プライマリリージョンのものとは異なる AWS リージョン を選択します。 -
--engineおよび--engine-versionパラメータの特定の値を選択します。 -
暗号化されたクラスターの場合は、プライマリ AWS リージョン を暗号化の
--source-regionとして指定します。
-
次の例では、新しい Amazon DocumentDB クラスターを作成し、それを読み取り専用セカンダリクラスターとしてグローバルクラスターにアタッチします。最後のステップでは、インスタンスを新しいクラスターに追加します。
次の例では、各 ユーザー入力プレースホルダー を独自の情報に置き換えます。
Linux、macOS、Unix の場合:
aws docdb --regionsecondary-region-id\ create-db-cluster \ --db-cluster-identifiercluster-id\ --global-cluster-identifierglobal-cluster-id\ --engine-versionversion\ --engine docdb aws docdb --regionsecondary-region-id\ create-db-instance \ --db-cluster-identifiercluster-id\ --global-cluster-identifierglobal-cluster-id\ --engine-versionversion\ --engine docdb
Windows の場合:
aws docdb --regionsecondary-region-id^ create-db-cluster ^ --db-cluster-identifiercluster-id^ --global-cluster-identifierglobal-cluster-id^ --engine-versionversion^ --engine docdb aws docdb --regionsecondary-region-id^ create-db-instance ^ --db-cluster-identifiercluster-id^ --global-cluster-identifierglobal-cluster-id^ --engine-versionversion^ --engine docdb
Amazon DocumentDB グローバルクラスターのスナップショットの使用
Amazon DocumentDB クラスターのスナップショットを復元することで、グローバルクラスターの開始ポイントとして使用することができます。これを行うには、スナップショットを復元し、新しいクラスターを作成する必要があります。これは、グローバルクラスタのプライマリクラスターとして機能します。次に、復元したクラスターを別のリージョンに追加して、グローバルクラスターに変換します。