建立虚拟机后可以更改虚拟网卡类型吗?

建立虚拟机后可以更改虚拟网卡类型吗?

构建虚拟机时,您可以选择 vNIC 的虚拟设备类型(E1000、VMXNET3 等)。

虚拟机创建完成后,您可以更改给定连接上使用的 vNIC 类型吗(例如从 E1000 更改为 VMXNET3)?

如果是,怎么办?

答案1

是的,您可以更改类型。

使用Set-NetworkAdapterpowercli cmdlet。“Type”开关允许您修改适配器。请注意,必须关闭虚拟机才能执行此操作。

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

请注意,如果虚拟机有多个 NIC,您可能需要在命令中使用另一个开关来指定正确的 NIC。

答案2

您可能已经了解到,有多种方法可以更改适配器类型。需要记住的一点是与 MAC 地址生成有关。

创建虚拟 NIC 时,有两个与 MAC 地址相关的选项:

  • 自动的:(默认)ESX 会为您自动生成 MAC 地址
  • 手动的:您(用户)手动输入您选择的 MAC 地址

如果您使用自动生成的 MAC 地址,则更改适配器类型会导致重新生成地址。这意味着您在客户机或网络基础设施本身上依赖 MAC 地址的任何配置都将失败。因此,如果您更改适配器类型,则必须让其自动生成新的MAC 地址或手动设置您自己的地址。但是,您不能手动将旧地址设置为接口,因为 ESX 会将此前缀保留用于自己的目的。

警告警告如果失败只能怪你自己

我使用过的另一种方法是手动编辑虚拟机的配置文件。此方法要求在 ESX 主机上启用 SSH,并且您愿意绕过使用 GUI 或 API 提供的所有数据完整性保护。

在执行任何这些步骤之前,请确保客户端已关闭并且设置窗口已关闭。

  1. 通过 SSH 进入你的主机
  2. 找到您的虚拟机的 vmx 文件(例如/vmfs/volumes/datastore1/testvm.priv/testvm.priv.vmx
  3. 打开文件进行编辑:vi /vmfs/volumes/datastore1/testvm.priv/testvm.priv.vmx
  4. 找到定义接口类型的行。例如,对于第一个 vNICethernet0.virtualDev = "e1000"
  5. 改成e1000vmxnet3
  6. 保存文件并退出。

现在,您将更改虚拟 NIC 设备类型,而无需更改 MAC 地址。

答案3

我认为建议使用 PowerCLI 或脚本解决方案来解决这个问题是没有意义的...对于 30 秒的手动修复来说,对周围基础设施的假设太多了。

答案是,你真的不应该改变类型适配器的飞行状态。更常见的过程是移除现有适配器并添加所需类型的新适配器。

连接到虚拟机的现有 E1000 NIC 在此处输入图片描述

移除 E1000 网卡 在此处输入图片描述

添加新的网络设备
在此处输入图片描述

指定新网络设备中要使用的适配器类型 在此处输入图片描述

在您的操作系统中,重新配置网络设置。

答案4

你不能改变类型,但您可以轻松删除不需要的类型并添加所需类型的新 vNIC。

相关内容