共用單一用戶群節點群組與本機單一用戶群節點群組類似。舉例來說,共用節點群組的費用相同、消耗的配額相同,且位於資源階層的父項專案下。
共用節點群組與本機節點群組的差異在於,貴機構中的其他專案可以在共用節點群組中佈建虛擬機器 (VM) 執行個體。
在多個專案或機構之間共用節點群組,有助於:
將您管理的節點群組整合到單一專案,然後與其他專案或整個機構共用這些節點
將各專案的 VM 合併到使用率偏低的節點群組後,刪除節點以降低成本
透過單一團隊管理單一用戶群節點
與較小的專案共用單一租戶節點,並保留這些專案之間的安全性與存取權控管界限
在同一專案的節點群組之間執行即時遷移
使用「在節點群組內遷移」維護政策,提高節點群組的使用率,並減少預留的維護節點數量
下圖顯示與其他專案共用的節點群組,以便管理這些專案中 VM 的其他部門,可以在共用節點群組中佈建 VM。
共用節點群組的運用效益
下表比較使用本機節點群組的專案,以及使用共用節點群組的專案。請注意,使用共用節點群組的專案,vCPU 使用率不足的情況會減少。
專案設定 | 本機節點群組 | 共用節點群組 |
---|---|---|
專案 | 10 | 10 |
每個專案的 vCPU | 24 | 24 |
節點群組 | 10 | 1 |
節點 / 節點群組 | 1 | 3 |
每個節點的 vCPU | 80 | 80 |
使用率 / 節點群組 | 24 | 80 |
使用率過低 / 節點群組 | 56 | 0 |
總閒置時間 | 10 x 56 = 560 個 vCPU | 1 x 0 = 0 個 vCPU |
共用節點群組的設定
Compute Engine 會使用下列設定,在共用節點群組中佈建 VM,並共用節點群組:
您在建立或更新單一租戶節點群組時設定的共用設定。如要指定是否與其他專案或整個機構共用節點群組,請使用 gcloud CLI 設定 (
--share-setting
、--share-with
) 或 REST 設定 (shareSetting
、shareWith
)。您使用節點相依性標籤在共用節點群組中佈建 VM 時,預設會使用
compute.googleapis.com/project
節點相依性標籤。如要瞭解其他預設節點相依性標籤,請參閱「預設相依性標籤」。
維護政策考量事項
如果節點群組使用「在節點群組內遷移」維護政策,Compute Engine 會保留至少 1 個節點供即時遷移事件使用,因此節點群組必須至少有 2 個節點。您無法在預留節點上排程 VM,因此採用這項維護政策的節點群組通常整體使用率較低。因此,需要「在節點群組內遷移」維護政策的工作負載很適合用於節點群組共用,因為這類工作負載通常最能從提升使用率中獲益。
IAM 角色和權限
分享節點群組時,請注意下列有關 IAM 角色和權限的資訊:
如果節點群組與專案共用,任何可在所列專案或機構中建立 VM 的使用者,都能從這些專案將 VM 佈建到共用節點群組,不必變更 IAM 角色或權限。
compute.soleTenantViewer
IAM 角色可讓您列出及查看節點群組 (gcloud CLI/ REST)。您無法使用這個角色修改節點群組。無論 VM 的 IAM 權限為何,只要使用者具備這個角色或列出節點群組的權限,就能查看節點群組中所有 VM 的專案 ID、名稱、機器類型,以及本機 SSD 和 GPU 的相關資訊。
限制
法規遵循制度限制:
- 無論 VM 的 IAM 權限為何,只要使用者有權列出節點群組,就能查看節點群組中所有 VM 的專案 ID、名稱和機器類型。因此,為避免跨專案資訊揭露的風險,在共用節點群組中佈建 VM 的專案應遵守相同的法規遵循制度。
Google Cloud 主機限制:
- 如果沒有權限查看共用節點群組中的 VM,這些 VM 就不會顯示在Google Cloud 控制台「單一租戶節點」頁面的 VM 清單中。
- 在「單一租戶節點群組」頁面修改共用設定後,UI 中的「與誰共用」設定不會更新。如要查看更新後的「與誰共用」設定,請前往「單一用戶群節點」頁面。
- 與機構中的所有專案共用節點群組,或與機構中的特定專案共用節點群組後,您只能從擁有專案中查看共用的節點群組,無法從共用專案中查看。如要在共用節點群組中佈建 VM,請前往節點群組共用的專案,然後前往「VM instances」(VM 執行個體) 頁面,並修改單一用戶群節點相依性標籤。
共用限制:
定價
共用節點群組中的 VM 不會產生額外費用,共用節點群組也不會產生額外費用。如要進一步瞭解單一用戶群節點定價,請參閱單一用戶群節點定價。
事前準備
- 建立單一用戶群節點群組前,請建立單一用戶群節點範本。
- 在單一用戶群節點中佈建 VM 前,請先檢查配額。視您預留的節點數量和大小而定,您可能需要申請額外配額。
-
如果尚未設定驗證,請先完成設定。
「驗證」是指驗證身分的程序,確認您有權存取 Google Cloud 服務和 API。如要從本機開發環境執行程式碼或範例,請選取下列其中一個選項,向 Compute Engine 進行驗證:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
- Set a default region and zone.
建立單一用戶群節點群組。詳情請參閱「建立單一租戶節點群組」。
在「Configure share settings」(設定共用設定) 中指定下列其中一個選項,設定共用設定:
- 如要與貴機構中的所有專案共用節點群組,請選擇「與組織中的所有專案共用這個節點群組」。
- 如要與組織中的特定專案共用節點群組,請選擇「與組織中的指定專案共用這個節點群組」。
如不想共用節點群組,請選擇「不要與其他專案共用這個節點群組」。
NODE_GROUP
:節點群組的名稱。ZONE
:要在其中建立節點群組的可用區。NODE_TEMPLATE
:先前建立的節點範本名稱。SIZE
:節點群組中的節點數量。SHARE_SETTING
:節點群組的共用設定。設為projects
可與特定專案共用,設為organization
則可與整個機構共用。PROJECTS
:要與節點群組共用的專案 ID 或專案編號清單。只有在將SHARE_SETTING
設為projects
時,才需要這個屬性。PROJECT
:要在其中建立節點群組的專案名稱。ZONE
:要在其中建立節點群組的可用區。NODE_GROUP
:節點群組的名稱。NODE_TEMPLATE
:先前建立的節點範本名稱。SIZE
:節點群組中的節點數量。SHARE_TYPE
:節點群組的共用設定。設為SPECIFIC_PROJECTS
可與特定專案共用,設為ORGANIZATION
則可與整個機構共用。PROJECTS
:要與節點群組共用的專案 ID 或專案編號清單。只有在將SHARE_TYPE
設為SPECIFIC_PROJECTS
時,才需要這個屬性。在 Google Cloud 控制台中,切換至您已與節點群組共用的專案。
前往「VM instances」(VM 執行個體) 頁面。
點選「建立執行個體」。
在「Zone」(可用區) 中,選擇共用節點群組的可用區。
在「機器設定」>「系列」中,選擇共用單一租戶節點群組範本指定的相同機器類型。
展開「Advanced options」(進階選項) 區段。
展開「單一用戶群」專區。
按一下「瀏覽」。
選擇「選取專案」,然後指定含有共用節點群組的專案。
選擇單一用戶群節點群組,或該群組中的特定單一用戶群節點,以佈建 VM。
VM_NAME
:要在共用節點群組中建立的新單一租戶 VM 名稱MACHINE_TYPE
:新單一租戶 VM 的機器類型NODE_GROUP
:要建立單一租戶 VM 的共用節點群組名稱NODE_PROJECT
:包含節點群組的專案,用於佈建 VMVM_NAME
:使用相依性標籤在共用節點群組中建立的單一租戶 VM 名稱。MACHINE_TYPE
:要在共用節點群組中建立的單一用戶群 VM 機器類型。NODE_AFFINITY_FILE
:包含節點相依性資訊的.json
檔案名稱。在節點相依性檔案中,將相依性標籤鍵設為"compute.googleapis.com/project"
,運算子設為"IN"
,值設為包含節點群組的專案。如要進一步瞭解如何設定節點相依性,請參閱「設定節點相依性標籤」。PROJECT
:擁有節點群組的專案名稱。ZONE
:節點群組的可用區。VM_NAME
:使用相依性標籤在共用節點群組中建立的單一租戶 VM 名稱。MACHINE_TYPE
:要在共用節點群組中建立的單一用戶群 VM 機器類型。KEY
:相依性標籤。請設為"compute.googleapis.com/project"
。OPERATOR
:親和性標籤運算子。請設為"IN"
。VALUE
:包含要佈建 VM 的節點群組的專案。使用專案名稱或專案 ID 指定專案。前往 Google Cloud 控制台的「單一租戶節點」頁面。
如要查看節點群組的屬性,請在「名稱」欄中按一下節點群組的名稱。
PROJECT
:節點群組所屬專案的名稱,用於查看共用設定ZONE
:包含要查看共用設定的節點群組的可用區前往 Google Cloud 控制台的「單一租戶節點」頁面。
在「Name」(名稱) 欄中,按一下節點群組名稱。
如要與機構內的所有專案或選取的專案共用節點群組,請依序點選「總覽」>「與以下對象共用」,然後按一下「編輯」圖示 。
NODE_GROUP
:要更新共用設定的節點群組名稱。SHARE_SETTING
:節點群組的共用設定。設為projects
可與特定專案共用,設為organization
則可與整個機構共用。PROJECTS
:要與節點群組共用的專案 ID 或專案編號清單。只有在將SHARE_SETTING
設為projects
時,才需要這個屬性。PROJECT
:專案名稱,其中包含要更新共用設定的節點群組。ZONE
:包含節點群組的區域,用於更新共用設定。NODE_GROUP
:要更新共用設定的節點群組名稱。SHARE_TYPE
:節點群組的共用設定。設為projects
可與特定專案共用,設為organization
則可與整個機構共用。PROJECTS
:要與節點群組共用的專案 ID 或專案編號清單。只有在將SHARE_SETTING
設為SPECIFIC_PROJECTS
時,才需要這個屬性。前往 Google Cloud 控制台的「單一租戶節點」頁面。
按一下節點群組的「名稱」。
依序點選「總覽」>「與誰共用」,然後按一下「編輯」圖示 。
如要停止共用,請選擇「不要與其他專案共用這個節點群組」。
PROJECT
:要停止共用節點群組的專案名稱ZONE
:包含要停止共用節點群組的可用區NODE_GROUP
:要停止共用的節點群組名稱前往 Google Cloud 控制台的「單一租戶節點」頁面。
在「Name」(名稱) 欄中,按一下節點群組名稱。
點選「刪除」。
PROJECT
:要刪除節點群組的專案名稱ZONE
:包含要刪除節點群組的可用區NODE_GROUP
:要刪除的節點群組名稱
REST
如要在本機開發環境中使用本頁的 REST API 範例,請使用您提供給 gcloud CLI 的憑證。
After installing the Google Cloud CLI, initialize it by running the following command:
gcloud init
If you're using an external identity provider (IdP), you must first sign in to the gcloud CLI with your federated identity.
詳情請參閱 Google Cloud 驗證說明文件中的「Authenticate for using REST」。
建立新的節點群組並共用
如要建立新的節點群組,並與其他專案或整個機構共用,請使用 Google Cloud 主控台、gcloud CLI 或 REST。
主控台
gcloud
如要建立共用節點群組,請使用下列
gcloud compute sole-tenancy node-groups create
指令。gcloud compute sole-tenancy node-groups create NODE_GROUP \ --zone=ZONE \ --node-template=NODE_TEMPLATE \ --target-size=SIZE \ --share-setting=SHARE_SETTING \ --share-with=PROJECTS
更改下列內容:
REST
如要建立共用節點群組,請使用下列
nodeGroups.insert
方法。POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups { ... "name": NODE_GROUP, "nodeTemplate": NODE_TEMPLATE, "size": SIZE, "shareSettings": { "shareType": SHARE_TYPE, "projectMap": { string: { "projectId": PROJECTS }, } } ... }
更改下列內容:
在共用節點群組中佈建單一用戶群 VM
如要在共用節點群組中佈建單一租戶 VM,請使用Google Cloud 控制台、gcloud CLI 或 REST。
主控台
gcloud
使用節點群組名稱在共用節點群組中佈建 VM
如要使用節點群組名稱在共用節點群組中佈建專屬租戶 VM,請使用下列
gcloud compute instances create
指令。gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --node-group=NODE_GROUP \ --node-project=NODE_PROJECT
更改下列內容:
使用節點相依性檔案,在共用節點群組中佈建 VM
如要使用節點親和性檔案,在共用節點群組中佈建專屬租戶 VM,請使用下列
gcloud compute instances create
指令。gcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --node-affinity-file=NODE_AFFINITY_FILE
更改下列內容:
REST
如要使用節點親和性檔案,在共用節點群組中佈建單一租戶 VM,請使用下列
nodeGroups.insert
方法。POST https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/instances { ... "name": VM_NAME, "machineType": MACHINE_TYPE, "scheduling": { ... "nodeAffinities": [ { "key": KEY, "operator": OPERATOR, "values": [ VALUE ] } ], ... }, ... }
更改下列內容:
如要進一步瞭解如何設定節點親和性,請參閱「設定節點親和性標籤」。
查看節點群組的共用設定
如要查看節點群組的共用設定,請使用 Google Cloud 控制台、gcloud CLI 或 REST。
主控台
gcloud
如要查看節點群組的共用設定,請使用下列
gcloud compute sole-tenancy node-groups describe
指令。gcloud compute sole-tenancy node-groups describe NODE_GROUP
將
NODE_GROUP
替換為要查看共用設定的節點群組名稱。REST
如要查看節點群組的共用設定,請使用下列
nodeGroups.get
方法。GET https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups
更改下列內容:
共用現有節點群組
如要與其他專案或整個機構共用現有節點群組,請使用 Google Cloud 主控台、gcloud CLI 或 REST。
主控台
gcloud
如要更新節點群組的共用設定,請使用下列
gcloud compute sole-tenancy node-groups update
指令。gcloud compute sole-tenancy node-groups update NODE_GROUP \ --zone=ZONE \ --share-setting=SHARE_SETTING \ --share-with=PROJECTS
更改下列內容:
REST
如要更新節點群組的共用設定,請使用下列
nodeGroups.patch
方法。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups/NODE_GROUP { "shareSettings": { "shareType": SHARE_TYPE, "projectMap": { string: { "projectId": PROJECTS }, } } }
更改下列內容:
停止共用節點群組
如要停止與其他專案或整個機構共用節點群組,請使用 gcloud CLI 或 REST。
主控台
gcloud
如要停止與其他專案或整個機構共用節點群組,請使用下列
gcloud compute sole-tenancy node-groups update
指令。gcloud compute sole-tenancy node-groups update NODE_GROUP \ --zone=ZONE \ --share-setting=local
將
NODE_GROUP
替換為要停止共用的節點群組名稱。REST
如要停止與其他專案或整個機構共用節點群組,請使用下列
nodeGroups.patch
方法。PATCH https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups/NODE_GROUP { "shareSettings": { "shareType": LOCAL } }
更改下列內容:
從擁有專案中刪除共用節點群組
如要從擁有專案中刪除共用節點群組,請使用Google Cloud 主控台、gcloud CLI 或 REST。刪除節點群組前,請先停止在節點群組中執行的所有 VM。
主控台
gcloud
如要從擁有專案中刪除共用節點群組,請使用下列
gcloud compute sole-tenancy node-groups delete
指令。gcloud compute sole-tenancy node-groups delete NODE_GROUP
將
NODE_GROUP
替換為要刪除的節點群組名稱。REST
如要從擁有專案中刪除共用節點群組,請使用下列
nodeGroups.delete
方法。DELETE https://compute.googleapis.com/compute/v1/projects/PROJECT/zones/ZONE/nodeGroups/NODE_GROUP
更改下列內容:
除非另有註明,否則本頁面中的內容是採用創用 CC 姓名標示 4.0 授權,程式碼範例則為阿帕契 2.0 授權。詳情請參閱《Google Developers 網站政策》。Java 是 Oracle 和/或其關聯企業的註冊商標。
上次更新時間:2025-07-21 (世界標準時間)。
-