本頁面說明如何建立或更新虛擬機器 (VM) 執行個體,以便使用最低 CPU 平台,而非預設平台。
Google 資料中心提供不同世代的 CPU 處理器。每個 CPU 平台都支援進階向量擴充功能,例如 AVX2 和 AVX-512。此外,一些與系統相關的基本功能 (例如時脈速度和記憶體存取搜尋時間) 可能會因 CPU 平台而異。
每個機器系列都與一或多個 CPU 平台相關聯。舉例來說,N2 VM 可在 Ice Lake 或 Cascade Lake CPU 上執行。如果機器系列有可用的多個 CPU 平台,您可以使用該機器系列的機器類型建立 VM 時,選取最低 CPU 平台。機器系列、系列、區域和區域的可用性,決定您可以為最低 CPU 平台選擇哪些項目。
如果工作負載需要特定處理器世代提供的效能提升,指定最低 CPU 平台就很實用。不過,指定最低 CPU 平台可能會限制您建立 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.
REST
To use the REST API samples on this page in a local development environment, you use the credentials you provide to the 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.
For more information, see Authenticate for using REST in the Google Cloud authentication documentation.
-
必要角色和權限
如要取得變更最低 CPU 平台所需的權限,請要求管理員為您授予專案的下列 IAM 角色:
-
Compute 執行個體管理員 (v1) (
roles/compute.instanceAdmin.v1
) -
如要連線至可以服務帳戶形式執行的 VM,請按照下列步驟操作:
服務帳戶使用者 (v1) (
roles/iam.serviceAccountUser
角色)
如要進一步瞭解如何授予角色,請參閱「管理專案、資料夾和機構的存取權」。
選取最低 CPU 平台的時機
您通常不需要選取最低 CPU 平台。每個 Compute Engine 區域都有每個機器系列的預設 CPU 平台。Google 有時會在新增伺服器時變更區域的預設 CPU。如果未為 VM 指定最低 CPU 平台,VM 會取得與機器類型和可用區相關聯的預設 CPU 平台。
Google 建議您僅在以下情況下選取最低 CPU 平台:
- 當最低 CPU 平台為工作負載帶來顯著效能提升,或提供如 AVX2 或 AVX-512 等用於程式碼的功能時。
- 建立會使用預留項目的 VM 時,請務必指定與預留項目相同的 CPU 平台。
為 VM 選取最低 CPU 平台會引入限制,影響您在某些 CPU 平台供應量有限的區域啟動 VM 的能力。
選取最低 CPU 平台的運作方式
如果可以,Compute Engine 一律會使用最低 CPU 平台。如果 Google 變更區域的 CPU 平台,您的 VM 可在停止並重新啟動之後,繼續在該區域可用的較新 CPU 平台上執行。
為 VM 選取最低 CPU 平台後,除非您停止 VM 並變更 CPU 平台,否則 VM 會使用這個 CPU 平台。在即時遷移期間,VM 會保留所選 CPU 平台。
限制
- 每個地區和區域都支援多個 CPU 平台,但某個地區或區域可能不提供所有 CPU 平台。
- 您無法為使用專屬節點的 VM 指定最低 CPU 平台。
- 您無法為預先定義或自訂的 E2 VM 選取最低 CPU 平台。
- 您無法為下列共用核心的通用 VM 選取最低 CPU 平台:
e2-micro
e2-small
e2-medium
f1-micro
g1-small
CPU 平台的可用性
CPU 平台的可用性會因區域而異,並取決於各區域可用的硬體和機器系列。下表列出支援的最低 CPU 平台,以及每個平台的有效語法:
- 第 5 代:Intel Xeon (Emerald Rapids) 處理器:
"Intel Emerald Rapids"
- 第 4 代:Intel Xeon (Sapphire Rapids) 處理器:
"Intel Sapphire Rapids"
- 第 3 代:Intel Xeon (Ice Lake) 處理器:
"Intel Ice Lake"
- 第二代:Intel Xeon (Cascade Lake) 處理器:
"Intel Cascade Lake"
- 第 1 代:Intel Xeon (Skylake) 處理器:
"Intel Skylake"
- Intel Xeon E5 v4 (Broadwell) 處理器:
"Intel Broadwell"
- Intel Xeon E5 v3 (Haswell) 處理器:
"Intel Haswell"
- Intel Xeon E5 v2 (Ivy Bridge) 處理器:
"Intel Ivy Bridge"
- Intel Xeon E5 (Sandy Bridge) 處理器:
"Intel Sandy Bridge"
- 第 4 代:AMD EPYC Genoa 處理器:
"AMD Genoa"
- 第 3 代:AMD EPYC Milan 處理器:
"AMD Milan"
- 第 2 代:AMD EPYC Rome 處理器:
"AMD Rome"
按區域查看可用的 CPU 平台
只有特定地區和區域包含相同機器系列的多個 CPU 平台,且支援選取最低 CPU 平台。您可以使用 gcloud CLI 或 REST,查看特定區域支援的平台清單。
如果您使用專屬節點,每個節點都會使用您在節點範本中定義的節點類型所對應的 CPU 平台。
gcloud
如要查看區域中可用的 CPU 平台,請使用
gcloud compute zones describe
指令:gcloud compute zones describe ZONE
將
ZONE
替換為要檢查可用 CPU 平台的區域名稱,例如europe-west10-a
。以下是此指令的輸出內容,列出
europe-west10-a
區域的 CPU 平台:gcloud compute zones describe europe-west10-a availableCpuPlatforms: - Intel Broadwell - Intel Cascade Lake - Intel Ice Lake - AMD Milan - AMD Rome - Intel Skylake ...
REST
請向考慮中的區域發出
GET
要求:GET https://compute.googleapis.com/compute/v1/projects/myproject/zones/ZONE
將
ZONE
替換為要檢查可用 CPU 平台的區域名稱。以下是此指令的輸出內容,列出區域支援的 CPU 平台:
{ "kind": "compute#zone", "id": "2210", "creationTimestamp": "1969-12-31T09:30:55.189-07:00", "name": "europe-west10-a", "description": "europe-west10-a", "status": "UP", "region": "https://www.googleapis.com/compute/v1/projects/myproject/regions/europe-west10-a", "selfLink": "https://www.googleapis.com/compute/v1/projects/myproject/zones/europe-west10-a", "availableCpuPlatforms": [ "Intel Broadwell", "Intel Cascade Lake", "Intel Ice Lake", "AMD Milan", "AMD Rome", "Intel Skylake" ], "supportsPzs": true }
預設變更為 CPU 平台
Google 有時會變更 CPU 平台或更新預設 CPU 平台。區域容量會隨時間而增加,並會在新 CPU 平台變為可用時,主動切換至這個新平台。並將預設 CPU 平台更新為可在該區域中使用的下一個最新平台。
當某個區域的預設 CPU 平台變更時,Google 會通知受影響的客戶,並提供詳細時程表和具體操作說明,協助他們轉換至新平台。
VM 絕不會使用比您指定的最低 CPU 平台還舊的平台。如果 Compute Engine 將您的 VM 轉換至較新的平台,VM 的費用不會改變。
為新 VM 選取最低 CPU 平台
建立 VM 時,您可以選擇機器系列和機器類型。機器系列可能會在多個 CPU 平台上提供。在這種情況下,您可以指定要讓 VM 使用的最低CPU 平台。
主控台
前往 Google Cloud 控制台的「Create an instance」(建立執行個體) 頁面。
在「機器設定」專區中,展開「進階設定」專區。
在「CPU 平台」清單中,選取 VM 的 CPU 平台。
繼續執行其餘的 VM 建立程序。
gcloud
如要建立使用最低 CPU 平台的新 VM,請使用
gcloud compute instances create
指令並提供--min-cpu-platform
標記:gcloud compute instances create INSTANCE \ --zone=ZONE \ --min-cpu-platform="PLATFORM"
更改下列內容:
INSTANCE
:您要建立的執行個體名稱ZONE
:要建立執行個體的可用區名稱,例如europe-west1-b
PLATFORM
:您希望例項使用的最低 CPU 平台的易記名稱,例如Intel Sandy Bridge
如要清除最低 CPU 平台規格,請將
PLATFORM
替換為AUTOMATIC
。請參考「可用區域」一節,判斷每個區域適用的平台。
REST
使用
instances.insert
方法,並在要求主體中加入minCpuPlatform
屬性。例如,要求主體可能如下所示:
"name": "INSTANCE", "machineType": "zones/ZONE/machineTypes/MACHINE_TYPE", "minCpuPlatform": "PLATFORM", "networkInterfaces": [{ "accessConfigs": [{ "type": "ONE_TO_ONE_NAT", "name": "External NAT" }], "network": "global/networks/default" }], "disks": [{ "autoDelete": "true", "boot": "true", "type": "PERSISTENT", "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" } }]
更改下列內容:
為現有 VM 設定最低 CPU 平台
您可以為現有的 VM 設定最低 CPU 平台。您必須先停止 VM,才能設定最低 CPU 平台。
主控台
前往「VM instances」(VM 執行個體) 頁面。
如果出現系統提示,請選取您的專案,然後按一下 [Continue] (繼續)。
選取要變更的 VM。
按一下「停止」。
如要編輯 VM,請按一下「編輯」。
在「機器設定」部分中,按一下「進階設定」。
從「CPU Platform」(CPU 平台) 下拉式選單中選取選項。
儲存變更。
選取您變更的 VM。
按一下「開始/繼續」。
gcloud
如要停止 VM,請使用
gcloud compute instances stop
指令:gcloud compute instances stop INSTANCE
將
INSTANCE
替換為您要指定最低 CPU 平台的 VM 名稱。如要指定最低 CPU 平台,請使用
gcloud compute instances update
指令,並提供--min-cpu-platform
標記:gcloud compute instances update INSTANCE \ --min-cpu-platform="PLATFORM"
將
PLATFORM
替換為您要讓 VM 使用的最低 CPU 平台易記名稱,例如Intel Cascade Lake
。如要啟動已更新的 VM,請使用
gcloud compute instances start
指令:gcloud compute instances start INSTANCE
REST
如要停止 VM,請使用
instances.stop
方法建構POST
要求:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/stop
更改下列內容:
PROJECT_ID
:專案 IDZONE
:VM 所在的可用區INSTANCE
:您要為其指定最低 CPU 平台的 VM 名稱
如要設定最低 CPU 平台,請對
setMinCpuPlatform
方法建構POST
要求,並在要求主體中設定minCpuPlatform
屬性:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/setMinCpuPlatform { "minCpuPlatform": "PLATFORM" }
將
PLATFORM
替換為您要讓 VM 使用的最低 CPU 平台易記名稱,例如Intel Skylake
。如要重新啟動 VM,請使用
instances.start
方法建構POST
要求:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/start
移除最低 CPU 平台設定
您可以更新 VM,以便使用預設 CPU 平台,而非最低 CPU 平台。如果 VM 正在執行,您必須先停止 VM,才能進行變更。
主控台
前往「VM instances」(VM 執行個體) 頁面。
如果出現系統提示,請選取您的專案,然後按一下 [Continue] (繼續)。
選取要變更的 VM。
按一下「停止」。
如要編輯 VM,請按一下「編輯」。
在「機器設定」部分中,按一下「進階設定」。
將「CPU Platform」(CPU 平台) 選項變更為「Automatic」(自動)。
選取您變更的 VM。
按一下「開始/繼續」。
gcloud
如要停止 VM,請使用
gcloud compute instances stop
指令:gcloud compute instances stop INSTANCE
將
INSTANCE
替換為您要變更的 VM 名稱。如要重設最低 CPU 平台,請使用
gcloud compute instances update
指令,並將--min-cpu-platform
標記設為AUTOMATIC
:gcloud compute instances update INSTANCE \ --min-cpu-platform="AUTOMATIC"
如要啟動已更新的 VM,請使用
gcloud compute instances start
指令:gcloud compute instances start INSTANCE
REST
如要停止 VM,請使用
instances.stop
方法建構POST
要求:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/stop
更改下列內容:
PROJECT_ID
:專案 IDZONE
:VM 所在的可用區INSTANCE
:要變更的 VM 名稱
如要重新設定最低 CPU 平台,請建構對
setMinCpuPlatform
方法的POST
要求。在要求主體中,將minCpuPlatform
屬性值設為AUTOMATIC
。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/setMinCpuPlatform { "minCpuPlatform": "AUTOMATIC" }
如要重新啟動已更新的 VM,請使用
instances.start
方法建構POST
要求:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE/start
在執行個體範本中指定最低 CPU 平台
如果您使用代管執行個體群組,可以為代管執行個體群組內的 VM 指定最低 CPU 平台。
如要指定最低 CPU 平台,請建立包含 minCpuPlatform
屬性的執行個體範本。
主控台
前往「Instance templates」(執行個體範本) 頁面。
如果出現系統提示,請選取您的專案,然後按一下 [Continue] (繼續)。
點選「建立執行個體範本」。
在「機器設定」部分中,按一下「進階設定」。
從「CPU Platform」(CPU 平台) 下拉式選單中選取選項。
繼續執行個體範本建立程序。
gcloud
使用
gcloud compute instance-templates create
指令建立執行個體範本時,請提供--min-cpu-platform
標記:gcloud compute instance-templates create TEMPLATE_NAME \ --min-cpu-platform="PLATFORM"
更改下列內容:
TEMPLATE_NAME
:執行個體範本名稱PLATFORM
:您希望例項使用的最低 CPU 平台的易記名稱,例如Intel Skylake
REST
新增
minCpuPlatform
做為要求的一部分,以使用instanceTemplates.insert
方法建立新的執行個體範本。例如,下列執行個體範本包含了建立新範本時所須填寫的基本欄位,並加入了
minCpuPlatform
屬性:{ "name": "example-template", "properties": { "machineType": "zones/us-central1-a/machineTypes/n2d-standard-2", "minCpuPlatform": "AMD Milan", "networkInterfaces": [ { "network": "global/networks/default" } ], "disks": [ { "type": "PERSISTENT", "boot": true, "mode": "READ_WRITE", "initializeParams": { "sourceImage": "projects/debian-cloud/global/images/family/debian-11" } } ] } }
後續步驟
- 查看 Compute Engine 中的 CPU 平台清單。
- 變更 VM 的機器類型。
- 進一步瞭解地區和區域。
- 建立和啟動 Windows Server 或 SQL Server 執行個體。