0

我已经创建了一个在 Opennebula 上附加了 VNET 的 VM,过了一会儿我更改了 VNET 的参数,但是在我的(物理)主机重新启动后,这些更改不会在 VM 上持续存在。

我已经更改了 /var/lib/one/vms/{$VM_ID}/context.sh 文件,但仍然没有运气坚持这些更改。

你知道它可能是什么吗?

我在 Debian8 主机上使用 OpenNebula 和 KVM。

4

3 回答 3

0

您可以关闭 VM 并在 VM 的 conf 选项卡中更改大部分参数(不是网络参数,因为它们链接到 vnet)。

虚拟机配置选项卡

仅对于特定于网络的更改,您只需登录到 VM 并将文件 /etc/one-context.d/00-network 移动到其他地方,您对 VM 网络配置的更改将不会被网络上下文脚本覆盖。

于 2019-08-12T15:16:06.523 回答
0

过了一会儿,我自己弄清楚了如何做到这一点。

似乎在启动 VM 时,该文件/var/lib/one/datastores/0/$VM_ID/disk.1附加为/dev/sr0.

在引导过程中/usr/sbin/one-contextd安装这个单元并使用其中的变量,它们通常如下所示:

DISK_ID='1'
ETH0_IP='192.168.168.217'
ETH0_MAC='02:00:c0:a8:a8:d9'
ETH0_DNS='192.168.168.217'
ETH0_GATEWAY='192.168.168.254'

此信息用于导出 ENV 变量(导出的变量可以在 上找到/tmp/one_env),脚本使用这些变量/etc/one-context.d/00-network来设置网络配置。

OpenNebula 没有提供在创建 VM 后替换此配置的简单方法,但您可以执行以下操作:

  • 编辑/var/lib/one/datastores/0/$VM_ID/disk.1并进行所需的更改
  • 重启opennebula服务
  • 重启虚拟机

希望这对某人有用:)

于 2016-05-19T17:31:11.740 回答
0

是的,问题是当前版本的 OpenNebula 不支持此功能。这将在即将发布的 5.0 版本中得到支持。

于 2016-05-17T09:20:43.800 回答