本頁面說明如何使用開機磁碟映像檔或開機磁碟快照建立虛擬機器 (VM) 執行個體。
您可以建立具有一或多個磁碟的 VM。您也可以在建立 VM 後新增磁碟。Google Distributed Cloud (GDC) air-gapped 會在建立 VM 執行個體後自動啟動該執行個體。
您可以在建立 VM 前後新增啟動指令碼。如要進一步瞭解啟動指令碼,請參閱「搭配 VM 執行個體使用啟動指令碼」頁面。
事前準備
如要使用 gdcloud 指令列介面 (CLI) 指令,請務必下載、安裝及設定 gdcloud CLI。Distributed Cloud 的所有指令都使用 gdcloud 或 kubectl CLI,且需要作業系統 (OS) 環境。
取得 kubeconfig 檔案路徑
如要對 Management API 伺服器執行指令,請確認您具備下列資源:
- 登入並產生 Management API 伺服器的 kubeconfig 檔案 (如果沒有)。 
- 使用 Management API 伺服器的 kubeconfig 檔案路徑,取代這些操作說明中的 - MANAGEMENT_API_SERVER。
要求權限和存取權
如要執行本頁列出的工作,您必須擁有專案虛擬機器管理員角色。按照步驟驗證您在 VM 所在專案的命名空間中,是否具備專案 VirtualMachine 管理員 (project-vm-admin) 角色。
如要使用 GDC 控制台或 gdcloud CLI 執行 VM 作業,請要求專案 IAM 管理員指派「專案 VirtualMachine 管理員」角色和「專案檢視者」角色 (project-viewer) 給您。
從映像檔建立 VM 執行個體
本節說明如何從 GDC 提供的 OS 映像檔或自訂 OS 映像檔建立 VM。
查看 GDC 提供的可用映像檔清單
使用 GDC 提供的映像檔建立 VM 前,請先查看可用映像檔清單。如要進一步瞭解 GDC 提供的映像檔,請參閱支援的 VM 映像檔。
gdcloud
- 列出所有可用的映像檔及其最小磁碟大小: - gdcloud compute images list- 這項指令包含 GDC 提供的圖片和自訂圖片。在 - vm-system命名空間中選擇任一圖片。
API
- 列出所有可用的 GDC 提供的映像檔: - kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimage.virtualmachine.gdc.goog
- 取得特定 GDC 提供映像檔的 - minimumDiskSize:- kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n vm-system \ get virtualmachineimage.virtualmachine.gdc.goog BOOT_DISK_IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}{"\n"}'- 更改下列內容: - MANAGEMENT_API_SERVER:管理 API 伺服器的 kubeconfig 檔案。
- BOOT_DISK_IMAGE_NAME:圖片名稱。
 
透過 GDC 提供的映像檔建立 VM 執行個體
根據預設,所有 GDC 專案都可以使用 GDC 提供的 OS 映像檔建立 VM。
gdcloud
- 選取 GDC 提供的映像檔,建立 VM 執行個體: - gdcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --image=BOOT_DISK_IMAGE_NAME --image-project=vm-system \ --boot-disk-size=BOOT_DISK_SIZE \ --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE- 更改下列內容: - 變數 - 定義 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20GB。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- NO_BOOT_DISK_AUTO_DELETE- true或- false,表示 VM 執行個體遭刪除時,是否會自動刪除開機磁碟。- MACHINE_TYPE- 新 VM 的預先定義機器類型。如要選取可用的機器類型,請執行下列指令: 
 - gdcloud compute machine-types list
API
- 選取 GDC 提供的映像檔,建立 VM 執行個體: - kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: VM_BOOT_DISK_NAME spec: source: image: name: BOOT_DISK_IMAGE_NAME namespace: vm-system size: BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: virtualMachineType: MACHINE_TYPE disks: - virtualMachineDiskRef: name: VM_BOOT_DISK_NAME boot: true autoDelete: BOOT_DISK_AUTO_DELETE EOF- 更改下列內容: - 變數 - 定義 - MANAGEMENT_API_SERVER- 管理 API 伺服器 kubeconfig 檔案。 - PROJECT- 用於建立 VM 的 GDC 專案。 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - VM_BOOT_DISK_NAME- 新 VM 開機磁碟的名稱。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20Gi。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- BOOT_DISK_AUTO_DELETE- true或- false,指出刪除 VM 執行個體時,是否要自動刪除開機磁碟。- MACHINE_TYPE- 新 VM 的預先定義機器類型。如要選取可用的機器類型,請執行下列指令: 
 - gdcloud compute machine-types list
- 確認 VM 已建立,並等待 VM 顯示 - Running狀態。- Running狀態並不表示作業系統已完全就緒且可供存取。- kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachine.virtualmachine.gdc.goog VM_NAME- 將 - VM_NAME和- PROJECT替換為 VM 的名稱和專案。- 如要在建立 VM 執行個體時新增開機指令碼,請按照「搭配 VM 執行個體使用開機指令碼」頁面提供的步驟操作。請務必先關閉 VM,再新增指令碼。 
透過自訂映像檔建立 VM 執行個體
自訂映像檔專屬您的專案。如要使用自訂映像檔建立 VM,您必須先在同一個專案中建立自訂映像檔。
gdcloud
- 
gdcloud compute images list --no-standard-images=true
- 建立 VM 執行個體: - gdcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --image=BOOT_DISK_IMAGE_NAME \ --boot-disk-size=BOOT_DISK_SIZE \ --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE- 更改下列內容: - 變數 - 定義 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20GB。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- NO_BOOT_DISK_AUTO_DELETE- true或- false,表示 VM 執行個體遭刪除時,是否會自動刪除開機磁碟。- MACHINE_TYPE- 新 VM 的預先定義機器類型。如要選取可用的機器類型,請執行下列指令: 
 - gdcloud compute machine-types list
API
- 
kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachineimage.virtualmachine.gdc.goog取得特定映像檔的 minimumDiskSize,以建立 VM 執行個體:kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachineimage.virtualmachine.gdc.goog BOOT_DISK_IMAGE_NAME \ -ojsonpath='{.spec.minimumDiskSize}{"\n"}'更改下列內容: 變數 定義 MANAGEMENT_API_SERVER管理 API 伺服器 kubeconfig 檔案。 BOOT_DISK_IMAGE_NAME從指令中選擇的映像檔名稱,用於列出所有自訂映像檔。 PROJECT圖片的專案。 
- 建立 VM 執行個體: - kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: VM_BOOT_DISK_NAME spec: source: image: name: BOOT_DISK_IMAGE_NAME size: BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: virtualMachineType: MACHINE_TYPE disks: - virtualMachineDiskRef: name: VM_BOOT_DISK_NAME boot: true autoDelete: BOOT_DISK_AUTO_DELETE EOF- 更改下列內容: - 變數 - 定義 - MANAGEMENT_API_SERVER- 管理 API 伺服器 kubeconfig 檔案。 - PROJECT- 用於建立 VM 的 GDC 專案。 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - VM_BOOT_DISK_NAME- 新 VM 開機磁碟的名稱。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20Gi。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- BOOT_DISK_AUTO_DELETE- true或- false,指出刪除 VM 執行個體時,是否要自動刪除開機磁碟。- MACHINE_TYPE- 新 VM 的預先定義機器類型。如要選取可用的機器類型,請執行下列指令: 
 - kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
- 確認 VM 已建立,並等待 VM 顯示處於 - Running狀態。處於- Running狀態並不代表 OS 已完全就緒且可供存取。- kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ get virtualmachine.virtualmachine.gdc.goog VM_NAME- 將 - VM_NAME和- PROJECT替換為 VM 的名稱和專案。
建立具備額外非開機磁碟的 VM 執行個體
建立 VM 時,您可以建立非開機磁碟。每個額外磁碟都可以指定映像檔來源,也可以不指定。後者用於建立空白磁碟。
gdcloud
- 從映像檔建立磁碟: - gdcloud compute disks create NON_BOOT_DISK_FROM_IMAGE \ --size=NON_BOOT_DISK_SIZE \ --image=NON_BOOT_DISK_IMAGE_NAME \ --image-project=NON_BOOT_DISK_IMAGE_NAMESPACE
- 從空白映像檔建立磁碟: - gdcloud compute disks create NON_BOOT_BLANK_DISK \ --size=NON_BOOT_BLANK_DISK_SIZE \
- 使用上一個步驟中的磁碟建立執行個體: - gdcloud compute instances create VM_NAME \ --machine-type=MACHINE_TYPE \ --image=BOOT_DISK_IMAGE_NAME --image-project=vm-system \ --boot-disk-size=BOOT_DISK_SIZE \ --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE \ --disk=name=NON_BOOT_DISK_FROM_IMAGE \ --disk=name=NON_BOOT_BLANK_DISK- 更改下列內容: - 變數 - 定義 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_IMAGE_NAMESPACE- 要用於新 VM 開機磁碟的映像檔命名空間。如果是 GDC 提供的映像檔,請使用 `vm-system`;如果是自訂映像檔,請將這個欄位留空。 - BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20GB。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- NO_BOOT_DISK_AUTO_DELETE- true或- false,表示 VM 執行個體遭刪除時,是否會自動刪除開機磁碟。- MACHINE_TYPE- 新 VM 的預先定義機器類型。如要選取可用的機器類型,請執行下列指令: 
 - gdcloud compute machine-types list- 如要新增磁碟,請替換下列項目: - NON_BOOT_DISK_FROM_IMAGE、- NON_BOOT_BLANK_DISK:額外磁碟的名稱。
- NON_BOOT_DISK_SIZE、- NON_BOOT_BLANK_DISK_SIZE:額外磁碟的大小,例如- 20GB。
- NON_BOOT_DISK_IMAGE_NAME:要當做非開機磁碟使用的映像檔名稱。
- NON_BOOT_DISK_IMAGE_NAMESPACE:要當做非啟動磁碟使用的映像檔命名空間。使用- vm-system取得 GDC 提供的圖片,或將欄位留空以使用自訂圖片。
 
API
- 建立含有非開機磁碟的 VM: - kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: NON_BOOT_DISK_FROM_IMAGE spec: source: image: name: NON_BOOT_DISK_IMAGE_NAME namespace: NON_BOOT_DISK_IMAGE_NAMESPACE size: NON_BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: NON_BOOT_BLANK_DISK spec: size: NON_BOOT_BLANK_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: VM_BOOT_DISK_NAME spec: source: image: name: BOOT_DISK_IMAGE_NAME namespace: BOOT_DISK_IMAGE_NAMESPACE size: BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: virtualMachineType: MACHINE_TYPE disks: - virtualMachineDiskRef: name: VM_BOOT_DISK_NAME boot: true autoDelete: BOOT_DISK_AUTO_DELETE - virtualMachineDiskRef: name: NON_BOOT_DISK_FROM_IMAGE - virtualMachineDiskRef: name: NON_BOOT_BLANK_DISK EOF- 更改下列內容: - 變數 - 定義 - MANAGEMENT_API_SERVER- 管理 API 伺服器 kubeconfig 檔案。 - PROJECT- 要在 VM 中建立的 GDC 專案。 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - VM_BOOT_DISK_NAME- 新 VM 開機磁碟的名稱。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_IMAGE_NAMESPACE- 要用於新 VM 開機磁碟的映像檔命名空間。如要使用 GDC 提供的映像檔,請使用 - vm-system命名空間;如要使用自訂映像檔,請留空。- BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20Gi。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- BOOT_DISK_AUTO_DELETE- true或- false,指出刪除 VM 執行個體時,是否要自動刪除開機磁碟。- MACHINE_TYPE- 新 VM 的預先定義機器類型。如要選取可用的機器類型,請執行下列指令: 
 - kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system- 如要新增磁碟,請替換下列項目: - NON_BOOT_DISK_FROM_IMAGE、- NON_BOOT_BLANK_DISK:額外磁碟的名稱。
- NON_BOOT_DISK_SIZE、- NON_BOOT_BLANK_DISK_SIZE:額外磁碟的大小,例如- 20Gi。
- NON_BOOT_DISK_IMAGE_NAME:您要用做非開機磁碟的映像檔名稱。
- NON_BOOT_DISK_IMAGE_NAMESPACE:您要用做非開機磁碟的映像檔命名空間。如要使用 GDC 提供的映像檔,請使用- vm-system命名空間;如要使用自訂映像檔,請留空。
 - 請在使用前先格式化及掛接磁碟。 
透過快照或備份建立 VM
您可以透過下列方式,從快照建立新的 VM:
- 還原 VM 開機磁碟:如果您使用快照備份 VM 的開機磁碟,請使用該快照建立新的 VM。請參閱「還原快照」。- 還原非開機磁碟:如果您使用快照備份非開機磁碟,也可以在建立 VM 時,使用相同的操作說明將快照還原到新的非開機磁碟。
 
如要使用相同開機磁碟建立多個 VM,請按照下列步驟操作:
- 建立自訂映像檔。
- 從該映像檔建立 VM,而不使用快照。
建立 VM,但不使用機型
Distributed Cloud 提供預先定義的機器類型,可讓您在建立 VM 執行個體時使用。預先定義的機器類型已預先設定 vCPU 數量和記憶體容量。
如果預先定義的 VM 不符合需求,請使用自訂的虛擬化硬體設定建立 VM 執行個體。
自訂 VM 最適合下列情境:
- 不適用於預先定義 VM 類型的工作負載。
- 工作負載需要更多處理效能或記憶體,但不需要新一代機器類型提供的所有升級功能。 
gdcloud
- 建立 VM,並指定機器類型: - gdcloud compute instances create VM_NAME \ --custom-cpu=NUM_VCPU \ --custom-memory=MEMORY \ --image=BOOT_DISK_IMAGE_NAME --image-project=vm-system \ --boot-disk-size=BOOT_DISK_SIZE \ --no-boot-disk-auto-delete=NO_BOOT_DISK_AUTO_DELETE- 更改下列內容: - 變數 - 定義 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20GB。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- NO_BOOT_DISK_AUTO_DELETE- true或- false,表示 VM 執行個體遭刪除時,是否會自動刪除開機磁碟。- NUM_VCPU- vCPU 的數量,支援的 vCPU 數量上限為 192 個。 - MEMORY- 記憶體大小,例如 - 8G。記憶體大小上限為 1 TB。
API
- 建立 VM,並指定機器類型: - kubectl --kubeconfig MANAGEMENT_API_SERVER \ -n PROJECT \ apply -f - <<EOF apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachineDisk metadata: name: VM_BOOT_DISK_NAME spec: source: image: name: BOOT_DISK_IMAGE_NAME namespace: vm-system size: BOOT_DISK_SIZE --- apiVersion: virtualmachine.gdc.goog/v1 kind: VirtualMachine metadata: name: VM_NAME spec: compute: vcpus: NUM_VCPU memory: MEMORY disks: - virtualMachineDiskRef: name: VM_BOOT_DISK_NAME boot: true autoDelete: BOOT_DISK_AUTO_DELETE EOF- 更改下列內容: - 變數 - 定義 - MANAGEMENT_API_SERVER- 管理 API 伺服器 kubeconfig 檔案。 - PROJECT- 用於建立 VM 的 Distributed Cloud 專案。 - VM_NAME- 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 - VM_BOOT_DISK_NAME- 新 VM 開機磁碟的名稱。 - BOOT_DISK_IMAGE_NAME- 新 VM 開機磁碟要使用的映像檔名稱。 - BOOT_DISK_SIZE- 開機磁碟大小,例如 - 20Gi。
 這個值一律須大於或等於開機磁碟映像檔的- minimumDiskSize。- BOOT_DISK_AUTO_DELETE- true或- false,指出刪除 VM 執行個體時,是否要自動刪除開機磁碟。- NUM_VCPU- vCPU 的數量,支援的 vCPU 數量上限為 192 個。 - MEMORY- 記憶體大小,例如 - 8G。記憶體大小上限為 1 TB。
建立具有指定 IP 位址和子網路的 VM 執行個體
根據預設,您可以在不指定網路的情況下建立 Distributed Cloud VM。這類 VM 會附加至預設的虛擬私有雲 (VPC),並從預設子網路動態指派 IP。如要使用預設設定建立 VM,請參閱使用 GDC 提供的映像檔建立 VM。
如果不想為 Distributed Cloud VM 使用預設 IP 設定,可以建立具有動態或靜態 IP 位址的 VM:
- 自訂子網路的動態 IP:您建立具有特定 - CIDR的子網路,並建立 VM,其 IP 是從該- CIDR動態指派。
- 自訂子網路的靜態 IP:您建立具有特定 - CIDR的子網路,並從該- CIDR建立具有靜態 IP 的 VM。
本節說明如何建立 VM,並動態指派位址或使用靜態 IP 位址。
從自訂子網路建立 VM,並動態指派 IP
從特定 CIDR 建立 VM,並動態指派 IP:
   kubectl --kubeconfig MANAGEMENT_API_SERVER \
     -n PROJECT \
     apply -f - <<EOF
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachineDisk
   metadata:
     name: VM_BOOT_DISK_NAME
   spec:
     source:
       image:
         name: BOOT_DISK_IMAGE_NAME
         namespace: vm-system
     size: BOOT_DISK_SIZE
   ---
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachine
   metadata:
     name: VM_NAME
   spec:
     compute:
       virtualMachineType: MACHINE_TYPE
     disks:
     - virtualMachineDiskRef:
         name: VM_BOOT_DISK_NAME
       boot: true
       autoDelete: BOOT_DISK_AUTO_DELETE
     network:
       interfaces:
       - subnet: SUBNET_NAME
   EOF
請替換下列變數:
| 變數 | 定義 | 
|---|---|
| MANAGEMENT_API_SERVER | 管理 API 伺服器 kubeconfig 檔案。 | 
| PROJECT | 用於建立 VM 的 Distributed Cloud 專案。 | 
| VM_NAME | 新 VM 的名稱,名稱只能包含英數字元和破折號,最多 53 個字元。 | 
| VM_BOOT_DISK_NAME | 新 VM 開機磁碟的名稱。 | 
| BOOT_DISK_IMAGE_NAME | 新 VM 開機磁碟要使用的映像檔名稱。 | 
| BOOT_DISK_SIZE | 開機磁碟大小,例如 20Gi。這個值一律須大於或等於開機磁碟映像檔的 minimumDiskSize。 | 
| BOOT_DISK_AUTO_DELETE | true或false,指出刪除 VM 執行個體時,是否要自動刪除開機磁碟。 | 
| MACHINE_TYPE | 新 VM 的預先定義機器類型。選取可用的機型: 
   kubectl --kubeconfig MANAGEMENT_API_SERVER get
   virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
    | 
| SUBNET_NAME | 自訂子網路的名稱。 | 
從子網路建立具有靜態 IP 的 VM
從自訂子網路建立具有靜態 IP 的 VM:
   kubectl --kubeconfig MANAGEMENT_API_SERVER \
     -n PROJECT \
     apply  -f - <<EOF
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachineDisk
   metadata:
     name: VM_BOOT_DISK_NAME
   spec:
     source:
       image:
         name: BOOT_DISK_IMAGE_NAME
         namespace: vm-system
     size: BOOT_DISK_SIZE
   ---
   apiVersion: virtualmachine.gdc.goog/v1
   kind: VirtualMachine
   metadata:
     name: VM_NAME
   spec:
     compute:
       virtualMachineType: MACHINE_TYPE
     disks:
     - virtualMachineDiskRef:
         name: VM_BOOT_DISK_NAME
       boot: true
       autoDelete: BOOT_DISK_AUTO_DELETE
     network:
       interfaces:
       - subnet: SUBNET_NAME
         ipAddresses:
         - address: IP_ADDRESS
   EOF
請替換下列變數:
| 變數 | 定義 | 
|---|---|
| MANAGEMENT_API_SERVER | 管理 API 伺服器 kubeconfig 檔案。 | 
| PROJECT | 用於建立 VM 的 Distributed Cloud 專案。 | 
| VM_NAME | 新 VM 的名稱,名稱只能包含英數字元和破折號,且不得超過 53 個字元。 | 
| VM_BOOT_DISK_NAME | 新 VM 開機磁碟的名稱。 | 
| BOOT_DISK_IMAGE_NAME | 新 VM 開機磁碟要使用的映像檔名稱。 | 
| BOOT_DISK_SIZE | 開機磁碟大小,例如 20Gi。這個值一律須大於或等於開機磁碟映像檔的 minimumDiskSize。 | 
| BOOT_DISK_AUTO_DELETE | true或false,指出刪除 VM 執行個體時,是否要自動刪除開機磁碟。 | 
| MACHINE_TYPE | 新 VM 的預先定義機器類型。如要選取可用的機器類型,請執行下列指令: 
   kubectl --kubeconfig MANAGEMENT_API_SERVER get
   virtualmachinetype.virtualmachine.gdc.goog --namespace vm-system
    | 
| SUBNET_NAME | 自訂子網路的名稱。 | 
| IP_ADDRESS | IP 位址。這必須在所選子網路範圍內。您只能在 ipAddresses欄位中指定一個 IP 位址 |