本文說明如何使用開機磁碟映像檔或開機磁碟快照,建立及啟動虛擬機器 (VM) 執行個體。您可以使用 Google Distributed Cloud (GDC) 無網路連線 CLI、GDC 控制台或 API 執行這項工作。
您可以建立具有一或多個磁碟的 VM。您也可以在建立 VM 後新增磁碟。Distributed Cloud 會在建立 VM 執行個體後自動啟動該執行個體。
您也可以在建立 VM 前後新增啟動指令碼。詳情請參閱「搭配 VM 執行個體使用開機指令碼」一文。
本文適用於平台管理員或應用程式運算子群組的開發人員,這類人員會在 Google Distributed Cloud (GDC) 氣隙環境中建立及管理 VM。詳情請參閱 GDC 氣隙環境適用的目標對象說明文件。
事前準備
如要使用 gdcloud 指令列介面 (CLI) 指令,請務必下載、安裝及設定 gdcloud CLI。Distributed Cloud 的所有指令都使用 gdcloud 或 kubectl CLI,且需要作業系統 (OS) 環境。
取得 kubeconfig 檔案路徑
如要對 Management API 伺服器執行指令,請確認您具備下列資源:
登入並產生 Management API 伺服器的 kubeconfig 檔案 (如果沒有)。
使用 Management API 伺服器的 kubeconfig 檔案路徑,取代這些操作說明中的
MANAGEMENT_API_SERVER。
虛擬機器命名規範
建立 VM 執行個體時,請參閱下列命名規範:
- VM 名稱只能使用英數字元和破折號。
- 使用英數字元和破折號以外的符號 (例如半形句號),會導致無法連線至 VM。
- 虛擬機器名稱長度不得超過 53 個字元。
要求 IAM 角色
如要執行本頁列出的工作,您必須具備必要的 IAM 角色:
虛擬機器專案管理員 (
project-vm-admin):在專案命名空間中建立、修改、列出及刪除 VM。專案檢視者 (
project-viewer):查看專案命名空間中的所有資源。虛擬機器映像檔專案管理員 (
project-vm-image-admin):在專案命名空間中建立、列出及刪除 GDC 提供的 VM 映像檔和自訂 VM 映像檔。
所有 VM 角色都必須繫結至 VM 所在的專案命名空間。 按照步驟驗證存取權。
從映像檔建立 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:Management API 伺服器的 kubeconfig 檔案。BOOT_DISK_IMAGE_NAME:映像檔名稱。
使用 GDC 提供的映像檔建立 VM 執行個體
根據預設,所有 GDC 專案都可以使用 GDC 提供的 OS 映像檔建立 VM。
控制台
- 在導覽選單中,依序選取「Virtual Machines」>「Instances」。
- 點選「建立執行個體」。
- 在「Name」(名稱) 欄位中,指定 VM 的名稱。
- 選取要建立 VM 的可用區。
- 選用:按一下「新增標籤」,將任何標籤指派給 VM。方便您管理 VM 執行個體。
- 選取虛擬機要使用的機器設定:
- 一般用途:請確認機型符合工作負載需求。
- 自訂:設定機器的核心數量和記憶體需求。
- 點選「下一步」。
- 如要啟用外部存取權,請選取「允許外部存取」。
- 點選「下一步」。
- 在「開機磁碟」部分,系統會自動新增具有預設設定的開機磁碟。您可以保留這項設定,或按一下「變更」修改預設設定:
- 在「磁碟詳細資料」部分,修改「磁碟名稱」。
- 在「磁碟設定」部分中,修改「大小」值。
- 在「來源圖片」部分中,按一下「圖片名稱」選單,然後選取其中一張圖片。
- 選取或取消選取「啟用安全啟動功能」。如果使用 Windows 映像檔,必須啟用安全啟動。
- 選取「保留磁碟」或「刪除磁碟」,設定磁碟刪除規則。
- 按一下「儲存」。
- 按一下「建立」,建立 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_DELETEtrue或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_SERVERManagement 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_DELETEtrue或false,指出刪除 VM 執行個體時,是否要自動刪除開機磁碟。MACHINE_TYPE新 VM 的預先定義機型。如要選取可用的機型,請執行下列指令:
kubectl --kubeconfig MANAGEMENT_API_SERVER get virtualmachineimage.virtualmachine.gdc.goog --namespace vm-system確認 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,您必須先在同一個專案中建立自訂映像檔。
控制台
- 在導覽選單中,依序選取「Virtual Machines」>「Instances」。
- 點選「建立執行個體」。
- 在「Name」(名稱) 欄位中,指定 VM 的名稱。
- 選取要建立 VM 的可用區。
- 選用:按一下「新增標籤」,將任何標籤指派給 VM。這有助於整理 VM 執行個體。
- 選取虛擬機要使用的機器設定:
- 一般用途:請確認機型符合工作負載需求。
- 自訂:設定機器的核心數量和記憶體需求。
- 點選「下一步」。
- 選取「允許外部存取」核取方塊,為 VM 執行個體啟用外部存取權。
- 點選「下一步」。
- 在「開機磁碟」部分,系統會自動新增具有預設設定的開機磁碟。您可以保留這項設定,或按一下「變更」修改預設設定:
- 在「磁碟詳細資料」部分,修改「磁碟名稱」。
- 在「磁碟設定」部分中,修改「大小」值。
- 在「來源圖片」部分中,按一下「圖片名稱」選單,然後選取其中一個帶有「由消費者建立」副文字的圖片。
- 選取或取消選取「啟用安全啟動功能」。如果使用 Windows 映像檔,必須啟用安全啟動。
- 選取「保留磁碟」或「刪除磁碟」,設定磁碟刪除規則。
- 按一下「儲存」。
- 按一下「建立」,建立 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_DELETEtrue或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_SERVERManagement 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_SERVERManagement 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_DELETEtrue或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 時,您可以建立非開機磁碟。每個額外磁碟都可以指定映像檔來源,也可以不指定。後者用於建立空白磁碟。
控制台
- 在導覽選單中,依序選取「Virtual Machines」>「Instances」。
- 點選「建立執行個體」。
- 在「Name」(名稱) 欄位中,指定 VM 的名稱。
- 選取要建立 VM 的可用區。
- 選用:按一下「新增標籤」,將任何標籤指派給 VM。這有助於整理 VM 執行個體。
- 選取虛擬機要使用的機器設定:
- 一般用途:請確認機型符合工作負載需求。
- 自訂:設定機器的核心數量和記憶體需求。
- 點選「下一步」。
- 選取「允許外部存取」核取方塊,為 VM 執行個體啟用外部存取權。
- 點選「下一步」。
- 在「開機磁碟」部分,系統會自動新增具有預設設定的開機磁碟。您可以保留這項設定,或按一下「變更」修改預設設定:
- 在「磁碟詳細資料」部分,修改「磁碟名稱」。
- 在「磁碟設定」部分中,修改「大小」值。
- 在「來源圖片」部分中,按一下「圖片名稱」選單,然後選取其中一張圖片。
- 選取或取消選取「啟用安全啟動功能」。如果使用 Windows 映像檔,必須啟用安全啟動。
- 選取「保留磁碟」或「刪除磁碟」,設定磁碟刪除規則。
- 按一下「儲存」。
- 如要為 VM 執行個體新增磁碟,請選取「Add New Disk」(新增磁碟):
- 為 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=NON_BOOT_DISK_IMAGE_NAMESPACE \ --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 開機磁碟的映像檔命名空間。使用 vm-system取得 GDC 提供的圖片,或將欄位留空以取得自訂圖片。BOOT_DISK_SIZE開機磁碟大小,例如 20GB。
這個值一律必須大於或等於開機磁碟映像檔的minimumDiskSize。NO_BOOT_DISK_AUTO_DELETEtrue或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_SERVERManagement 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_DELETEtrue或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, 不必使用快照。
建立具有指定 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。
如要進一步瞭解如何建立子網路,請參閱「Google Distributed Cloud 中的子網路和 IP 位址」。
本節說明如何建立 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 |
Management 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 |
Management 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 位址 |