[ovirt-users] Issue with OVN/OVS and mandatory ovirtmgmt network
Sverker Abrahamsson
sverker at abrahamsson.com
Wed Dec 28 22:24:45 UTC 2016
In addition I had to add an alias to modprobe:
[root at h2 modprobe.d]# cat dummy.conf
alias dummy0 dummy
Den 2016-12-28 kl. 23:03, skrev Sverker Abrahamsson:
> Hi
> I first tried to set device name to dummy_0, but then ifup did not
> succeed in creating the device unless I first did 'ip link add dummy_0
> type dummy' but then it would not suceed to establish the if on reboot.
>
> Setting fake_nics = dummy0 would not work neither, but this works:
>
> fake_nics = dummy*
>
> The engine is now able to find the if and assign bridge ovirtmgmt to it.
>
> However, I then run into the next issue when starting a VM:
>
> 2016-12-28 22:28:23,897 ERROR
> [org.ovirt.engine.core.dal.dbbroker.auditloghandling.AuditLogDirector]
> (ForkJoinPool-1-worker-2) [] Correlation ID: null, Call Stack: null,
> Custom Event ID: -1, Message: VM CentOS7 is down with error. Exit
> message: Cannot get interface MTU on 'br-int': No such device.
>
> This VM has a nic on ovirtbridge, which comes from the OVN provider.
>
> /Sverker
>
> Den 2016-12-28 kl. 14:38, skrev Marcin Mirecki:
>> Sverker,
>>
>> Can you try adding a vnic named veth_* or dummy_*,
>> (or alternatively add the name of the vnic to
>> vdsm.config fake_nics), and setup the management
>> network using this vnic?
>> I suppose adding the vnic you use for connecting
>> to the engine to fake_nics should make it visible
>> to the engine, and you should be able to use it for
>> the setup.
>>
>> Marcin
>>
>>
>>
>> ----- Original Message -----
>>> From: "Marcin Mirecki" <mmirecki at redhat.com>
>>> To: "Sverker Abrahamsson" <sverker at abrahamsson.com>
>>> Cc: "Ovirt Users" <users at ovirt.org>
>>> Sent: Wednesday, December 28, 2016 12:06:26 PM
>>> Subject: Re: [ovirt-users] Issue with OVN/OVS and mandatory
>>> ovirtmgmt network
>>>
>>>> I have an internal OVS bridge called ovirtbridge which has a port with
>>>> IP address, but in the host network settings that port is not visible.
>>> I just verified and unfortunately the virtual ports are not visible
>>> in engine
>>> to assign a network to :(
>>> I'm afraid that the engine is not ready for such a scenario (even if it
>>> works).
>>> Please give me some time to look for a solution.
>>>
>>> ----- Original Message -----
>>>> From: "Sverker Abrahamsson" <sverker at abrahamsson.com>
>>>> To: "Marcin Mirecki" <mmirecki at redhat.com>
>>>> Cc: "Ovirt Users" <users at ovirt.org>
>>>> Sent: Wednesday, December 28, 2016 11:48:24 AM
>>>> Subject: Re: [ovirt-users] Issue with OVN/OVS and mandatory ovirtmgmt
>>>> network
>>>>
>>>> Hi Marcin
>>>> Yes, that is my issue. I don't want to let ovirt/vdsm see eth0 nor
>>>> ovsbridge0 since as soon as it sees them it messes up the network
>>>> config
>>>> so that the host will be unreachable.
>>>>
>>>> I have an internal OVS bridge called ovirtbridge which has a port with
>>>> IP address, but in the host network settings that port is not visible.
>>>> It doesn't help to name it ovirtmgmt.
>>>>
>>>> The engine is able to communicate with the host on the ip it has been
>>>> given, it's just that it believes that it HAS to have a ovirtmgmt
>>>> network which can't be on OVN.
>>>>
>>>> /Sverker
>>>>
>>>>
>>>> Den 2016-12-28 kl. 10:45, skrev Marcin Mirecki:
>>>>> Hi Sverker,
>>>>>
>>>>> The management network is mandatory on each host. It's used by the
>>>>> engine to communicate with the host.
>>>>> Looking at your description and the exception it looks like it is
>>>>> missing.
>>>>> The error is caused by not having any network for the host
>>>>> (network list retrieved in
>>>>> InterfaceDaoImpl.getHostNetworksByCluster -
>>>>> which
>>>>> gets all the networks on nics for a host from vds_interface table
>>>>> in the
>>>>> DB).
>>>>>
>>>>> Could you maybe create a virtual nic connected to ovsbridge0 (as I
>>>>> understand you
>>>>> have no physical nic available) and use this for the management
>>>>> network?
>>>>>
>>>>>> I then create a bridge for use with ovirt, with a private address.
>>>>> I'm not quite sure I understand. Is this yet another bridge
>>>>> connected to
>>>>> ovsbridge0?
>>>>> You could also attach the vnic for the management network here if
>>>>> need
>>>>> be.
>>>>>
>>>>> Please keep in mind that OVN has no use in setting up the management
>>>>> network.
>>>>> The OVN provider can only handle external networks, which can not
>>>>> be used
>>>>> for a
>>>>> management network.
>>>>>
>>>>> Marcin
>>>>>
>>>>>
>>>>> ----- Original Message -----
>>>>>> From: "Sverker Abrahamsson" <sverker at abrahamsson.com>
>>>>>> To: users at ovirt.org
>>>>>> Sent: Wednesday, December 28, 2016 12:39:59 AM
>>>>>> Subject: [ovirt-users] Issue with OVN/OVS and mandatory ovirtmgmt
>>>>>> network
>>>>>>
>>>>>>
>>>>>>
>>>>>> Hi
>>>>>> For long time I've been looking for proper support in ovirt for Open
>>>>>> vSwitch
>>>>>> so I'm happy that it is moving in the right direction. However,
>>>>>> there
>>>>>> seems
>>>>>> to still be a dependency on a ovirtmgmt bridge and I'm unable to
>>>>>> move
>>>>>> that
>>>>>> to the OVN provider.
>>>>>>
>>>>>> The hosting center where I rent hw instances has a bit special
>>>>>> network
>>>>>> setup,
>>>>>> so I have one physical network port with a /32 netmask and
>>>>>> point-to-point
>>>>>> config to router. The physical port I connect to a ovs bridge
>>>>>> which has
>>>>>> the
>>>>>> public ip. Since ovirt always messes up the network config when I've
>>>>>> tried
>>>>>> to let it have access to the network config for the physical
>>>>>> port, I've
>>>>>> set
>>>>>> eht0 and ovsbridge0 as hidden in vdsm.conf.
>>>>>>
>>>>>>
>>>>>> I then create a bridge for use with ovirt, with a private
>>>>>> address. With
>>>>>> the
>>>>>> OVN provider I am now able to import these into the engine and it
>>>>>> looks
>>>>>> good. When creating a VM I can select that it will have a vNic on
>>>>>> my OVS
>>>>>> bridge.
>>>>>>
>>>>>> However, I can't start the VM as an exception is thrown in the log:
>>>>>>
>>>>>> 2016-12-28 00:13:33,350 ERROR
>>>>>> [org.ovirt.engine.core.bll.RunVmCommand]
>>>>>> (default task-5) [3c882d53] Error during ValidateFailure.:
>>>>>> java.lang.NullPointerException
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.scheduling.policyunits.NetworkPolicyUnit.validateRequiredNetworksAvailable(NetworkPolicyUnit.java:140)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.scheduling.policyunits.NetworkPolicyUnit.filter(NetworkPolicyUnit.java:69)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.scheduling.SchedulingManager.runInternalFilters(SchedulingManager.java:597)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.scheduling.SchedulingManager.runFilters(SchedulingManager.java:564)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.scheduling.SchedulingManager.canSchedule(SchedulingManager.java:494)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.validator.RunVmValidator.canRunVm(RunVmValidator.java:133)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.RunVmCommand.validate(RunVmCommand.java:940)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.CommandBase.internalValidate(CommandBase.java:886)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.CommandBase.validateOnly(CommandBase.java:366)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.PrevalidatingMultipleActionsRunner.canRunActions(PrevalidatingMultipleActionsRunner.java:113)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.PrevalidatingMultipleActionsRunner.invokeCommands(PrevalidatingMultipleActionsRunner.java:99)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.PrevalidatingMultipleActionsRunner.execute(PrevalidatingMultipleActionsRunner.java:76)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.Backend.runMultipleActionsImpl(Backend.java:613)
>>>>>>
>>>>>> [bll.jar:]
>>>>>> at
>>>>>> org.ovirt.engine.core.bll.Backend.runMultipleActions(Backend.java:583)
>>>>>>
>>>>>> [bll.jar:]
>>>>>>
>>>>>>
>>>>>> Looking at that section of code where the exception is thrown, I see
>>>>>> that
>>>>>> it
>>>>>> iterates over host networks to find required networks, which I
>>>>>> assume is
>>>>>> ovirtmgmt. In the host network setup dialog I don't see any
>>>>>> networks at
>>>>>> all
>>>>>> but it lists ovirtmgmt as required. It also list the OVN networks
>>>>>> but
>>>>>> these
>>>>>> can't be statically assigned as they are added dynamically when
>>>>>> needed,
>>>>>> which is fine.
>>>>>>
>>>>>> I believe that I either need to remove ovirtmgmt network or
>>>>>> configure
>>>>>> that
>>>>>> it
>>>>>> is provided by the OVN provider, but neither is possible.
>>>>>> Preferably it
>>>>>> shouldn't be hardcoded which network is management and mandatory
>>>>>> but be
>>>>>> possible to configure.
>>>>>>
>>>>>> /Sverker
>>>>>> Den 2016-12-27 kl. 17:10, skrev Marcin Mirecki:
>>>>>>
>>>>>>
>>>>
>>> _______________________________________________
>>> Users mailing list
>>> Users at ovirt.org
>>> http://lists.ovirt.org/mailman/listinfo/users
>>>
>
> _______________________________________________
> Users mailing list
> Users at ovirt.org
> http://lists.ovirt.org/mailman/listinfo/users
More information about the Users
mailing list