我已经创建了一个在 Opennebula 上附加了 VNET 的 VM,过了一会儿我更改了 VNET 的参数,但是在我的(物理)主机重新启动后,这些更改不会在 VM 上持续存在。
我已经更改了 /var/lib/one/vms/{$VM_ID}/context.sh 文件,但仍然没有运气坚持这些更改。
你知道它可能是什么吗?
我在 Debian8 主机上使用 OpenNebula 和 KVM。
我已经创建了一个在 Opennebula 上附加了 VNET 的 VM,过了一会儿我更改了 VNET 的参数,但是在我的(物理)主机重新启动后,这些更改不会在 VM 上持续存在。
我已经更改了 /var/lib/one/vms/{$VM_ID}/context.sh 文件,但仍然没有运气坚持这些更改。
你知道它可能是什么吗?
我在 Debian8 主机上使用 OpenNebula 和 KVM。
过了一会儿,我自己弄清楚了如何做到这一点。
似乎在启动 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 不支持此功能。这将在即将发布的 5.0 版本中得到支持。