Bug 1317541

Summary: Incorrect bridge configuration after "Sync network"
Product: [oVirt] ovirt-hosted-engine-setup Reporter: jet.ovirt
Component: NetworkAssignee: Yedidyah Bar David <didi>
Status: CLOSED DUPLICATE QA Contact: Ilanit Stein <istein>
Severity: medium Docs Contact:
Priority: unspecified    
Version: 1.3.3.2CC: bugs
Target Milestone: ---Flags: rule-engine: planning_ack?
rule-engine: devel_ack?
rule-engine: testing_ack?
Target Release: ---   
Hardware: Unspecified   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2016-03-14 14:03:32 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: Virt RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description jet.ovirt 2016-03-14 13:51:08 UTC
Description of problem:
We have a bridge configuration problem when deploying Virtualization Manager in hosted-engine environment. All configuration settings in "hosted-engine-setup --deploy" were made successfully. We used vlan Y as management network (select "enp49s0f0.Y" in deploy progress). But there was an error "out-of-sync" in "Setup Host Networks" between "enp49s0f0.Y" and "ovirtmgmt" in Virtualization Manager. There was no flag "Enable VLAN tagging" and vlan Y in "Edit Logical Network" for ovirtmgmt. Accoding to administration guide we set "Sync network" flag in Edit Management Network for "ovirtmgmt". When "Sync network" successfully completed there was trunk interface without tag in ovirtmgmt bridge. 

in /var/log/vdsm/supervdsm.log after deploy:
..
MainProcess|Thread-17::DEBUG::2016-03-13 21:54:44,872::ifcfg::379::root::(_atomicBackup) Backed up /etc/sysconfig/network-scripts/ifcfg-enp49s0f0.Y
MainProcess|Thread-17::DEBUG::2016-03-13 21:54:44,873::ifcfg::416::root::(_persistentBackup) backing up ifcfg-enp49s0f0.Y: VLAN=yes
TYPE=Vlan
DEVICE=enp49s0f0.Y
PHYSDEV=enp49s0f0
VLAN_ID=Y
REORDER_HDR=0
BOOTPROTO=none
IPADDR=X.X.X.X
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=no
NAME=enp49s0f0.Y
UUIccoding toyin D=5c742548-2779-40e1-aac2-74e53ae78193
ONBOOT=yes
NM_CONTROLLED=no

MainProcess|Thread-17::DEBUG::2016-03-13 21:54:44,873::ifcfg::321::root::(writeBackupFile) Persistently backed up /var/lib/vdsm/netconfback/ifcfg-enp49s0f0.Y (until next 'set safe config')
MainProcess|Thread-17::DEBUG::2016-03-13 21:54:44,873::ifcfg::487::root::(writeConfFile) Writing to file /etc/sysconfig/network-scripts/ifcfg-enp49s0f0.Y configuration:
# Generated by VDSM version 4.17.18-1.el7
DEVICE=enp49s0f0.Y
VLAN=yes
BRIDGE=ovirtmgmt
ONBOOT=yes
NM_CONTROLLED=no
IPV6INIT=no
HOTPLUG=no
..
MainProcess|Thread-17::INFO::2016-03-13 21:54:47,686::netconfpersistence::131::root::(save) Saved new config RunningConfig({'ovirtmgmt': {'nic': 'enp49s0f0', 'vlan': Y, 'ipaddr': 'X.X.X.X', 'netmask': '255.255.255.0', 'bootproto': 'none', 'gateway': '', 'defaultRoute': True}}, {}) to /var/run/vdsm/netconf/nets/ and /var/run/vdsm/netconf/bonds/

This is correct configuration (enp49s0f0.Y is in ovirtmgmt bridge).  

After applying "Sync network":
..
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,048::supervdsmServer::114::SuperVdsm.ServerCallback::(wrapper) call setupNetworks with ({u'ovirtmgmt': {u'nic': u'enp49s0f0', u'ipaddr': u'X.X.X.X', u'mtu': u'1500', u'netmask': u'255.255.255.0', u'STP': u'no', u'bridged': u'true'}}, {}, {u'connectivityCheck': u'true', u'connectivityTimeout': 120}) {}
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,049::api::886::setupNetworks::(setupNetworks) Setting up network according to configuration: networks:{u'ovirtmgmt': {u'nic': u'enp49s0f0', u'ipaddr': u'X.X.X.X', u'mtu': u'1500', u'netmask': u'255.255.255.0', u'STP': u'no', u'bridged': u'true'}}, bondings:{}, options:{u'connectivityCheck': u'true', u'connectivityTimeout': 120}
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,049::api::890::root::(setupNetworks) Validating configuration
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,052::libvirtconnection::160::root::(get) trying to connect libvirt
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,062::netinfo::463::root::(_dhcp_used) DHCPv6 configuration not specified for ovirtmgmt.
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,078::api::900::setupNetworks::(setupNetworks) Applying...
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:51,079::netconfpersistence::62::root::(setNetwork) Adding network ovirtmgmt({'nic': 'enp49s0f0', 'vlan': 'Y', 'ipaddr': '1X.X.X.X', 'mtu': '1500', 'netmask': '255.255.255.0', 'dhcpv6': False, 'stp': False, 'bridged': True, 'defaultRoute': True, 'bootproto': 'none'})
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:51,079::netconfpersistence::73::root::(setBonding) Adding bond0({'nics': ['enp1s0f0', 'enp1s0f1'], 'options': 'miimon=1 mode=1'})
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,080::api::909::setupNetworks::(setupNetworks) Removing network u'ovirtmgmt'
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:51,081::api::462::root::(_delNetwork) Removing network ovirtmgmt with vlan=enp49s0f0.Y, bonding=None, nics=['enp49s0f0'],keep_bridge=True options={}
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,081::utils::669::root::(execCmd) /usr/bin/taskset --cpu-list 0-23 /sbin/ip link set dev enp49s0f0.Y nomaster (cwd None)
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,086::utils::687::root::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,087::ifcfg::332::root::(_atomicNetworkBackup) Backed up ovirtmgmt
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:51,090::api::495::root::(_delNetwork) Removing network entity enp49s0f0.Y
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,090::utils::669::root::(execCmd) /usr/bin/taskset --cpu-list 0-23 /usr/sbin/ifdown enp49s0f0.Y (cwd None)
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,395::utils::687::root::(execCmd) SUCCESS: <err> = 'device enp49s0f0.Y is not a slave of ovirtmgmt\n'; <rc> = 0
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,395::ifcfg::379::root::(_atomicBackup) Backed up /etc/sysconfig/network-scripts/ifcfg-enp49s0f0.Y
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,396::ifcfg::289::root::(_removeFile) Removed file /etc/sysconfig/network-scripts/ifcfg-enp49s0f0.Y
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:51,397::utils::669::root::(execCmd) /usr/bin/taskset --cpu-list 0-23 /usr/sbin/ifdown enp49s0f0 (cwd None)

MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:52,610::netconfpersistence::67::root::(removeNetwork) Removing network ovirtmgmt
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:52,653::api::765::setupNetworks::(_add_missing_networks) Adding network u'ovirtmgmt'
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:52,654::api::281::root::(_addNetwork) validating network...
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:52,654::api::301::root::(_addNetwork) Adding network ovirtmgmt with vlan=None, bonding=None, nics=[u'enp49s0f0'], bondingOptions=None, mtu=1500, bridged=True, defaultRoute=True,options={u'STP': u'no', 'implicitBonding': True}
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:52,654::api::318::root::(_addNetwork) Bridge ovirtmgmt already exists.
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:52,654::ifcfg::379::root::(_atomicBackup) Backed up /etc/sysconfig/network-scripts/ifcfg-ovirtmgmt
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:52,655::utils::669::root::(execCmd) /usr/bin/taskset --cpu-list 0-23 /sbin/ip link set dev vnet0 mtu 1500 (cwd None)
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:52,658::api::331::root::(_addNetwork) Configuring device enp49s0f0
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:52,676::ifcfg::487::root::(writeConfFile) Writing to file /etc/sysconfig/network-scripts/ifcfg-enp49s0f0 configuration:
# Generated by VDSM version 4.17.18-1.el7
DEVICE=enp49s0f0
HWADDR=00:1b:21:9e:26:ce
BRIDGE=ovirtmgmt
ONBOOT=yes
MTU=1500
NM_CONTROLLED=no
IPV6INIT=no

MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:52,680::utils::669::root::(execCmd) /usr/bin/taskset --cpu-list 0-23 /usr/sbin/ifdown enp49s0f0 (cwd None)
MainProcess|jsonrpc.Executor/1::DEBUG::2016-03-13 22:52:53,146::utils::687::root::(execCmd) SUCCESS: <err> = 'device enp49s0f0 is not a slave of ovirtmgmt\n'; <rc> = 0
..
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:53,436::netconfpersistence::62::root::(setNetwork) Adding network ovirtmgmt({'nic': u'enp49s0f0', u'ipaddr': u'X.X.X.X', u'mtu': u'1500', u'netmask': u'255.255.255.0', u'STP': u'no', u'bridged': u'true'})
..
MainProcess|jsonrpc.Executor/1::INFO::2016-03-13 22:52:54,453::netconfpersistence::131::root::(save) Saved new config RunningConfig({u'ovirtmgmt': {'nic': u'enp49s0f0', u'ipaddr': u'X.X.X.X', u'mtu': u'1500', u'netmask': u'255.255.255.0', u'STP': u'no', u'bridged': u'true'}}, {}) to /var/run/vdsm/netconf/nets/ and /var/run/vdsm/netconf/bonds/

Now we have incorrect configuration. enp49s0f0 is in ovirtmgmt bridge.

Version-Release number of selected component (if applicable):
ovirt-hosted-engine-setup	1.3.2.3-1.el7.centos
ovirt-engine	3.6.2.6-1.el7.centos
vdsm	4.17.18-1.el7

How reproducible:
Always in mentioned above versions. We cann't reproduce this error in latest versions ovirt-hosted-engine-setup, ovirt-engine and vdsm because after applying "Sync network" we got white window. Nothing was changed in network and bridge configuration.

Steps to Reproduce:
1. Deploy hosted-engine and ovirt-engine with tagged management vlan
2. Sync network
3.

Actual results:
trunk interface in the ovirtmgmt

Expected results:
tagged interface in the ovirtmgmt 

Additional info:

Comment 1 Yedidyah Bar David 2016-03-14 14:03:32 UTC
Seems like a duplicate of bug 1291083 . Can you please verify with 

(In reply to jet.ovirt from comment #0)
> How reproducible:
> Always in mentioned above versions. We cann't reproduce this error in latest
> versions ovirt-hosted-engine-setup, ovirt-engine and vdsm because after
> applying "Sync network" we got white window. Nothing was changed in network
> and bridge configuration.

Indeed this seems a duplicate of bug 1291083 .

Please open a new bug about the white window you get, and attach all relevant logs (setup, hosted-engine setup, engine, vdsm).

*** This bug has been marked as a duplicate of bug 1291083 ***