常見錯誤
如果用於建立 VM 的映像檔未標記為使用 gVNIC,就會發生下列問題。
ERROR: (gcloud.compute.instances.create) Could not fetch resource: - Invalid value for field 'resource.networkInterfaces[0].nicType': 'GVNIC'. NetworkInterface NicType can only be set to GVNIC on instances with GVNIC GuestOsFeature.
如要解決這個問題,請確認您使用的映像檔已標記為使用 gVNIC。 詳情請參閱「建立自訂映像檔」。
其他問題
本節列出您在 Compute Engine 執行個體中使用 gVNIC 驅動程式時,可能遇到的其他錯誤。
VM 執行個體未啟動
原因:映像檔上未啟用 gVNIC。
診斷:檢查映像檔是否已啟用
gVNIC
。 如要確認,請執行下列指令:gcloud compute images describe IMAGE_NAME
將您的映像檔名稱替換為
IMAGE_NAME
。指令的輸出應在
guestOsFeatures
底下顯示為「GVNIC」。GVNIC
您也可以檢查 VM 是否已建立,並將
nic-type
設為gVNIC
。如要執行這項操作,請執行下列指令:gcloud compute instances describe VM_NAME
將您的 VM 名稱替換為
VM_NAME
。解決方法:請確認您是否使用了支援的映像檔,或者是否有在自訂映像檔上正確設定 gVNIC 驅動程式。
已啟動 VM 執行個體,但無法透過網路連線
原因:未成功安裝及載入 gVNIC。
診斷:如要檢查是否已安裝並載入驅動程式,請完成下列步驟:
Linux
檢查是否已安裝驅動程式。
modinfo gve
輸出應會如下所示:
filename: /lib/modules/4.15.0-1036-gcp/updates/dkms/gve.ko version: 1.1.0 license: Dual MIT/GPL description: gVNIC Driver author: Google, XXX. srcversion: 5FEFB9DD945EB2DEC94EE09 alias: pci:v00001AE0d00000042sv*sd*bc*sc*i* depends: retpoline: Y name: gve vermagic: 4.15.0-1036-gcp SMP mod_unload
檢查是否已載入驅動程式。
lsmod | grep gve
輸出應會如下所示:
gve 49152 0
Windows
- 透過 SAC 連線至執行個體。
- 使用您的使用者名稱和密碼登入。
在命令提示字元下,執行下列指令:
dism /online /get-drivers | findstr gvnic
查看結果。
- 如果已安裝驅動程式,輸出內容應會顯示
Original File Name : gvnic.inf
這段文字。 - 如果未安裝驅動程式,則不會傳回任何訊息。
- 如果已安裝驅動程式,輸出內容應會顯示
Compute 執行個體未採用虛擬私有雲中設定的 MTU 值
按照說明變更 MTU 值後,執行個體上的 MTU 設定並未使用相同的值。舉例來說,您可以在執行個體上執行 /sbin/ifconfig | grep mtu
指令,檢查 MTU 設定。您已重新啟動執行個體,但執行個體設定未更新。
原因:gVNIC 驅動程式版本過舊
解決方法:
- 如果執行個體使用公開映像檔,請在「Operating system details」(作業系統詳細資料)頁面中,查看作業系統版本的「Networking features」(網路功能) 分頁。確認顯示完全支援巨型封包。
- 如果公開映像檔不完全支援巨型封包,或是您使用自訂 OS 映像檔,則安裝的 gVNIC 驅動程式版本過舊,不支援較高的 MTU 值。請按照「在不支援的作業系統上使用」一節的說明,更新運算執行個體的 gVNIC 驅動程式。
- 更新 gVNIC 驅動程式後,請重新啟動執行個體,並重新檢查 MTU 設定。
Windows Server 2022 和 Windows 11 VM 的網路輸送量不佳
使用 Google 虛擬 NIC (gVNIC) 時,如果 Windows Server 2022 和 Windows 11 VM 使用 gVNIC 驅動程式 GooGet 套件 1.0.0@44
版或更舊版本,可能會導致網路輸送量不佳。
如要解決這個問題,請按照下列步驟,將 gVNIC 驅動程式 GooGet 套件更新至 1.0.0@45
以上版本:
在管理員命令提示字元或 Powershell 工作階段中執行下列指令,檢查 VM 上安裝的驅動程式版本:
googet installed
輸出看起來類似以下內容:
Installed packages: ... google-compute-engine-driver-gvnic.x86_64 VERSION_NUMBER ...
如果
google-compute-engine-driver-gvnic.x86_64
驅動程式版本為1.0.0@44
或更早,請從管理員命令提示字元或 Powershell 工作階段執行下列指令,更新 GooGet 套件存放區:google-compute-engine-driver-gvnic.x86_64