Hi Dominik
That is my issue, I don't get to where I can get the ovirtmgmt bridge
established because vdsm insists on creating it. It used to be possible
to create that bridge statically and vdsm would just skip it but seems
to be broken now.
If it would be possible to use OVN for the management network that would
solve my issue and would be the preferable solution, but as you write
that isn't possible which was what I suspected.
Do you have any other suggestion on how to solve this issue? That I get
the external interface untagged and the internal network tagged is not
possible to change.
/Sverker
Den 2020-09-03 kl. 10:52, skrev Dominik Holler:
On Wed, Sep 2, 2020 at 10:38 PM Sverker Abrahamsson via Users
<users(a)ovirt.org <mailto:users@ovirt.org>> wrote:
Well, unforturnatly I don't have a choise since it is out of my
control.
I only have one physical network port where the external traffic is
untagged and the internal vlan is tagged. If I could run with OVN
OVN is for VM traffic only, not usable for the management network.
instead I wouldn't need that tagged vlan, but I haven't been able
to get
that to work neither.
Please let us know if OVN does not work for VM traffic for you.
It's perfectly possible to have both tagged and untagged traffic
on the
same switch port, issue is that vdsm tries to take control over the
network without being able to be flexible enough.. I'm attempting
now to
have ovirtmgmt bridge created before, that used to be possible but
according to previous mails on the list it went broken somewhere
at 4.x.
/Sverker
Den 2020-09-02 kl. 21:39, skrev Strahil Nikolov:
> Switchports can either be tagged or untagged.
> I'm not sure that your setup is supported at all.
>
> Best Regards,
> Strahil Nikolov
>
>
>
>
>
>
> В сряда, 2 септември 2020 г., 20:41:57 Гринуич+3, Sverker
Abrahamsson via Users <users(a)ovirt.org <mailto:users@ovirt.org>>
написа:
>
>
>
>
>
> Pretty formatting the "desired state" it seems that vdsm tries
to remove
> the ip of my underlying interface, that is enp4s0:
>
> {
> 'interfaces': [{
> 'name': 'enp4s0',
> 'state': 'up',
> 'mtu': 1500
> }, {
> 'vlan': {
> 'id': 4000,
> 'base-iface': 'enp4s0'
> },
> 'name': 'enp4s0.4000',
> 'type': 'vlan',
> 'state': 'up',
> 'mtu': 1500,
> 'ipv4': {
> 'enabled': False
> },
> 'ipv6': {
> 'enabled': False
> }
> }, {
> 'name': 'ovirtmgmt',
> 'type': 'linux-bridge',
> 'state': 'up',
> 'mtu': 1500,
> 'bridge': {
> 'port': [{
> 'name': 'enp4s0.4000'
> }
> ],
> 'options': {
> 'stp': {
> 'enabled': False
> }
> }
> },
> 'ipv4': {
> 'enabled': True,
> 'address': [{
> 'ip': '172.27.1.1',
> 'prefix-length': 24
> }
> ],
> 'dhcp': False
> },
> 'ipv6': {
> 'enabled': False
> }
> }
> ],
> 'dns-resolver': {
> 'config'
> : {
> 'server': ['213.133.98.98']
> }
> }
> }
>
Thanks, this is helpful information.
Can you please share the getCapabilities result sent from vdsm to
Engine directly before the setupNetworks request,
and the parameters of the setupNetworks request from Engine to vdsm?
Both are in the vdsm.log during adding the host.
>
> This is my interfaces before vdsm attemtpts to change the config:
>
> enp4s0: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
> inet 144.76.84.73 netmask 255.255.255.255 broadcast
0.0.0.0
> inet6 fe80::62a4:4cff:fee9:4ac prefixlen 64 scopeid
0x20<link>
> inet6 2a01:4f8:192:1148::2 prefixlen 64 scopeid
0x0<global>
> ether 60:a4:4c:e9:04:ac txqueuelen 1000 (Ethernet)
> RX packets 293442 bytes 385541799 (367.6 MiB)
> RX errors 0 dropped 0 overruns 0 frame 0
> TX packets 91095 bytes 31160348 (29.7 MiB)
> TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
> device interrupt 17 memory 0xf7d00000-f7d20000
>
> enp4s0.4000: flags=4163<UP,BROADCAST,RUNNING,MULTICAST> mtu 1500
> inet 172.27.1.1 netmask 255.255.255.0 broadcast
172.27.1.255
> inet6 fe80::62a4:4cff:fee9:4ac prefixlen 64 scopeid
0x20<link>
> ether 60:a4:4c:e9:04:ac txqueuelen 1000 (Ethernet)
> RX packets 0 bytes 0 (0.0 B)
> RX errors 0 dropped 0 overruns 0 frame 0
> TX packets 13 bytes 938 (938.0 B)
> TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
>
> I.e. enp4s0 is the external interface that must not be changed,
bridge
> must be created on the vlan interface. I would prefer to create the
> bridge manually and not through vdsm if that is possible.
>
> /Sverker
>
> Den 2020-09-02 kl. 19:14, skrev Sverker Abrahamsson via Users:
>> Hi,
>> I'm attempting to install hosted engine but getting this failure:
>>
>> [ ERROR ] fatal: [localhost]: FAILED! => {"changed": false,
"msg":
>> "The host has been set in non_operational status, deployment
errors:
>> code 505: Host
h1-mgmt.limetransit.com
<
http://h1-mgmt.limetransit.com> installation failed. Failed to
>> configure management network on the host., code 1120: Failed to
>> configure management network on host
h1-mgmt.limetransit.com
<
http://h1-mgmt.limetransit.com> due to
>> setup networks failure., code 9000: Failed to verify Power
Management
>> configuration for Host
h1-mgmt.limetransit.com
<
http://h1-mgmt.limetransit.com>., code 10802: VDSM
>>
h1-mgmt.limetransit.com <
http://h1-mgmt.limetransit.com>
command HostSetupNetworksVDS failed: Internal
>> JSON-RPC error: {'reason': 'Unexpected failure of libnm when
running
>> the mainloop: run execution'}, fix accordingly and re-deploy."}
>>
>> Looking in vdsm.log I find this which I believe is the root cause:
>>
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>>
16:38:25,897::supervdsm_server::93::SuperVdsm.ServerCallback::(wrapper)
>> call setupNetworks with ({'ovirtmgmt': {'vlan':
'4000', 'netmask':
>> '255.255.255.0', 'ipv6autoconf': False,
>> 'nic': 'enp4s0', 'bridged': 'true',
'ipaddr': '172.27.1.1',
>> 'defaultRoute': True, 'dhcpv6': False, 'STP':
'no', 'mtu': 1500,
>> 'switch': 'legacy'}}, {}, {'connectivityTimeout':
120,
>> 'commitOnSuccess': True, 'connectivityCh
>> eck': 'true'}) {}
>> MainProcess|jsonrpc/0::INFO::2020-09-02
>> 16:38:25,897::api::220::root::(setupNetworks) Setting up network
>> according to configuration: networks:{'ovirtmgmt': {'vlan':
'4000',
>> 'netmask': '255.255.255.0', 'ipv6autoconf': Fal
>> se, 'nic': 'enp4s0', 'bridged': 'true',
'ipaddr': '172.27.1.1',
>> 'defaultRoute': True, 'dhcpv6': False, 'STP':
'no', 'mtu': 1500,
>> 'switch': 'legacy'}}, bondings:{},
options:{'connectivityTimeout':
>> 120, 'commitOnSuccess':
>> True, 'connectivityCheck': 'true'}
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:25,902::cmdutils::130::root::(exec_cmd) /sbin/tc qdisc
show (cwd
>> None)
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:25,906::cmdutils::138::root::(exec_cmd) SUCCESS: <err> =
b'';
>> <rc> = 0
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:25,945::vsctl::74::root::(commit) Executing commands:
>> /usr/bin/ovs-vsctl --timeout=5 --oneline --format=json -- list
Bridge
>> -- list Port -- list Interface
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:25,945::cmdutils::130::root::(exec_cmd) /usr/bin/ovs-vsctl
>> --timeout=5 --oneline --format=json -- list Bridge -- list Port --
>> list Interface (cwd None)
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:25,952::cmdutils::138::root::(exec_cmd) SUCCESS: <err> =
b'';
>> <rc> = 0
>> MainProcess|jsonrpc/0::INFO::2020-09-02
>> 16:38:25,957::netconfpersistence::58::root::(setNetwork) Adding
>> network ovirtmgmt({'vlan': 4000, 'netmask':
'255.255.255.0',
>> 'ipv6autoconf': False, 'nic': 'enp4s0',
'bridged': True
>> , 'ipaddr': '172.27.1.1', 'defaultRoute': True,
'dhcpv6': False,
>> 'mtu': 1500, 'switch': 'legacy', 'stp':
False, 'bootproto': 'none',
>> 'nameservers': ['213.133.98.98']})
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:25,958::commands::153::common.commands::(start)
/usr/bin/taskset
>> --cpu-list 0-7 /usr/libexec/vdsm/hooks/before_network_setup/50_fcoe
>> (cwd None)
>> MainProcess|jsonrpc/0::INFO::2020-09-02
>> 16:38:26,154::hooks::122::root::(_runHooksDir)
>> /usr/libexec/vdsm/hooks/before_network_setup/50_fcoe: rc=0 err=b''
>> MainProcess|jsonrpc/0::INFO::2020-09-02
>> 16:38:26,155::configurator::195::root::(_setup_nmstate) Processing
>> setup through nmstate
>> MainProcess|jsonrpc/0::INFO::2020-09-02
>> 16:38:26,175::configurator::197::root::(_setup_nmstate) Desired
state:
>> {'interfaces': [{'name': 'enp4s0', 'state':
'up', 'mtu': 1500},
>> {'vlan': {'id': 4000, 'base-iface':
'enp4s0'}
>> , 'name': 'enp4s0.4000', 'type': 'vlan',
'state': 'up', 'mtu':
1500,
>> 'ipv4': {'enabled': False}, 'ipv6':
{'enabled': False}}, {'name':
>> 'ovirtmgmt', 'type': 'linux-bridge',
'state': 'up', 'mtu': 1500,
>> 'bridge': {'port': [
>> {'name': 'enp4s0.4000'}], 'options': {'stp':
{'enabled': False}}},
>> 'ipv4': {'enabled': True, 'address': [{'ip':
'172.27.1.1',
>> 'prefix-length': 24}], 'dhcp': False}, 'ipv6':
{'enabled':
False}}],
>> 'dns-resolver': {'config'
>> : {'server': ['213.133.98.98']}}}
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:26,217::checkpoint::121::root::(create) Checkpoint
>> /org/freedesktop/NetworkManager/Checkpoint/1 created for all
devices: 60
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:26,218::netapplier::239::root::(_add_interfaces) Adding new
>> interfaces: ['ovirtmgmt']
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:26,221::netapplier::251::root::(_edit_interfaces) Editing
>> interfaces: ['enp4s0.4000', 'enp4s0']
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:26,224::nmclient::136::root::(execute_next_action)
Executing NM
>> action: func=add_connection_async
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:26,231::connection::329::root::(_add_connection_callback)
>> Connection adding succeeded: dev=ovirtmgmt
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:26,232::nmclient::136::root::(execute_next_action)
Executing NM
>> action: func=commit_changes_async
>> MainProcess|jsonrpc/0::ERROR::2020-09-02
>> 16:38:26,233::nmclient::200::root::(quit) NM main-loop aborted:
>> Connection update failed: error=nm-connection-error-quark:
>> ipv6.gateway: gateway cannot be set if there are no addresses
>> configured (7), dev=enp4s0/<enum NM_DEVICE_STATE_ACTIVATED of type
>> NM.DeviceState>
>> MainProcess|jsonrpc/0::DEBUG::2020-09-02
>> 16:38:26,246::checkpoint::164::root::(rollback) Checkpoint
>> /org/freedesktop/NetworkManager/Checkpoint/1 rollback executed:
>>
dbus.Dictionary({dbus.String('/org/freedesktop/NetworkManager/Devices/6'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/7'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/8'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/9'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/3'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/2'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/4'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/1'):
>> dbus.UInt32(0),
>> dbus.String('/org/freedesktop/NetworkManager/Devices/5'):
>> dbus.UInt32(0)}, signature=dbus.Signature('su'))
>> MainProcess|jsonrpc/0::ERROR::2020-09-02
>>
16:38:31,251::supervdsm_server::97::SuperVdsm.ServerCallback::(wrapper)
>> Error in setupNetworks
>> Traceback (most recent call last):
>> File
"/usr/lib/python3.6/site-packages/vdsm/supervdsm_server.py",
>> line 95, in wrapper
>> res = func(*args, **kwargs)
>> File "/usr/lib/python3.6/site-packages/vdsm/network/api.py",
line
>> 241, in setupNetworks
>> _setup_networks(networks, bondings, options, net_info)
>> File "/usr/lib/python3.6/site-packages/vdsm/network/api.py",
line
>> 266, in _setup_networks
>> networks, bondings, options, net_info, in_rollback
>> File
>>
"/usr/lib/python3.6/site-packages/vdsm/network/netswitch/configurator.py",
>> line 154, in setup
>> _setup_nmstate(networks, bondings, options, in_rollback)
>> File
>>
"/usr/lib/python3.6/site-packages/vdsm/network/netswitch/configurator.py",
>> line 199, in _setup_nmstate
>> nmstate.setup(desired_state, verify_change=not in_rollback)
>> File
"/usr/lib/python3.6/site-packages/vdsm/network/nmstate.py",
>> line 63, in setup
>> state_apply(desired_state, verify_change=verify_change)
>> File
"/usr/lib/python3.6/site-packages/libnmstate/deprecation.py",
>> line 40, in wrapper
>> return func(*args, **kwargs)
>> File
"/usr/lib/python3.6/site-packages/libnmstate/nm/nmclient.py",
>> line 96, in wrapped
>> ret = func(*args, **kwargs)
>> File
"/usr/lib/python3.6/site-packages/libnmstate/netapplier.py",
>> line 73, in apply
>> state.State(desired_state), verify_change, commit,
rollback_timeout
>> File
"/usr/lib/python3.6/site-packages/libnmstate/netapplier.py",
>> line 163, in _apply_ifaces_state
>> con_profiles=ifaces_add_configs + ifaces_edit_configs,
>> File "/usr/lib64/python3.6/contextlib.py", line 88, in
__exit__
>> next(self.gen)
>> File
"/usr/lib/python3.6/site-packages/libnmstate/netapplier.py",
>> line 232, in _setup_providers
>> mainloop.run(timeout=MAINLOOP_TIMEOUT)
>> File
"/usr/lib/python3.6/site-packages/libnmstate/nm/nmclient.py",
>> line 177, in run
>> f"Unexpected failure of libnm when running the mainloop:
{err}"
>> libnmstate.error.NmstateLibnmError: Unexpected failure of libnm
when
>> running the mainloop: run execution
>>
>> My host have a main network interface and a vlan interface on
the same
>> physical interface which is an internal management network which
>> should be used as management network. The vlan interface
doesn't have
>> any ipv6 interface, but nmclient fails on setting ipv6 gateway.
This
>> seems like a bug?
>>
>> /Sverker
>>
>> _______________________________________________
>> discuss mailing list
>> discuss(a)openvswitch.org <mailto:discuss@openvswitch.org>
>>
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss
>> _______________________________________________
>> Users mailing list -- users(a)ovirt.org <mailto:users@ovirt.org>
>> To unsubscribe send an email to users-leave(a)ovirt.org
<mailto:users-leave@ovirt.org>
>> Privacy Statement:
https://www.ovirt.org/privacy-policy.html
>> oVirt Code of Conduct:
>>
https://www.ovirt.org/community/about/community-guidelines/
>> List Archives:
>>
https://lists.ovirt.org/archives/list/users@ovirt.org/message/R4YSTOQM7I4...
> _______________________________________________
> Users mailing list -- users(a)ovirt.org <mailto:users@ovirt.org>
> To unsubscribe send an email to users-leave(a)ovirt.org
<mailto:users-leave@ovirt.org>
> Privacy Statement:
https://www.ovirt.org/privacy-policy.html
> oVirt Code of Conduct:
https://www.ovirt.org/community/about/community-guidelines/
> List Archives:
>
https://lists.ovirt.org/archives/list/users@ovirt.org/message/UMXFPVLJHYO...
>
_______________________________________________
Users mailing list -- users(a)ovirt.org <mailto:users@ovirt.org>
To unsubscribe send an email to users-leave(a)ovirt.org
<mailto:users-leave@ovirt.org>
Privacy Statement:
https://www.ovirt.org/privacy-policy.html
oVirt Code of Conduct:
https://www.ovirt.org/community/about/community-guidelines/
List Archives:
https://lists.ovirt.org/archives/list/users@ovirt.org/message/RQIPLZGVOHX...