Opennebula VM不会持久保存网络配置

时间:2016-05-16 16:16:20

标签: networking kvm opennebula

我在Opennebula上创建了一个连接了VNET的虚拟机,过了一段时间我改变了VNET的参数,但是在我的(物理)主机重新启动后,这些更改在虚拟机上不会持续存在。

我已经更改了/var/lib/one/vms/{$VM_ID}/context.sh文件,但仍然不能保留更改。

你知道它可能是什么吗?

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

3 个答案:

答案 0 :(得分:0)

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

答案 1 :(得分: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服务
  • 重新启动VM

希望这对某人有用:)

答案 2 :(得分:0)

您可以关闭VM的电源并更改VM的conf选项卡中的大多数参数(不是链接到vnet的网络参数)。

VM Conf tab

仅对于特定于网络的更改,您可以简单地登录到VM,并将/etc/one-context.d/00-network文件移动到其他位置,您对VM的网络配置所做的更改将赢得不会被网络上下文脚本覆盖。