Bigtable インスタンスを作成する

Cloud Bigtable インスタンスは、最大で 4 つの Bigtable クラスタを含むコンテナです。レプリケーションを使用するインスタンスにはクラスタが 2 つ以上あり、レプリケーションのないインスタンスにはクラスタが 1 つしかありません。

このページでは、レプリケーションの有無に関係なく、インスタンスを作成する方法を説明します。このページを読む前に、Bigtable の概要を理解する必要があります。また、インスタンス、クラスタ、ノードの概要についても理解する必要があります。

始める前に

環境の準備:

  1. Google アカウントにログインします。

    Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。

  2. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  3. Cloud プロジェクトに対して課金が有効になっていることを確認します。プロジェクトに対して課金が有効になっていることを確認する方法を学習する

  4. Cloud Bigtable, Cloud Bigtable Admin API を有効にします。

    API を有効にする

  5. Cloud SDK をインストールして初期化します。
  6. Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。

    プロジェクト セレクタに移動

  7. Cloud プロジェクトに対して課金が有効になっていることを確認します。プロジェクトに対して課金が有効になっていることを確認する方法を学習する

  8. Cloud Bigtable, Cloud Bigtable Admin API を有効にします。

    API を有効にする

  9. Cloud SDK をインストールして初期化します。

構成の計画:

  1. レプリケーションを有効にする場合は、次の操作を行います。

  2. デフォルトの Google 管理の暗号化ではなく顧客管理の暗号鍵(CMEK)を使用する予定である場合は、CMEK 対応インスタンスの作成のタスクを完了し、新しいインスタンスを作成する前に CMEK 鍵 ID を用意しておきます。作成後のインスタンスに CMEK による保護を追加することはできません。また、インスタンスの作成後に CMEK 鍵の変更や置換を行うことはできません。

インスタンスの作成

Bigtable インスタンスを作成するには:

Console

  1. Cloud Console で [インスタンスの作成] ページを開きます。

    [インスタンスの作成] ページを開く

  2. インスタンスの名前を入力します。

    Cloud Console に、この名前がインスタンスの識別のために表示されます。

  3. インスタンス ID を入力します。

    インスタンス ID は、インスタンスの永続的な識別子です。

  4. [続行] をクリックします。

  5. クラスタで使用するディスクタイプ(SSD または HDD)を選択します。ほとんどの場合、SSD が最適です。この選択は永続的に適用されます。詳細については、こちらをご覧ください。

  6. [続行] をクリックします。

  7. 最初のクラスタのクラスタ ID を入力します。

    クラスタ ID は、クラスタの永続的な識別子です。

  8. 最初のクラスタを実行するリージョンとゾーンを選択します。

    単一のリージョン内でレプリケーションを使用する場合、そのリージョン内の他のゾーンで Bigtable が利用できることを確認します。ゾーンのリストをご覧ください

  9. 最初のクラスタの Bigtable ノードの数を選択します。必要なノードの数がわからない場合は、デフォルトの設定を使用します。後でノードを追加することもできます。詳細

  10. (省略可)デフォルトの Google 管理の暗号化ではなく CMEK を使用してインスタンスを保護する場合は、次の操作を行います。

    1. [暗号化オプションを表示する] をクリックします。
    2. [顧客管理の暗号鍵(CMEK)を使用する] の横にあるチェックボックスをオンにします。
    3. インスタンスに使用する CMEK 鍵のリソース ID を選択または入力します。これは後から追加できません。
    4. CMEK 鍵のサービス アカウントに権限を付与するように求められたら、[付与] をクリックします。このタスクを完了するには、ユーザー アカウントに Cloud KMS 管理者のロールが付与されている必要があります。
    5. [保存] をクリックします。
  11. レプリケーションを直ちに有効にするには、[クラスタを追加] をクリックし、2 番目のクラスタの設定を入力してから [追加] をクリックします。この手順を繰り返して、インスタンスにクラスタを 4 つまで作成します。また、クラスタを追加してレプリケーションを有効にすることもできます。

    インスタンスの各クラスタは、それぞれ異なるゾーン内に存在する必要があります。Bigtable が利用可能なゾーンであれば、どのゾーンにも追加のクラスタを作成できます。[クラスタを追加] ボタンが無効になっている場合は、最初のクラスタのゾーンを変更します。

  12. [作成] をクリックしてインスタンスを作成します。

  13. 次に、デフォルトのアプリ プロファイルでレプリケーションの設定を確認して、それらの設定がレプリケーションのユースケースに適しているかどうかを確認します。デフォルトのアプリ プロファイルの更新カスタムアプリ プロファイルの作成が必要になることがあります。

gcloud

  1. 最初に、クラスタが 1 つのインスタンスを作成します。bigtable instances create コマンドを使用して、インスタンスを作成します。

    gcloud bigtable instances create INSTANCE_ID \
        --display-name=DISPLAY_NAME \
        [--cluster-config=id=CLUSTER_ID,zone=CLUSTER_ZONE,[nodes=CLUSTER_NUM_NODES,kms-key=KMS_KEY]] \
        [--cluster-storage-type=CLUSTER_STORAGE_TYPE] \
    

    次のフィールドを入力します。

    • INSTANCE_ID: インスタンスの永続的な識別子。
    • DISPLAY_NAME: Cloud Console でインスタンスを識別するための判読可能な名前。
    • CLUSTER_ID: クラスタの永続的な識別子。
    • CLUSTER_ZONE: クラスタが実行されるゾーン

      単一のリージョン内でレプリケーションを使用する場合、そのリージョン内の他のゾーンで Bigtable が利用できることを確認します。ゾーンのリストをご覧ください

    コマンドには、以下の任意のフラグを指定できます。

    • --cluster-config=nodes=CLUSTER_NUM_NODES: クラスタ内のノードの数。インスタンス内の各クラスタには 1 つ以上のノードが必要です。デフォルト値は 1 です。必要なノードの数がわからない場合は、デフォルトの設定を使用します。後でノードを追加することもできます。詳細については、こちらをご覧ください。
    • --cluster-config=kms-key=KMS_KEY: CMEK 鍵 ID。CMEK でインスタンスを保護する場合に使用します。これは後から追加できません。詳細については、こちらをご覧ください。

    • --cluster-storage-type=CLUSTER_STORAGE_TYPE: クラスタで使用するストレージのタイプ。インスタンス内の各クラスタは、同じストレージ タイプを使用する必要があります。指定できる値は SSDHDD です。デフォルト値は SSD です。

      ほとんどの場合、デフォルト値が最適です。この選択は永続的に適用されます。詳細

  2. (省略可)本番環境インスタンスのレプリケーションを有効にするには、bigtable clusters create コマンドを使用してクラスタを追加します。

    gcloud bigtable clusters create CLUSTER_ID \
        --instance=INSTANCE_ID \
        --zone=ZONE \
        [--num-nodes=NUM_NODES] \
        [--kms-key=KMS_KEY] \
        [--project=PROJECT]
    

    次のフィールドを入力します。

    • CLUSTER_ID: クラスタの永続的な識別子。
    • INSTANCE_ID: 作成したインスタンスの永続的な識別子。
    • ZONE: クラスタが実行されるゾーン

      インスタンスの各クラスタは、それぞれ異なるゾーン内に存在する必要があります。Bigtable が利用可能なゾーンであれば、どのゾーンにも追加のクラスタを作成できます。たとえば、最初のクラスタが us-east1-b にある場合、同じリージョン内の別のゾーン(us-east1-c など)を選択することも、別のリージョン内のゾーン(europe-west2-a など)を選択することもできます。

      例外: インスタンスが CMEK で保護されている場合、ゾーンは CMEK 鍵と同じリージョンに存在する必要があります。詳細については、こちらをご覧ください。

    コマンドには、以下の任意のフラグを指定できます。

    • --num-nodes=NUM_NODES: クラスタ内のノードの数。インスタンス内の各クラスタには 1 つ以上のノードが必要です。

      多くの場合、インスタンス内の各クラスタのノード数は同じである必要がありますが、例外もあります。ノードとレプリケーションの詳細をご覧ください。

    • --kms-key=KMS_KEY: インスタンスによって使用されている CMEK の鍵。CMEK クラスタは、すでに CMEK で保護されているインスタンスにのみ追加できます。

    • --project=PROJECT: クラスタを作成するプロジェクト(現在のプロジェクトと異なる場合)。

  3. 前の手順を繰り返して、インスタンスにクラスタを 4 つまで作成します。

  4. 次に、デフォルトのアプリ プロファイルでレプリケーションの設定を確認して、それらの設定がレプリケーションのユースケースに適しているかどうかを確認します。デフォルトのアプリ プロファイルの更新カスタムアプリ プロファイルの作成が必要になることがあります。

cbt

  1. 最初に、クラスタが 1 つのインスタンスを作成します。createinstance コマンドを使用して、インスタンスを作成します。

    cbt createinstance INSTANCE_ID DISPLAY_NAME CLUSTER_ID CLUSTER_ZONE \
        CLUSTER_NUM_NODES CLUSTER_STORAGE_TYPE
    

    次のフィールドを入力します。

    • INSTANCE_ID: インスタンスの永続的な識別子。
    • DISPLAY_NAME: Cloud Console でインスタンスを識別するための判読可能な名前。
    • CLUSTER_ID: クラスタの永続的な識別子。
    • CLUSTER_ZONE: クラスタが実行されるゾーン

      単一のリージョン内でレプリケーションを使用する場合、そのリージョン内の他のゾーンで Bigtable が利用できることを確認します。ゾーンのリストをご覧ください

    • CLUSTER_NUM_NODES: クラスタ内のノードの数。インスタンス内の各クラスタには 1 つ以上のノードが必要です。必要なノードの数がわからない場合は、デフォルトの設定を使用します。後でノードを追加することもできます。詳細については、こちらをご覧ください。

    • CLUSTER_STORAGE_TYPE: クラスタで使用するストレージのタイプ。インスタンス内の各クラスタは、同じストレージ タイプを使用する必要があります。指定できる値は SSDHDD です。ほとんどの場合、SSD が最適です。この選択は永続的に適用されます。詳細については、こちらをご覧ください。

  2. レプリケーションを有効にするには、createcluster コマンドを使用してクラスタを追加します。

    
    cbt -instance=INSTANCE_ID createcluster CLUSTER_ID ZONE NUM_NODES STORAGE_TYPE
    
    

    次のフィールドを入力します。

    • INSTANCE_ID: 作成したインスタンスの永続的な識別子。
    • CLUSTER_ID: クラスタの永続的な識別子。
    • ZONE: クラスタが実行されるゾーン

      インスタンスの各クラスタは、それぞれ異なるゾーン内に存在する必要があります。Bigtable が利用可能なゾーンであれば、どのゾーンにも追加のクラスタを作成できます。たとえば、最初のクラスタが us-east1-b にある場合、同じリージョン内の別のゾーン(us-east1-c など)を選択することも、別のリージョン内のゾーン(europe-west2-a など)を選択することもできます。

    • NUM_NODES: クラスタ内のノードの数。インスタンス内の各クラスタには 1 つ以上のノードが必要です。

      多くの場合、インスタンス内の各クラスタのノード数は同じである必要がありますが、例外もあります。ノードとレプリケーションの詳細をご覧ください。

    • STORAGE_TYPE: クラスタで使用するストレージのタイプ。インスタンス内の各クラスタは、同じストレージ タイプを使用する必要があります。指定できる値は SSDHDD です。

  3. 次に、デフォルトのアプリ プロファイルでレプリケーションの設定を確認して、それらの設定がレプリケーションのユースケースに適しているかどうかを確認します。デフォルトのアプリ プロファイルの更新カスタムアプリ プロファイルの作成が必要になることがあります。

次のステップ