
建置 VM 時,您可以選擇 vNIC 的虛擬設備類型(E1000、VMXNET3 等)。
後建立虛擬機器後,您能否變更給定連線上使用的 vNIC 類型(例如,從 E1000 變更為 VMXNET3)?
如果是這樣,怎麼辦?
答案1
是的,您可以變更類型。
使用Set-NetworkAdapter
powercli cmdlet。 “類型”開關可讓您修改適配器。請注意,必須關閉虛擬機器才能執行此操作。
https://www.vmware.com/support/developer/PowerCLI/PowerCLI41U1/html/Set-NetworkAdapter.html
vSphere PowerCLI 可在此下載:
https://my.vmware.com/group/vmware/details?downloadGroup=VSP510-PCLI-510&productId=285
它可以安裝在任何可以透過網路存取 ESXi 伺服器的 Windows 電腦上。我通常將其直接安裝在我的筆記型電腦/工作站上,同時也安裝了 vSphere。
安裝後,打開它。用於Connect-VIServer
連接到 ESXi 主機。它將提示您輸入伺服器 IP 和憑證。
用於Get-VM
檢索 ESXi 主機上的虛擬機器清單。確認您要更改的名稱在那裡,並記下確切的名稱。
使用此命令變更適配器,將伺服器名稱替換為Get-VM
清單中的確切名稱,然後鍵入所需的適配器類型:
get-vm 'myserver'|get-networkadapter|set-networkadapter -type e1000
請注意,如果虛擬機器有多個網路卡,您可能需要在命令中使用另一個開關來指定正確的網路卡。
答案2
正如您可能了解到的,有多種方法可以更改適配器類型。需要記住的一項注意事項與 MAC 位址產生有關。
建立虛擬 NIC 時,有兩個與 MAC 位址相關的選項:
- 自動的:(預設)ESX 自動為您產生 MAC 位址
- 手動的:您(使用者)手動輸入您選擇的 MAC 位址
如果您使用自動產生的 MAC,則變更適配器類型會導致重新產生位址。這意味著您在訪客或網路基礎架構本身上擁有的任何依賴 MAC 位址的設定都將失敗。因此,如果您變更適配器類型,則必須讓自動生成新的MAC 位址或手動設定您自己的。但是,您無法手動將舊位址設為接口,因為 ESX 保留此前綴用於其自身目的。
警告警告如果失敗只能怪自己
我使用的另一種方法是手動編輯虛擬機器的設定檔。此方法要求在 ESX 主機上啟用 SSH,並且您願意繞過使用 GUI 或 API 提供的所有資料完整性保護。
在執行任何這些步驟之前,請確保訪客已關閉電源並且設定視窗已關閉。
- 透過 SSH 連接到您的主機
- 找到虛擬機器的 vmx 檔案(例如
/vmfs/volumes/datastore1/testvm.priv/testvm.priv.vmx
- 開啟文件進行編輯:
vi /vmfs/volumes/datastore1/testvm.priv/testvm.priv.vmx
- 找到定義介面類型的行。例如,對於第一個 vNIC
ethernet0.virtualDev = "e1000"
e1000
改成vmxnet3
- 儲存文件並退出。
現在您將變更虛擬 NIC 裝置類型,而無需變更 MAC 位址。
答案3
我不認為針對這個問題提出 PowerCLI 或腳本解決方案是有效的...對於 30 秒的手動修復來說,對周圍基礎設施的假設太多。
答案是你真的不該改變類型飛行中的適配器。更可接受的過程是刪除現有適配器並新增所需類型的新適配器。
連接到虛擬機器的現有 E1000 NIC
卸下E1000網卡
新增的網路設備
指定新網路設備中要使用的適配器類型
在您的作業系統中,重新配置網路設定。
答案4
你不能改變類型,但您可以輕鬆刪除不需要的類型並新增所需類型的新 vNIC。