建立執行個體
Bigtable 執行個體是叢集和資料表的頂層容器,可讓您設定儲存空間,並在最多 8 個區域中複製資料,確保高可用性。您可以使用 Google Cloud 控制台、Google Cloud CLI、cbt CLI 或 Cloud Bigtable 用戶端程式庫,建立及設定執行個體。
事前準備
請務必熟悉 Bigtable 總覽和執行個體、叢集和節點。
準備環境:
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
-
Verify that billing is enabled for your Google Cloud project.
Enable the Cloud Bigtable API, Cloud Bigtable Admin API APIs, if any are not already enabled.
Roles required to enable APIs
To enable APIs, you need the
serviceusage.services.enablepermission. If you created the project, then you likely already have this permission through the Owner role (roles/owner). Otherwise, you can get this permission through the Service Usage Admin role (roles/serviceusage.serviceUsageAdmin). Learn how to grant roles.-
Install the Google Cloud CLI.
-
Configure the gcloud CLI to use your federated identity.
For more information, see Sign in to the gcloud CLI with your federated identity.
-
To initialize the gcloud CLI, run the following command:
gcloud init - 執行下列指令,安裝
cbtCLI:gcloud components install cbt
規劃設定:
選用:如果您打算啟用複製功能,請按照下列步驟操作:
選用:如要使用客戶自行管理的加密金鑰 (CMEK),而非預設的 Google 代管加密金鑰,請在建立新執行個體之前準備好 CMEK 金鑰 ID。執行個體建立後,您無法為其新增 CMEK 保護機制,也無法修改或更換 CMEK 金鑰。詳情請參閱「使用客戶自行管理的加密金鑰 (CMEK)」。
建立執行個體
如要建立 Bigtable 執行個體,請按照下列步驟操作:
控制台
前往 Google Cloud 控制台的「Create instance」(建立執行個體) 頁面。
輸入執行個體的名稱。
Google Cloud 控制台會顯示這個名稱,用於識別執行個體。
輸入執行個體 ID。
執行個體 ID 是執行個體的永久性識別碼。
按一下「繼續」。
在「Select your edition」(選取版本) 部分,選取 Bigtable 版本。
如要比較各版本的規格,請按一下「Compare editions」(比較版本)。詳情請參閱「版本總覽」。
按一下「繼續」。
選擇要為叢集使用 SSD 或 HDD 磁碟。在多數情況下,SSD 是最佳選擇。如要啟用記憶體內層,請選取「SSD」。選定後即無法變更。
按一下「繼續」。
對第一個叢集輸入叢集 ID。
叢集 ID 是叢集的永久識別碼。
請選擇第一個叢集執行的地區及區域。
選用:如要將叢集設為一律以兩個節點為單位調度資源,請選取「啟用 2 倍節點資源調度功能」。2 倍節點資源調度功能僅適用於部分可用區。Enterprise Plus 版本的預設選項是 2 倍節點資源調度。詳情請參閱「節點縮放比例係數」。
選用:如要在叢集層級使用記憶體內層,請選取「Enable in-memory」(啟用記憶體內層)。
選擇叢集的節點資源調度模式。在大多數情況下,建議您選擇自動調度資源。如需資源調度指南,請參閱「自動調度資源」。
- 在「Manual node allocation」(手動分配節點) 部分,輸入第一個叢集的 Bigtable 節點數量。如果不確定需要多少節點,請使用預設值。您可以稍後再新增更多節點。
- 在「自動調度資源」部分,輸入下列項目的值:
- 節點數量下限
- 節點數量上限
- CPU 使用率目標
- 儲存空間使用率目標
選用:如要使用 CMEK 保護執行個體,而非預設的 Google 代管加密,請完成下列步驟:
- 按一下「顯示加密選項」。
- 選取「Cloud KMS key」(Cloud KMS 金鑰)。
- 在「Key management type」(金鑰管理類型) 欄位中,選取下列其中一個選項:
- 如要自動建立 Cloud KMS 金鑰,請選取「Cloud KMS with Autokey」,然後按一下「要求金鑰」。系統會顯示訊息,指出金鑰已成功建立並可供使用。
- 如要手動新增金鑰,請選取「Cloud KMS」。選取或輸入要用於叢集的 CMEK 金鑰資源名稱。日後無法新增。如果系統提示您授予 CMEK 金鑰服務帳戶權限,請按一下「Grant」(授予)。您的使用者帳戶必須具備 Cloud KMS 管理員角色,才能完成這項工作。按一下「Save」(儲存)。
選用:如要立即啟用複製功能,請完成下列額外步驟:
- 按一下 [Show advanced options] (顯示進階選項)。
- 按一下「Add cluster」(新增叢集),輸入叢集設定,然後點選「Add」(新增)。重複這個步驟,在執行個體中建立其他叢集。您也可以稍後新增叢集來啟用複製功能。
區域中的每個可用區只能包含一個叢集。如果「Add cluster」(新增叢集) 按鈕已停用,請變更第一個叢集的可用區。
如要建立叢集數量超過六個的執行個體,請先建立叢集數量為六個的執行個體,然後在執行個體中新增更多叢集。
按一下「建立」,建立執行個體。
查看預設應用程式設定檔中的複製設定,確認是否符合複製用途。您可能需要更新預設應用程式設定檔或建立自訂應用程式設定檔。
gcloud
使用
bigtable instances create指令建立執行個體:gcloud bigtable instances create INSTANCE_ID \ --display-name=DISPLAY_NAME \ [--edition=EDITION] \ [--cluster-storage-type=CLUSTER_STORAGE_TYPE] \ [--cluster-config=id=CLUSTER_ID,zone=CLUSTER_ZONE, \ nodes=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], \ [node-scaling-factor=NODE_SCALING_FACTOR]更改下列內容:
INSTANCE_ID:執行個體的永久 IDDISPLAY_NAME:在 Google Cloud 控制台中識別執行個體的人類可讀名稱。CLUSTER_ID:叢集的永久 IDCLUSTER_ZONE:叢集執行的可用區。
您必須使用
--cluster-config旗標,為執行個體設定至少一個叢集。如要建立具有多個叢集的執行個體,請為每個叢集重複--cluster-config旗標。如果是手動分配節點,則可選擇是否要在
--cluster-config旗標中設定nodes。如未設定任何值,Bigtable 會根據資料足跡自動為叢集分配節點,並將儲存空間使用率最佳化至 50%。自動分配節點會影響定價。如要控管叢集中的節點數量,請將NODES替換為叢集中所需的節點數量。進一步瞭解節點。在大多數情況下,請選擇自動調度資源,而非手動分配節點。如要使用自動調度資源,請在
--cluster-config旗標中提供autoscaling-選項 (autoscaling-storage-target為選用),且不要使用nodes。如需選擇自動調度資源設定值的指引,請參閱「自動調度資源」。請替換cluster-config選項索引鍵的下列內容:AUTOSCALING_MIN_NODES:叢集的節點數量下限。AUTOSCALING_MAX_NODES:叢集的節點數量上限。AUTOSCALING_CPU_TARGET:叢集的目標 CPU 使用率百分比。這個值必須介於 10 到 80 之間。AUTOSCALING_STORAGE_TARGET:(選用) Bigtable 透過新增或移除節點,維持的儲存空間使用率目標 (以 GiB 為單位)。KMS_KEY:叢集的 CMEK 金鑰。
KMS_KEY 值必須採用下列格式:
projects/PROJECT/locations/LOCATION/keyRings/KEYRING/cryptoKeys/KEY更改下列內容:
- PROJECT:專案的永久 ID
- LOCATION:叢集的位置
- KEYRING:金鑰所屬金鑰環的名稱
- KEY:金鑰名稱
範例如下:
projects/examplestore.com:dev/locations/us-east1/keyRings/devt-cmek-2/cryptoKeys/key2如果執行個體受 CMEK 保護,每個叢集都必須與其 CMEK 金鑰位於相同區域。您只能將 CMEK 叢集新增至已受 CMEK 保護的執行個體。
該指令接受下列選用標記:
--edition=EDITION:要建立的執行個體版本。可接受的值為ENTERPRISE和ENTERPRISE_PLUS。預設值為ENTERPRISE。--cluster-storage-type=CLUSTER_STORAGE_TYPE:執行個體要使用的儲存空間類型。預設值為SSD。 在多數情況下,預設值是最佳選擇。選定後即無法變更。 瞭解詳情。--project=PROJECT:要建立叢集的專案 (如果與目前專案不同)。node-scaling-factor=NODE_SCALING_FACTOR:啟用 2 倍節點資源調度的旗標。無論是手動或自動調度資源,都能啟用這項功能。可接受的值為node-scaling-factor-2x或node-scaling-factor-1x。如要查看不支援 2 倍節點資源調度功能的 Bigtable 可用區清單,請參閱「節點縮放比例係數限制」。
--tags=TAGKEY_NAME=TAGVALUE_NAME:這個旗標會將標記新增至新執行個體。您可以透過永久 ID 或命名空間限定名稱,指定標記鍵和標記值。您可以提供多個標記,並以逗號分隔的清單形式呈現,例如:- 使用永久 ID:
--tags=tagKeys/984321798431=tagValues/567890123456,
tagKeys/123456789012=tagValues/098765432109 - 使用命名空間限定名稱:
--tags=123456789012/environment=123456789012/environment/prod,
123456789012/costcenter=123456789012/costcenter/marketing
- 使用永久 ID:
查看預設應用程式設定檔中的複製設定,確認是否符合複製用途。您可能需要更新預設應用程式設定檔或建立自訂應用程式設定檔。
cbt
首先,請建立含有單一叢集的執行個體。使用
createinstance指令建立執行個體:cbt createinstance INSTANCE_ID \ DISPLAY_NAME \ CLUSTER_ID \ CLUSTER_ZONE \ CLUSTER_NUM_NODES \ CLUSTER_STORAGE_TYPE提供下列資訊:
INSTANCE_ID:執行個體的永久 IDDISPLAY_NAME:在 Google Cloud 控制台中識別執行個體的人類可讀名稱。CLUSTER_ID:叢集的永久 IDCLUSTER_ZONE:叢集執行的可用區。CLUSTER_NUM_NODES:這是選填欄位。如未設定任何值,Bigtable 會根據資料足跡自動分配節點,並將儲存空間使用率最佳化至 50%。如要控管叢集中的節點數量,請更新CLUSTER_NUM_NODES值。請確認節點數量設為非零值。進一步瞭解節點。CLUSTER_STORAGE_TYPE: 叢集所使用的儲存類型。執行個體中的每一個叢集必須使用相同的儲存空間類型。接受SSD和HDD值。在多數情況下,SSD是最佳選擇。決定後即無法更改。瞭解詳情。
如要啟用複製功能,請使用
createcluster指令新增叢集:cbt -instance=INSTANCE_ID \ createcluster CLUSTER_ID \ ZONE \ NUM_NODES \ STORAGE_TYPE提供下列資訊:
INSTANCE_ID:您剛建立的執行個體永久 IDCLUSTER_ID:叢集的永久 IDZONE:叢集執行的可用區。區域中的每個可用區只能包含一個叢集。舉例來說,如果執行個體在
us-east1-b有叢集,您可以在同一區域的其他可用區 (例如us-east1-c) 新增叢集,或在其他區域 (例如europe-west2-a) 的可用區新增叢集。NUM_NODES: 這是選填欄位。如未設定任何值,Bigtable 會根據資料足跡自動分配節點,並將儲存空間使用率最佳化至 50%。如要控管叢集中的節點數量,請更新NUM_NODES值。請確認節點數量設為非零值。在許多情況下,執行個體中的每個叢集都應有相同數量的節點,但也有例外。瞭解節點和複製功能。
STORAGE_TYPE: 叢集所使用的儲存類型。執行個體中的每一個叢集必須使用相同的儲存空間類型。接受SSD和HDD值。
(選用) 查看預設應用程式設定檔中的複製設定,確認是否符合您的複製用途。您可能需要更新預設應用程式設定檔或建立自訂應用程式設定檔。
C++
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
C#
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Go
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Java
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Node.js
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
PHP
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
Python
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
小茹
如要瞭解如何安裝及使用 Bigtable 的用戶端程式庫,請參閱「Bigtable 用戶端程式庫」。
如要向 Bigtable 進行驗證,請設定應用程式預設憑證。詳情請參閱「為本機開發環境設定驗證機制」。
後續步驟
- 瞭解 Bigtable 如何使用執行個體、叢集和節點。
- 瞭解 Bigtable 複製功能。
- 查看及更新預設應用程式設定檔,以便進行複製,並視需要建立自訂應用程式設定檔。
- 瞭解如何修改現有的執行個體。