本頁說明如何列出、建立、更新、刪除及顯示 Spanner 執行個體設定的詳細資料。 Google Cloud 控制台 UI 不支援部分自訂執行個體設定功能。在這種情況下,請使用提供的 Google Cloud CLI (gcloud) 指令。
清單執行個體設定
您可以使用 Google Cloud CLI 和用戶端程式庫,列出所有可用的 Spanner 執行個體設定。如要查看所有 Spanner 執行個體設定的清單,請參閱地區和多地區設定。
gcloud
執行 gcloud spanner instance-configs list
指令:
gcloud spanner instance-configs list
C++
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
C#
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Go
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Java
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Node.js
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
PHP
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Python
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Ruby
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
顯示執行個體設定詳細資料
您可以使用 Google Cloud CLI 和用戶端程式庫,顯示任何執行個體設定的詳細資料。建立新的自訂執行個體設定時,您可以將 optionalReplicas
下列出的任何位置新增為選用副本。如果找不到想要的唯讀副本位置,可以要求新的選用唯讀副本區域。
詳情請參閱「建立自訂執行個體設定」。
gcloud
執行 gcloud spanner instance-configs describe
指令:
gcloud spanner instance-configs describe INSTANCE-CONFIG
提供下列值:
INSTANCE-CONFIG
- 執行個體設定,可定義執行個體的地理位置,並影響資料複製方式。例如
eur6
或us-central1
。
如要顯示 eur6
基本設定的詳細資料,請執行:
gcloud spanner instance-configs describe eur6
以下是 eur6
基本設定的輸出範例:
configType: GOOGLE_MANAGED
displayName: Europe (Netherlands, Frankfurt)
freeInstanceAvailability: UNSUPPORTED
leaderOptions:
- europe-west3
- europe-west4
name: projects/cloud-spanner-demo/instanceConfigs/eur6
optionalReplicas:
- displayName: South Carolina
labels:
cloud.googleapis.com/country: US
cloud.googleapis.com/location: us-east1
cloud.googleapis.com/region: us-east1
location: us-east1
type: READ_ONLY
- displayName: South Carolina
labels:
cloud.googleapis.com/country: US
cloud.googleapis.com/location: us-east1
cloud.googleapis.com/region: us-east1
location: us-east1
type: READ_ONLY
replicas:
- defaultLeaderLocation: true
location: europe-west4
type: READ_WRITE
- location: europe-west4
type: READ_WRITE
- location: europe-west3
type: READ_WRITE
- location: europe-west3
type: READ_WRITE
- location: europe-west6
type: WITNESS
其他使用注意事項:
C++
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
C#
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Go
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Java
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Node.js
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
PHP
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Python
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Ruby
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
建立自訂執行個體設定
您可以建立自訂區域或多區域執行個體設定,並新增選用的唯讀備用資源,以擴充讀取作業,並支援低延遲的過時讀取作業。如要查看可用於建立自訂執行個體設定的基礎執行個體設定清單,請參閱可用的區域設定和可用的多區域設定。您無法建立自訂雙區域執行個體設定。如要進一步瞭解 Spanner 複製功能和副本類型,請參閱「複製」。
如要建立自訂執行個體設定,您必須具備 spanner.instanceConfigs.create
權限。根據預設,具有 spanner.instances.create
權限的角色也會具有 spanner.instanceConfigs.create
權限。
控制台
您無法使用Google Cloud 控制台建立自訂執行個體設定。如要建立具備唯讀副本的執行個體,請使用 gcloud CLI 或用戶端程式庫。
gcloud
使用 gcloud spanner instance-configs create
指令:
gcloud spanner instance-configs create CUSTOM-INSTANCE-CONFIG-ID \
--display-name=DISPLAY-NAME \
--base-config=BASE-CONFIG \
--labels=KEY=VALUE,[...] \
--replicas=location=LOCATION,type=TYPE[:...]
您可以使用 --clone-config
旗標,輕鬆複製其他基本或自訂執行個體設定,同時宣告特定自訂副本的位置和類型。
gcloud spanner instance-configs create CUSTOM-INSTANCE-CONFIG-ID \
--display-name=DISPLAY-NAME \
--clone-config=INSTANCE-CONFIG \
--labels=KEY=VALUE,[...] \
--add-replicas=location=LOCATION,type=TYPE[:...] \
--skip-replicas=location=LOCATION,type=TYPE[:...]
提供以下這些值:
CUSTOM-INSTANCE-CONFIG-ID
- 專案中的唯一永久 ID。 Google Cloud 執行個體設定 ID 之後無法變更。為避免與基本執行個體設定發生名稱衝突,請務必加上
custom-
前置字元。 DISPLAY-NAME
- 在Google Cloud 控制台中顯示的自訂執行個體設定名稱。 如果您選擇使用 `--base-config` 和 `--replicas` 旗標,請提供下列值:
BASE-CONFIG
- 自訂執行個體設定所依據的基礎執行個體設定區域名稱。例如
eur6
或regional-us-central1
。 LOCATION
- 服務資源 (副本) 的區域名稱,例如
us-east1
。如要瞭解可接受的位置名稱,請執行gcloud spanner instance-configs describe INSTANCE-CONFIG
並參閱replicas
和optionalReplicas
清單。 TYPE
- 副本類型。如要瞭解可接受的對應位置和備用資源類型,請執行
gcloud spanner instance-configs describe INSTANCE-CONFIG
並參閱replicas
和optionalReplicas
清單。類型包括下列其中一項:- READ_ONLY
- READ_WRITE
- WITNESS
- 清單中的項目以「:」分隔。
- 除非使用
--[clone-config]
標記,否則建立自訂執行個體設定時,必須指定所有副本LOCATION
和TYPE
,包括基本設定中預先定義的副本。詳情請參閱 gcloud instance-configs describe 說明文字。
如果選擇使用 --clone-config
和 --add-replicas
旗標 (如果想略過要複製的副本,請只使用 --skip-replicas
),請提供下列值:
--clone-config=INSTANCE-CONFIG
使用這個標記可輕鬆複製其他基礎或自訂例項設定,同時宣告特定自訂副本的位置和類型。然後使用
--add-replicas=location=LOCATION,type=TYPE
指定要新增選用副本的位置。舉例來說,如要在
us-east1
中建立具有兩個唯讀副本的自訂執行個體設定,同時從eur6
基礎執行個體設定複製所有其他副本位置,請執行:gcloud spanner instance-configs create custom-eur6 --clone-config=eur6 \ --add-replicas=location=us-east1,type=READ_ONLY:location=us-east1,type=READ_ONLY
--skip-replicas=location=LOCATION,type=TYPE
使用這個標記可略過任何要複製的副本。
舉例來說,如要在
us-east4
中建立具有一個唯讀副本的自訂執行個體設定,同時從nam3
基本執行個體設定複製所有其他副本位置 (us-central1
中的唯讀副本除外),請執行下列指令:gcloud spanner instance-configs create custom-nam3 --clone-config=nam3 \ --add-replicas=location=us-east4,type=READ_ONLY \ --skip-replicas=location=us-central1,type=READ_ONLY
以下標記和值為選用項目:
--labels=KEY=VALUE,[...]
KEY
和VALUE
:要新增至自訂執行個體設定的鍵/值組合清單。鍵的開頭須為小寫字元,且只能包含連字號 (-)、底線 (_)、小寫字元和數字。值只能包含連字號 (-)、底線 (_)、小寫字元和數字。
--validate-only
使用這個標記驗證要求是否會成功,然後再執行要求。
舉例來說,如要使用 eur6
基礎設定建立自訂執行個體設定,並在 us-east1
中新增一個唯讀備用資源,請執行下列指令:
gcloud spanner instance-configs create custom-eur6 \
--display-name="Custom eur6" --clone-config=eur6 \
--add-replicas=location=us-east1,type=READ_ONLY \
您也可以建立自訂執行個體設定,不必使用 --clone-config
標記:
gcloud spanner instance-configs create custom-eur6 \
--display-name="Custom eur6" --base-config=eur6 \
--replicas=location=europe-west4,type=READ_WRITE:location=europe-west3,type=READ_WRITE:location=europe-west4,type=READ_WRITE:location=europe-west3,type=READ_WRITE:location=europe-west6,type=WITNESS:location=us-east1,type=READ_ONLY
您應該會看到以下的輸出內容:
Creating instance-config...done.
C++
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
C#
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Go
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Java
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Node.js
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
PHP
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Python
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Ruby
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
在自訂執行個體設定中建立執行個體
您可以在自訂執行個體設定中建立執行個體。
控制台
如要在自訂執行個體設定中建立執行個體,請使用 gcloud CLI 或用戶端程式庫。
gcloud
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
C++
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
C#
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
Go
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
Java
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
Node.js
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
PHP
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
Python
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
Ruby
建立自訂執行個體設定後,請按照「建立執行個體」一文的說明操作。
更新自訂執行個體設定
您可以變更自訂執行個體設定的顯示名稱和標籤。
您無法變更或更新自訂執行個體設定的副本。
不過,您可以建立新的自訂執行個體設定,並新增備用資源,然後將執行個體移至新的自訂執行個體設定,並使用您選擇的額外備用資源。舉例來說,如果執行個體位於 us-central1
,且您想新增唯讀備用資源 us-west1
,則需要以 us-central1
做為基礎設定,建立新的自訂執行個體設定,並新增 us-west1
做為唯讀備用資源。然後將執行個體移至這個新的自訂執行個體設定。
gcloud
使用 gcloud spanner instance-configs update
指令:
gcloud spanner instance-configs update CUSTOM-INSTANCE-CONFIG-ID \
--display-name=NEW-DISPLAY-NAME \
--update-labels=KEY=VALUE,[...], \
--etag=ETAG
提供以下這些值:
CUSTOM-INSTANCE-CONFIG-ID
- 自訂執行個體設定的永久 ID。
開頭為
custom-
。 NEW-DISPLAY-NAME
- 要在 Google Cloud 控制台中顯示的執行個體設定新名稱。
KEY
和VALUE
- 要更新的鍵/值組合清單。
- 鍵的開頭須為小寫字元,且只能包含連字號 (-)、底線 (_)、小寫字元和數字。值只能包含連字號 (-)、底線 (_)、小寫字元和數字。
以下標記和值為選用項目:
--etag=ETAG
:在讀取-修改-寫入情境中,可以使用ETAG
引數選取並略過同步更新。--validate-only
:使用這個旗標驗證要求是否會成功,再執行要求。
例如:
gcloud spanner instance-configs update custom-eur6 \
--display-name="Customer managed europe replicas"
C++
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
C#
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Go
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Java
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Node.js
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
PHP
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Python
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Ruby
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
刪除自訂執行個體設定
如要刪除自訂執行個體設定,請先刪除執行個體設定中的所有執行個體。
gcloud
使用 gcloud spanner instance-configs delete
指令,將 CUSTOM-INSTANCE-CONFIG-ID
換成自訂執行個體設定 ID:
gcloud spanner instance-configs delete CUSTOM-INSTANCE-CONFIG-ID
C++
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
C#
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Go
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Java
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Node.js
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
PHP
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Python
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
Ruby
如要瞭解如何安裝及使用 Spanner 的用戶端程式庫,請參閱「Spanner 用戶端程式庫」。
後續步驟
- 瞭解如何使用資料操縱語言 (DML) 或 gcloud CLI 插入、更新及刪除資料。
- 為執行個體及其資料庫授予 IAM 角色。
- 瞭解如何設計 Spanner 結構定義。
- Spanner 配額與限制。