[SOLVED] OpenNebula 5.4.0 is not able to find MAC/IP lease from VNET

Hi all

I’m not sure if this is a known issue or if something was changed in the new version. We are testing the new OpenNebula 5.4.0 release but now OpenNebula refuses to instantiate the VMs that are requesting an IP and MAC address from the VM Network section. We have something like this in our VM template:

NIC=[
  IP="10.0.2.2",
  MODEL="virtio",
  MAC="AA:01:01:01:01:30",
  NETWORK="local.net",
  NETWORK_UNAME="oneadmin" ]

The IP and MAC are available from the VNET, we have created a lease for that with just one IP and one MAC (we set an specific MAC for this AR lease):

AR 210                                                                          
SIZE           : 1                   
LEASES         : 0                  

RANGE                                   FIRST                               LAST
MAC                         AA:01:01:01:01:30                  aa:01:01:01:01:30
IP                                   10.0.2.2                           10.0.2.2

But when we try to instantiate the VM we get this error:

[one.template.instantiate] Error allocating a new virtual machine template. Cannot get IP/MAC lease from virtual network 4.

The VNET id and the AR lease are there but it seems that OpenNebula is not able to find them. We didn’t have this issue until now so I guess that something has changed in 5.4.0. I thought that it was related with a case sensitive issue but it does not matter if I change the MAC to upper case or lower case letters, the result is the same.

The only workaround that I found for the moment is just remove the MAC request from the VM NIC section, in that case the VM starts and uses the correct mac from the AR list.

Any idea about this problem? has anyone else experienced the same issue?

Cheers and thanks!
Álvaro

I think that this issue is related with: https://dev.opennebula.org/issues/4992

Hello Alvaro.

In this version you can not force IP and MAC at the same time, when you add a new address range with same IP and different MAC, you need to know that the network is a logical network and, in this vnet, you can have two virtual machines with the same IP but these VMs are in different address ranges.

If you want that a VM to be in a certain AR, you can force only the MAC

Regards!

Hi Juan

Thanks a lot for the clarification! I’m testing this right now with the new OpenNebula 5.4.1 release.

Cheers
Álvaro