在 XEN 中克隆虚拟机时是否有提供 IP 地址的选项

在 XEN 中克隆虚拟机时是否有提供 IP 地址的选项

我使用 XEN 虚拟化平台。我已将其网络配置为 xenbr0 模式。我已设置一个基础 VM,并使用 virt-clone 命令克隆它以创建新 VM。

我的问题是,我能否在创建新虚拟机时为其提供 IP 地址。例如,我是否可以将此虚拟机的 IP 地址作为参数传递给某个命令,以便该命令设置其 IP 地址。

我搜索了 virt-clone 命令的帮助,但没有找到任何有用的信息。你可以传递 mac 地址作为参数,但不能传递 IP 地址。那么还有其他方法吗?

另外,我希望这个 IP 地址是永久的,这样如果我重新启动虚拟机,它不会丢失其 IP。

我们希望网络中有静态 IP,因此 DHCP 不是一个选项。

答案1

我认为答案必须是“否”。鉴于虚拟机可以是任何操作系统类型 - 因此在 Windows 中配置 IP 与在 Linux 中配置 IP 不同。但即使它们都是 Linux 虚拟机,不同的发行版也会将 IP 配置存储在不同的地方。virt-clone 无法跟踪任何这些,这也不是它的职责。正如评论者所说,dhcp 是实现此目的的正确方法 - 您控制虚拟机外部的 MAC 地址,以便您可以很好地控制每个服务器获取的 IP。

如果 dhcp 确实不行(虽然看起来不是),我会将您正在克隆的源 VM 配置为未在其他地方使用的静态 IP。然后在此 VM 上编写启动脚本,该脚本与某个中央存储进行通信,以便在启动时获取其克隆后的 IP 和主机名配置。因此,它会使用标准 IP 地址启动,从某个地方检索其“正确”的配置,并在首次启动时重新配置其 IP 地址。

当然,在做这一切时,你实际上是在半心半意地复制 dhcp :)

另一个选择是对 VM 进行 virt-clone,然后运行一个脚本,该脚本挂载包含 /etc/ 的分区并更新 IP 地址配置。

答案2

我不确定你会看到这个,我知道一种完成你请求的方法,首先在VM中创建一个系统服务,该服务监听xenserver发送的命令(如Xs-Tools),但该服务用于更改IP。 但问题是如何让xenserver将这个更改IP的命令发送给VM。

答案3

我认为答案是否定的。以前在 Citrix 论坛上也问过同样的问题,原因其实很简单。Xen 是虚拟化层,因此它可以创建 VM,但在操作系统中完成的内部配置实际上与 Xen 不再相关。配置 IP 基本上就是编辑操作系统内的网络配置。超出 Xen 范围的事情。

这可以通过首先创建虚拟机然后在其运行时更改网络设置来完成。但不是在创建虚拟机时。我不确定 Xen 是否有命令,但即使没有,您也可以直接在操作系统上使用任何配置工具。

一旦脚本运行,您可以随时使用某些脚本更改网络设置,然后重新启动网络,这样可以完成相同的操作。

相关内容