インスタンスの作成
Cloud Bigtable インスタンスは、Bigtable クラスタのコンテナです。複数のクラスタがあるインスタンスは、レプリケーションを使用します。最大 8 つのリージョンにクラスタを作成できます。各リージョンには、ゾーンと同じ数のクラスタを作成できます。
このページでは、インスタンスを作成する方法について説明します。このページを読む前に、Bigtable の概要を理解する必要があります。また、インスタンス、クラスタ、ノードの概要についても理解する必要があります。
始める前に
環境の準備:
-
Google アカウントにログインします。
Google アカウントをまだお持ちでない場合は、新しいアカウントを登録します。
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
-
Google Cloud プロジェクトの課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。
-
Cloud Bigtable, Cloud Bigtable Admin API を有効にします。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
-
Google Cloud Console の [プロジェクト セレクタ] ページで、Google Cloud プロジェクトを選択または作成します。
-
Google Cloud プロジェクトの課金が有効になっていることを確認します。詳しくは、プロジェクトで課金が有効になっているかどうかを確認する方法をご覧ください。
-
Cloud Bigtable, Cloud Bigtable Admin API を有効にします。
- Google Cloud CLI をインストールします。
-
gcloud CLI を初期化するには:
gcloud init
- 次のコマンドを実行して
cbt
CLI をインストールします。gcloud components install cbt
構成の計画:
省略可: レプリケーションを有効にする場合は、次の操作を行います。
- レプリケーションの概要をご覧ください。
- レプリケーションのユースケースを特定します。
- ユースケース、アプリケーションの場所、トラフィックの場所に基づいて、インスタンスを配置するリージョンを決定します。
- アプリケーション プロファイルを使用して受信リクエストをルーティングする方法を決定します。
オプション: デフォルトの Google 管理の暗号化の代わりに顧客管理の暗号鍵(CMEK)を使用する場合は、CMEK 対応インスタンスの作成を完了し、新しいインスタンスを作成する前に CMEK 鍵 ID を用意しておきます。作成後のインスタンスに CMEK による保護を追加することはできません。また、インスタンスの作成後に CMEK 鍵の変更や置換を行うことはできません。
インスタンスの作成
Bigtable インスタンスを作成するには:
コンソール
Google Cloud コンソールで、[インスタンスの作成] ページに移動します。
インスタンスの名前を入力します。
Google Cloud コンソールには、この名前がインスタンスの識別のために表示されます。
インスタンス ID を入力します。
インスタンス ID は、インスタンスの永続的な識別子です。
[続行] をクリックします。
クラスタで使用するディスクタイプ(SSD または HDD)を選択します。ほとんどの場合、SSD が最適です。この選択は永続的に適用されます。詳細については、こちらをご覧ください。
[続行] をクリックします。
最初のクラスタのクラスタ ID を入力します。
クラスタ ID は、クラスタの永続的な識別子です。
最初のクラスタを実行するリージョンとゾーンを選択します。
クラスタのノード スケーリング モードを選択します。スケーリングのガイダンスについては、自動スケーリングをご覧ください。
- [手動ノード割り当て] で、最初のクラスタの Bigtable ノード数を入力します。必要なノードの数がわからない場合は、デフォルトの設定を使用します。後でノードを追加することもできます。
- [自動スケーリング] に次の値を入力します。
- ノードの最小数
- ノードの最大数
- CPU 使用率の目標値
- ストレージ使用率の目標値
(省略可)デフォルトの Google 管理の暗号化ではなく CMEK を使用してインスタンスを保護する場合は、次の操作を行います。
- [暗号化オプションを表示する] をクリックします。
- [顧客管理の暗号鍵(CMEK)] の横にあるラジオボタンを選択します。
- クラスタに使用する CMEK 鍵のリソース名を選択または入力します。これは後から追加できません。
- CMEK 鍵のサービス アカウントに権限を付与するように求められたら、[付与] をクリックします。このタスクを完了するには、ユーザー アカウントに Cloud KMS 管理者のロールが付与されている必要があります。
- [保存] をクリックします。
(省略可)レプリケーションを直ちに有効にするには、次の追加の手順を行います。
- [詳細設定を表示] をクリックします。
- [クラスタを追加] をクリックし、クラスタの設定を入力して、[追加] をクリックします。この手順を繰り返して、インスタンスに追加のクラスタを作成します。また、クラスタを追加してレプリケーションを有効にすることもできます。
各リージョン内のそれぞれのゾーンに配置できるクラスタは 1 つのみです。[クラスタを追加] ボタンが無効になっている場合は、最初のクラスタのゾーンを変更します。
6 つ以上のクラスタが含まれるインスタンスを作成するには、6 つのクラスタを持つインスタンスを作成してから、そのインスタンスにさらにクラスタを追加します。
[作成] をクリックしてインスタンスを作成します。
デフォルトのアプリ プロファイルでレプリケーションの設定を見直して、それらの設定がレプリケーションのユースケースに適しているかどうかを確認します。デフォルトのアプリ プロファイルの更新やカスタムアプリ プロファイルの作成が必要になることがあります。
gcloud
bigtable instances create
コマンドを使用して、インスタンスを作成します。gcloud bigtable instances create INSTANCE_ID \ --display-name=DISPLAY_NAME \ [--cluster-storage-type=CLUSTER_STORAGE_TYPE] \ [--cluster-config=id=CLUSTER_ID,zone=CLUSTER_ZONE, \ nodes=CLUSTER_NUM_NODES] \ [--cluster-config=id=CLUSTER_ID,zone=CLUSTER_ZONE, \ autoscaling-min-nodes=AUTOSCALING_MIN_NODES, \ autoscaling-max-nodes=AUTOSCALING_MAX_NODES, \ autoscaling-cpu-target=AUTOSCALING_CPU_TARGET, \ autoscaling-storage-target=AUTOSCALING_STORAGE_TARGET] \ [kms-key=KMS_KEY]
次のように置き換えます。
INSTANCE_ID
: インスタンスの永続的な識別子。DISPLAY_NAME
: Google Cloud コンソールでインスタンスを識別するための判読可能な名前。CLUSTER_ID
: クラスタの永続的な識別子。CLUSTER_ZONE
: クラスタが実行されるゾーン。
インスタンスが CMEK で保護されている場合、各クラスタは CMEK 鍵と同じリージョンに存在する必要があります。詳細
--cluster-config
フラグを使用して、インスタンスに対して少なくとも 1 つのクラスタを構成する必要があります。複数のクラスタを持つインスタンスを作成するには、クラスタごとに--cluster-config
フラグを繰り返し指定します。手動ノード割り当ての場合は、
--cluster-config
フラグでcluster-num-nodes
オプションを使用します。CLUSTER_NUM_NODES
をクラスタ内のノード数に置き換えます。インスタンス内の各クラスタには 1 つ以上のノードが必要です。デフォルト値は1
です。必要なノードの数がわからない場合は、デフォルトの設定を使用します。後でノードを追加することもできます。詳細自動スケーリングの場合は、
--cluster-config
フラグにautoscaling-
オプションを指定します(autoscaling-storage-target
は省略可能)。cluster-num-nodes
は使用しないでください。自動スケーリング設定の値の選択方法については、自動スケーリングをご覧ください。cluster-config
オプションキーを次のように置き換えます。AUTOSCALING_MIN_NODES
: クラスタの最小ノード数。AUTOSCALING_MAX_NODES
: クラスタノードの最大数。AUTOSCALING_CPU_TARGET
: クラスタの CPU 使用率の目標値(パーセント)。値は 10~80 にする必要があります。AUTOSCALING_STORAGE_TARGET
: (省略可)ノードを追加または削除することで Bigtable が維持するストレージ使用率の目標値(GiB 単位)。
コマンドには、以下の任意のフラグを指定できます。
デフォルトのアプリ プロファイルでレプリケーションの設定を見直して、それらの設定がレプリケーションのユースケースに適しているかどうかを確認します。デフォルトのアプリ プロファイルの更新やカスタムアプリ プロファイルの作成が必要になることがあります。
cbt
最初に、クラスタが 1 つのインスタンスを作成します。
createinstance
コマンドを使用して、インスタンスを作成します。cbt createinstance INSTANCE_ID DISPLAY_NAME CLUSTER_ID CLUSTER_ZONE \ CLUSTER_NUM_NODES CLUSTER_STORAGE_TYPE
次のフィールドを入力します。
INSTANCE_ID
: インスタンスの永続的な識別子。DISPLAY_NAME
: Google Cloud コンソールでインスタンスを識別するための判読可能な名前。CLUSTER_ID
: クラスタの永続的な識別子。CLUSTER_ZONE
: クラスタが実行されるゾーン。CLUSTER_NUM_NODES
: クラスタ内のノードの数。インスタンス内の各クラスタには 1 つ以上のノードが必要です。必要なノードの数がわからない場合は、デフォルトの設定を使用します。後でノードを追加することもできます。詳細については、こちらをご覧ください。CLUSTER_STORAGE_TYPE
: クラスタで使用するストレージのタイプ。インスタンス内の各クラスタは、同じストレージ タイプを使用する必要があります。指定できる値はSSD
とHDD
です。ほとんどの場合、SSD
が最適です。この選択は永続的に適用されます。詳細については、こちらをご覧ください。
レプリケーションを有効にするには、
createcluster
コマンドを使用してクラスタを追加します。cbt -instance=INSTANCE_ID createcluster CLUSTER_ID ZONE NUM_NODES STORAGE_TYPE
次のフィールドを入力します。
INSTANCE_ID
: 作成したインスタンスの永続的な識別子。CLUSTER_ID
: クラスタの永続的な識別子。ZONE
: クラスタが実行されるゾーン。各リージョン内のそれぞれのゾーンに配置できるクラスタは 1 つのみです。たとえば、インスタンスのクラスタが
us-east1-b
にある場合は、同じリージョン内の別のゾーン(例us-east1-c
)、または別のリージョンのゾーン(例:europe-west2-a
)にクラスタを追加できます。NUM_NODES
: クラスタ内のノードの数。インスタンス内の各クラスタには 1 つ以上のノードが必要です。多くの場合、インスタンス内の各クラスタのノード数は同じである必要がありますが、例外もあります。ノードとレプリケーションの詳細をご覧ください。
STORAGE_TYPE
: クラスタで使用するストレージのタイプ。インスタンス内の各クラスタは、同じストレージ タイプを使用する必要があります。指定できる値はSSD
とHDD
です。
(省略可)デフォルトのアプリ プロファイルでレプリケーションの設定を見直して、それらの設定がレプリケーションのユースケースに適しているかどうかを確認します。デフォルトのアプリ プロファイルの更新やカスタムアプリ プロファイルの作成が必要になることがあります。
次のステップ
- Bigtable でインスタンス、クラスタ、ノードがどのように使用されているかを確認する。
- Bigtable レプリケーションについて学習する。
- レプリケーション用のデフォルトのアプリ プロファイルを確認および更新して、必要に応じてカスタムアプリ プロファイルを作成する。
- 既存のインスタンスを変更する方法を確認する。