Amazon DocumentDB クラスターの作成 - Amazon DocumentDB

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

Amazon DocumentDB クラスターの作成

Amazon DocumentDB クラスターは、インスタンスと、クラスターのデータを表すクラスターボリュームで構成されます。クラスターボリュームは、3 つのアベイラビリティーゾーン間で 1 つの仮想ボリュームとして 6 つの方法でレプリケートされます。クラスターには、プライマリインスタンスと、オプションで最大 15 個のレプリカインスタンスが含まれます。

以下のセクションでは、 AWS Management Console またはを使用して Amazon DocumentDB クラスターを作成する方法を示します。 AWS CLI次に、そのクラスターのレプリカインスタンスを追加できます。コンソールを使用して Amazon DocumentDB クラスターを作成すると、プライマリインスタンスが自動的に作成されます。を使用して Amazon DocumentDB クラスターを作成する場合、クラスターのステータスが利用可能になったら、そのクラスターのプライマリインスタンスを作成する必要があります。 AWS CLI

前提条件

Amazon DocumentDB クラスターを作成するための前提条件を以下に示します。

をお持ちでない場合は AWS アカウント、次の手順を実行して作成してください。

にサインアップするには AWS アカウント
  1. https://portal.aws.amazon.com/billing/signup を開きます。

  2. オンラインの手順に従います。

    サインアップ手順の一環として、通話呼び出しを受け取り、電話キーパッドで検証コードを入力するように求められます。

    にサインアップすると AWS アカウント、AWS アカウントのルートユーザーが作成されます。ルートユーザーには、アカウントのすべての AWS のサービス とリソースへのアクセス権があります。セキュリティのベストプラクティスとして、管理ユーザーに管理アクセスを割り当てルートユーザーアクセスが必要なタスクを実行する場合にのみ、ルートユーザーを使用してください。

VPC 前提条件

Amazon DocumentDB クラスターは Amazon Virtual Private Cloud (Amazon VPC) でのみ作成できます。Amazon VPC には、Amazon DocumentDB クラスターで使用するために、少なくとも 2 つのアベイラビリティーゾーンのそれぞれに、1 つ以上のサブネットが必要です。アベイラビリティーゾーンにまたがってクラスターインスタンスを配信することで、ごく稀にアベイラビリティーゾーンに障害が発生した場合でも、クラスター内で使用できるインスタンスを確保できます。

サブネットの前提条件

Amazon DocumentDB クラスターを作成するときは、その VPC 内の VPC と対応するサブネットグループを選択して、クラスターを起動する必要があります。サブネットにより、アベイラビリティーゾーン と、そのアベイラビリティーゾーン内でインスタンスの起動に使用する IP 範囲が決まります。ここでは、サブネットアベイラビリティーゾーンという用語を同じ意味で使用します。サブネットグループは、サブネット (またはアベイラビリティーゾーン) の名前付きセットです。サブネットグループでは、Amazon DocumentDB インスタンスの起動に使用するアベイラビリティーゾーンを指定できます。たとえば、3 つのインスタンスを含むクラスターでは、各インスタンスを別々のアベイラビリティーゾーンにプロビジョニングして高可用性を実現することをお勧めします。これにより、1 つのアベイラビリティーゾーンがダウンした場合、1 つのインスタンスにのみ影響します。

Amazon DocumentDB インスタンスは現在、最大 3 つのアベイラビリティーゾーンにプロビジョニングできます。サブネットグループに 3 つ以上のサブネットがある場合でも、それらのサブネットのうちの 3 つのみを使用して Amazon DocumentDB クラスターを作成できます。したがって、サブネットグループを作成するときは、インスタンスのデプロイ先として 3 つのサブネットのみを選択することをお勧めします。米国東部 (バージニア北部) では、サブネットグループに 6 つのサブネット (アベイラビリティーゾーン) を含めることができます。ただし、Amazon DocumentDB クラスターがプロビジョニングされると、Amazon DocumentDB によってインスタンスのプロビジョニングに使用される 3 つのアベイラビリティーゾーンが選択されます。

例えば、クラスターを作成する際、Amazon DocumentDB でアベイラビリティーゾーン (1A、1B、および 1C) を選択するとします。この場合、アベイラビリティーゾーン {1D} にインスタンスを作成しようとすると、その API コールは失敗します。ただし、特定のアベイラビリティーゾーンを指定せずにインスタンスを作成した場合、Amazon DocumentDB がお客様に代わってアベイラビリティーゾーンを選択します。Amazon DocumentDB では、複数のアベイラビリティーゾーン間でロードバランスのインスタンスの負荷を分散するアルゴリズムを使用して、高可用性が実現されます。たとえば、3 つのインスタンスがプロビジョニングされる場合、デフォルトでは 3 つのアベイラビリティーゾーンに別々にプロビジョニングされ、1 つのアベイラビリティーゾーンにまとめてプロビジョニングされません。

推奨事項:
  • 特に理由がない限り、常に 3 つのサブネットを含むサブネットグループを作成します。その結果、3 つのアベイラビリティーゾーン間でインスタンスがプロビジョニングされるため、3 つ以上のインスタンスを含むクラスターで高可用性を実現できます。

  • 高可用性を実現するには、常に複数のアベイラビリティーゾーンにインスタンスを分散させます。クラスターのすべてのインスタンスを 1 つのアベイラビリティーゾーンにまとめて配置しないでください。

  • フェイルオーバーイベントはいつでも発生する可能性があるため、プライマリインスタンスまたはレプリカインスタンスが常に特定のアベイラビリティーゾーンに存在すると想定しないでください。

追加の前提条件

Amazon DocumentDB クラスターを作成するための追加の前提条件をいくつか次に示します。

  • AWS Identity and Access Management (IAM) AWS 認証情報を使用して接続する場合、IAM アカウントには Amazon DocumentDB オペレーションの実行に必要なアクセス権限を付与する IAM ポリシーが必要です。

    IAM アカウントを使用して Amazon DocumentDB コンソールにアクセスする場合は、まず IAM アカウントでにサインインする必要があります。 AWS Management Console Amazon DocumentDB コンソールを次の場所で開きます。https://console.aws.amazon.com/docdb

  • クラスターの設定パラメータを調整する場合は、必須のパラメータ設定を定義したクラスターパラメータグループとパラメータグループを指定する必要があります。クラスターパラメータグループまたはパラメータグループの作成または変更については、「Amazon DocumentDB クラスターパラメータグループの管理」を参照してください。

  • クラスター用に指定する TCP/IP ポート番号を決定する必要があります。会社のファイアウォールによっては、Amazon DocumentDB のデフォルトポートへの接続がブロックされます。会社のファイアウォールがデフォルトのポートをブロックする場合は、お客様のクラスター用に別のポートを選択します。クラスターのすべてのインスタンスは同じポートを使用します。

を使用してクラスターとプライマリインスタンスを作成します。 AWS Management Console

以下の手順では、コンソールを使用して 1 つまたは複数のインスタンスで Amazon DocumentDB クラスターを起動する方法について説明します。

クラスターの作成:デフォルト設定を使用

デフォルト設定を使用してインスタンスを含むクラスターを作成するには AWS Management Console
  1. にサインインし AWS Management Console、https://console.aws.amazon.com/docdb にある Amazon DocumentDB コンソールを開きます。

  2. 米国東部 (バージニア北部) AWS リージョン リージョン以外にクラスターを作成する場合は、コンソールの右上のセクションにあるリストからリージョンを選択します。

  3. ナビゲーションペインで、[クラスター] を選択し、[作成] を選択します。

    ヒント

    画面の左側にナビゲーションペインが表示されない場合は、ページの左上隅にあるメニューアイコン () を選択します。

  4. [Amazon DocumentDB クラスターの作成] ページで、[設定] ペインに入力します。

    1. クラスター識別子 − Amazon DocumentDB 指定の名前を使用するか、クラスターの名前 (sample-cluster など) を使用します。

      クラスターの名前付けの制約:

      • 長さは [1 〜 63] 個の英字、数字、またはハイフンです。

      • 1 字目は英字である必要があります。

      • ハイフンを、文字列の最後に使用したり、2 つ続けて使用したりすることはできません。

      • Amazon RDS、Neptune、Amazon DocumentDB のすべてのクラスターで、リージョンごとに一意である必要があります。 AWS アカウント

    2. エンジンバージョン — 4.0.0 のデフォルトエンジンバージョンを受け入れるか、オプションで 3.6.0 を選択します。

    3. [インスタンスクラス] - デフォルトの db.r5.large を使用するか、リストから必要なインスタンスクラスを選択します。

    4. [インスタンス数] - リストで、このクラスターに作成するインスタンスの数を選択します。最初のインスタンスはプライマリインスタンスになり、他のインスタンスはすべて読み取り専用レプリカインスタンスになります。後でインスタンスを追加したり削除したりできます。デフォルトでは、Amazon DocumentDB クラスターは、3 つのインスタンス (1 つのプライマリと 2 つのレプリカ) 構成で起動します。

  5. 「クラスターストレージ設定」セクションを完了してください。

    Amazon DocumentDB 標準 (デフォルト) または Amazon DocumentDB I/O 最適化のいずれかを選択します。詳細については、「Amazon DocumentDB クラスターストレージ設定」を参照してください。

  6. [認証] ペインに入力します。

    1. ユーザー名 — プライマリユーザーの名前を入力します。クラスターにログインするには、プライマリユーザー名を使用する必要があります。

      プライマリユーザーの命名制約:

      • 長さは 1 ~ 63 バイトの英数字です。

      • 1 字目は英字である必要があります。

      • データベースエンジンの予約語は使用できません。

    2. Password — プライマリユーザーのパスワードを入力し、確認します。クラスターにログインするには、プライマリユーザーのパスワードを使用する必要があります。

      パスワードの制約:

      • 長さは、[8 ~ 100] 個の印刷可能な ASCII 文字です。

      • 以下のものを除くすべての印刷可能な ASCII 文字を使用できます。

        • / (スラッシュ)

        • " (二重引用符)

        • @ (アットマーク)

  7. 画面の下部で、以下のいずれかを選択します。

    • ここでクラスターを作成するには、[クラスターの作成] を選択します。

    • クラスターを作成しない場合は、[Cancel (取り消し)] を選択します。

    • 作成前にクラスターをさらに設定するには、[Show additional configurations (追加設定の表示)] を選択し、「クラスターの作成:追加設定」に進みます。

      [追加設定] セクションの設定内容は次のとおりです。

      • [ネットワーク設定] - デフォルトでは、default VPC セキュリティグループを使用します。

      • [クラスターオプション] - デフォルトでは、ポート 27017 およびデフォルトのパラメータグループを使用します。

      • [暗号化] - デフォルトでは、(default) aws/rds キーを使用した暗号化が有効になります。

        重要

        クラスターはいったん暗号化されると、復号できません。

      • バックアップ - デフォルトでは、バックアップが 1 日間保持され、Amazon DocumentDB によってバックアップウィンドウが選択されます。

      • ログエクスポート — デフォルトでは、監査ログは CloudWatch Logs にエクスポートされません。

      • メンテナンス - デフォルトでは、Amazon DocumentDB によってメンテナンスウィンドウが選択されます。

      • [削除保護] - クラスターが誤って削除されることから保護します。コンソールを使用して作成されたクラスターのデフォルトでは、有効 になっています。

      デフォルト設定を使用しても、これらの設定のほとんどは、後でクラスターを修正して変更できます。

  8. クラスターのセキュリティグループに対してインバウンド接続を有効にします。

    クラスターのデフォルト設定を変更しなかった場合は、特定のリージョン内のデフォルト VPC のデフォルトセキュリティグループを使用してクラスターが作成されました。Amazon DocumentDB に接続するには、クラスターのセキュリティグループのポート 27017 (または選択したポート) でインバウンド接続を有効にする必要があります。

    クラスターのセキュリティグループにインバウンド接続を追加するには

    1. AWS Management Console にサインインし、https://console.aws.amazon.com/ec2/ にある Amazon EC2 コンソールを開きます。

    2. メインウィンドウの [Resources (リソース)] セクションで、[Security groups (セキュリティグループ)] を選択します。

    3. セキュリティグループのリストから、クラスターの作成時に使用したセキュリティグループを探し (おそらくデフォルトのセキュリティグループです)、セキュリティグループの名前の左側にあるボックスを選択します。

    4. [Actions (アクション)] メニューから、[Edit inbound rules (インバウンドルールを編集する)] を選択し、次にルールの制約を選択するか入力します。

      1. タイプ - リストから、プロトコルを選択してネットワークトラフィックを開きます。

      2. [プロトコル] - リストから、プロトコルのタイプを選択します。

      3. [ポート範囲] - カスタムルールでは、ポート番号またはポート範囲を選択します。ポート番号またはポート範囲には、クラスターを作成したときに指定したポートが含まれていることを確認してください (デフォルト: 27017)。

      4. ソース - インスタンスに到達できるトラフィックを指定します。リストからトラフィックの送信元を選択します。[Custom (カスタム)] を選択する場合は、単一の IP アドレスまたは IP アドレス範囲を CIDR 表記で指定します (例: 203.0.113.5/32)。

      5. [Description] - ルールの説明を入力します。

      6. ルールの作成を終了したら、[Save (保存)] を選択します。

クラスターの作成:追加設定

クラスターのデフォルト設定を使用する場合は、以下のステップをスキップして [クラスターの作成] を選択します。

  1. [Network settings (ネットワーク設定)] ウィンドウに入力します。

    
                           ネットワーク設定ペインと、ネットワークを定義するステップを示すスクリーンショット
    1. [Virtual Private Cloud (VPC)] - リストで、このクラスターを起動する Amazon VPC を選択します。

    2. [サブネットグループ] - リストで、このクラスターに使用するサブネットグループを選択します。

    3. [VPC セキュリティグループ] - リストで、このクラスターの VPC セキュリティグループを選択します。

  2. [Cluster options (クラスターオプション)] ペインに入力します。

    
                           クラスター設定を行うステップを含むクラスターオプションペインを示すスクリーンショット。
    1. [データベースポート] - 上下の矢印を使用して、アプリケーションによってインスタンスへの接続に使用される TCP/IP ポートを設定します。

    2. [クラスターパラメータグループ] - パラメータグループのリストで、このクラスターのクラスターパラメータグループを選択します。

  3. [Encryption (暗号化)] ペインに入力します。

    
                           クラスターの暗号化を設定するステップを示す暗号化ペインのスクリーンショット。
    1. E ncryption-at-rest —次のいずれかを選択します。

      • 暗号の有効化 - デフォルト すべてのデータは保管時に暗号化されます。データの暗号化を選択した場合、この操作を元に戻すことはできません。

      • [暗号化の無効化] - データは暗号化されません。

    2. AWS KMS キー — データを暗号化している場合にのみ使用できます。リストで、このクラスターのデータの暗号化に使用するキーを選択します。デフォルトは (default) aws/rds です。

      [キーの ARN を入力] を選択した場合は、キーの Amazon リソースネーム (ARN) を入力する必要があります。

  4. [バックアップ] ペインに入力します。

    
                           バックアップウィンドウを設定するステップを示すバックアップペインのスクリーンショット。
    1. [バックアップ保持期間] - リストで、このクラスターの自動バックアップを削除するまで保持する日数を選択します。

    2. [バックアップウィンドウ] - Amazon DocumentDB によってこのクラスターのバックアップが作成される毎日の時刻と期間を設定します。

      1. [開始時刻] - 最初のリストで、自動バックアップを開始する時間 (UTC 時) を選択します。2 番目のリストで、自動バックアップを開始する時間 (UTC 分) を選択します。

      2. [期間] - リストで、自動バックアップの作成に割り当てる時間を選択します。

  5. Logs にエクスポートするログの種類を選択して [ログのエクスポート] ペインを完了します。 CloudWatch

    
                           クラスターの DML ログ記録を設定するステップを示す [ログのエクスポート] ペインのスクリーンショット。
    • 監査ログ — このオプションを選択すると、監査ログを Amazon CloudWatch Logs にエクスポートできるようになります。[Audit logs (監査ログ)] を選択した場合は、クラスターのカスタムパラメータグループで audit_logs を有効にする必要があります。詳細については、「Amazon DocumentDB イベントの監査」を参照してください。

    • プロファイラーログ — このオプションを選択すると、オペレーションプロファイラーログを Amazon Logs にエクスポートできるようになります。 CloudWatch [Profiler logs (プロファイラーログ)] を選択した場合は、クラスターのカスタムパラメータグループの次のパラメータも変更する必要があります。

      • profilerenabled に設定します。

      • profiler_threshold_ms の値に設定して、プロファイリングオペレーションのしきい値を [0-INT_MAX] に設定します。

      • profiler_sampling_rate プロファイルする低速オペレーションの割合を設定するには、[0.0-1.0] の値に設定します。

      詳細については、「Amazon DocumentDB オペレーションのプロファイリング」を参照してください。

  6. [メンテナンス] ペインに入力します。

    
                           クラスターのメンテナンスウィンドウを設定するステップを示すメンテナンスペインのスクリーンショット。
    1. 以下のいずれかを選択します。

      • [Select window (ウィンドウの選択)] - Amazon DocumentDB によってクラスターでメンテナンスが実行される曜日、UTC 開始時刻、期間を指定できます。

        1. [Start day (開始日)] - リストから、クラスターのメンテナンスを開始する曜日を選択します。

        2. [Start time (開始時刻)] リストで、メンテナンスを開始する時間と分 (UTC) を選択します。

        3. [Duration (期間)] - リストで、クラスターメンテナンスに割り当てる時間を選択します。指定した期間内にメンテナンスが完了できない場合、メンテナンスプロセスは指定した期間を過ぎて終了するまで続行されます。

      • [No preference (指定なし)] - Amazon DocumentDB によってメンテナンスが実行される曜日、開始時刻、期間が選択されます。

  7. このクラスターに 1 つ以上のタグを追加する場合、[Tags (タグ)] ペインを完了します。

    
                           選択された削除に対する保護チェックボックスを有効にするスクリーンショット。

    クラスターに追加するタグごとに、以下のステップを繰り返します。クラスターでは最大 10 まで保持できます。

    1. [Add tags (タグの追加)] を選択します。

    2. タグの [キー] を入力します。

    3. 必要に応じてタグの [] を入力します。

    タグを削除するには、[タグの削除] を選択します。

  8. コンソールを使用してクラスターを作成する場合、[Deletion Protection (削除に対する保護)] がデフォルトで有効になっています。削除に対する保護を無効化するには、[Enable deletion protection (削除に対する保護の有効化)] のチェックを外します。有効にすると、削除に対する保護はクラスターが削除されることを防ぎます。削除に対して保護されているクラスターを削除するには、まずクラスターに変更を加えて削除に対する保護を無効化する必要があります。

    
                           選択された削除に対する保護チェックボックスを有効にするスクリーンショット。

    削除に対する保護についての詳細は、「Amazon DocumentDB クラスターを削除する」を参照してください。

  9. クラスターを作成するには、[Create cluster (クラスターの作成)] を選択します。それ以外の場合は、[キャンセル] を選択します。

を使用してクラスターを作成します。 AWS CLI

以下の手順では、を使用して Amazon DocumentDB クラスターを起動し、Amazon DocumentDB レプリカを作成する方法について説明します。 AWS CLI

パラメータ
  • --db-cluster-identifier — 必須 このクラスターを識別する小文字の文字列。

    クラスターの名前付けの制約:
    • 長さは 1 − 63 個の英字、数字、またはハイフンで構成します。

    • 1 字目は英字である必要があります。

    • ハイフンを、文字列の最後に使用したり、2 つ続けて使用したりすることはできません。

    • アカウントごと、リージョンごとに AWS 、すべてのクラスター (Amazon RDS、Amazon Neptune、Amazon DocumentDB にまたがる) で一意である必要があります。

  • --engine — 必須 docdb を指定してください。

  • --deletion-protection | --no-deletion-protection - オプション 削除に対する保護が有効にされている場合、これによってクラスターが削除されることを防ぎます。を使用する場合 AWS CLI、デフォルト設定では削除保護が無効になっています。

    削除に対する保護についての詳細は、「Amazon DocumentDB クラスターを削除する」を参照してください。

  • --storage-type standard | iopt1 - オプションです。デフォルト: standard。クラスターのストレージ設定。有効な値は standard (標準) または iopt1 (I/O 最適化) です。

  • --master-username — 必須 ユーザーの認証に使用されるユーザー名。

    マスターユーザーの名前付けの制約:
    • 長さは、[1 ~ 63] 個の英数字です。

    • 1 字目は英字である必要があります。

    • データベースエンジンの予約語は使用できません。

  • --master-user-password — 必須 ユーザーの認証に使用されるユーザーのパスワード。

    マスターパスワードの制約:
    • 長さは、[8 ~ 100] 個の印刷可能な ASCII 文字です。

    • 以下のものを除くすべての印刷可能な ASCII 文字を使用できます。

      • / (スラッシュ)

      • " (二重引用符)

      • @ (アットマーク)

その他のパラメータについては、「CreateDBCluster」を参照してください。

を使用して Amazon DocumentDB クラスターを起動するには AWS CLI

Amazon DocumentDB クラスターを作成するには、を呼び出します。create-db-cluster AWS CLI AWS CLI 次のコマンドは、sample-cluster削除保護を有効にした名前の Amazon DocumentDB クラスターを作成します。削除に対する保護についての詳細は、「Amazon DocumentDB クラスターを削除する」を参照してください。

また、--engine-version は、デフォルトで最新のメジャーエンジンバージョンとなるオプションのパラメータです。現在のメジャーエンジンバージョンは 4.0.0 です。新しいメジャーエンジンバージョンがリリースされると、--engine-version のデフォルトのエンジンバージョンが最新のメジャーエンジンバージョンに更新されます。そのため、本番環境のワークロード、特にスクリプト、自動化、 AWS CloudFormation またはテンプレートに依存するワークロードでは、--engine-version目的のメジャーバージョンにを明示的に指定することをお勧めします。

注記

もし db-subnet-group-name または vpc-security-group-id が指定されていない場合、Amazon DocumentDB は、指定されたリージョンに対してデフォルトのサブネットグループと Amazon VPC セキュリティグループを使用します。

Linux、macOS、Unix の場合:

aws docdb create-db-cluster \ --db-cluster-identifier sample-cluster \ --engine docdb \ --engine-version 4.0.0 \ --deletion-protection \ --master-username masteruser \ --master-user-password password

Windows の場合:

aws docdb create-db-cluster ^ --db-cluster-identifier sample-cluster ^ --engine docdb ^ --engine-version 4.0.0 ^ --deletion-protection ^ --master-username masteruser ^ --master-user-password password

このオペレーションによる出力は、次のようになります(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:sample-cluster", "DBClusterIdentifier": "sample-cluster", "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": "sample-cluster.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": "sample-cluster.cluster-sfcrlcjcoroz.us-east-1.docdb.amazonaws.com" } }

クラスターが作成されるまでに数分かかります。 AWS Management Console AWS CLI またはを使用してクラスターの状態を監視できます。詳細については、「Amazon DocumentDB クラスターのステータスのモニタリング」を参照してください。

重要

を使用して Amazon DocumentDB クラスターを作成しても、インスタンスは作成されません。 AWS CLI したがって、プライマリインスタンスと必要なレプリカインスタンスを明示的に作成してください。コンソールを使用することも、 AWS CLI インスタンスを作成するためにも使用できます。詳細については、「クラスターへの Amazon DocumentDB インスタンスの追加」を参照してください。

詳細については、[Amazon DocumentDB API リファレンスCreateDBCluster] を参照してください。