Hi,
I want to test ovs in vdsm of release 4.0.2. And according Petr's helpful advice, created an ovs-based cluster and install vdsm to ovirt engine. But report a 'RTNETLINK answers: File exists' error as bellows.
It seems that vdsm want to add a default gw through ' ip -4 route add default via 192.168.0.1' ; but of course this gateway already exists, why the vdsm will still add the default gateway?
Error log:
------------------------------------------------------------ ------------------------------ ------------------------------ ------------------------------ ---
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,203::commands::68::ro ot::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip link set dev ovirtmgmt up (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,205::commands::86::ro ot::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,205::commands::68::ro ot::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip link set dev p3p1 up (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,207::commands::86::ro ot::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,207::commands::68::ro ot::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip addr flush dev ovirtmgmt scope global (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,209::commands::86::ro ot::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,209::commands::68::ro ot::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip -4 addr add dev ovirtmgmt 192.168.0.117/255.255.255.0 (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,211::commands::86::ro ot::(execCmd) SUCCESS: <err> = ''; <rc> = 0
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,211::commands::68::ro ot::(execCmd) /usr/bin/taskset --cpu-list 0-3 /sbin/ip -4 route add default via 192.168.0.1 (cwd None)
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,213::commands::86::ro ot::(execCmd) FAILED: <err> = 'RTNETLINK answers: File exists\n'; <rc> = 2
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,213::api::246::root:: (setupNetworks) Setting up network according to configuration: networks:{u'ovirtmgmt': {'remove': True}}, bondings:{}, options:{'connectivityCheck': 0, 'inRollback': True}
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,213::api::267::root:: (_setup_networks) Validating configuration
MainProcess|jsonrpc.Executor/4::DEBUG::2016-08-02 22:35:03,216::routes::75::root ::(get_gateway) The gateway 192.168.0.1 is duplicated for the device p3p1
MainProcess|jsonrpc.Executor/4::ERROR::2016-08-02 22:35:03,310::supervdsmServer: :96::SuperVdsm.ServerCallback: :(wrapper) Error in setupNetworks
Traceback (most recent call last):
File "/usr/share/vdsm/supervdsmServer", line 94, in wrapper
res = func(*args, **kwargs)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 248, in setupNetworks
_setup_networks(networks, bondings, options)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 275, in _setup_networks
netswitch.setup(networks, bondings, options, in_rollback)
File "/usr/lib64/python2.7/contextlib.py", line 35, in __exit__
self.gen.throw(type, value, traceback)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 199, in _rollback
six.reraise(excType, value, tb)
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 182, in _rollback
yield
File "/usr/lib/python2.7/site-packages/vdsm/network/api.py", line 275, in _setup_networks
netswitch.setup(networks, bondings, options, in_rollback)
File "/usr/lib/python2.7/site-packages/vdsm/network/netswitch.py" , line 119, in setup
_setup_ovs(ovs_nets, ovs_bonds, options, in_rollback)
File "/usr/lib/python2.7/site-packages/vdsm/network/netswitch.py" , line 165, in _setup_ovs
connectivity.check(options)
File "/usr/lib/python2.7/site-packages/vdsm/network/netconfpersis tence.py", line 243, in __exit__
raise ne.RollbackIncomplete(config_diff, ex_type, ex_value)
IPRoute2Error: ['RTNETLINK answers: File exists']
ip addr show
------------------------------------------------------------ ------------------------------ ------------------------------ ------------------------------ --------------
[root@server117 ~]# ip addr show
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
inet6 ::1/128 scope host
valid_lft forever preferred_lft forever
2: p3p1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast master ovirtmgmt state UP qlen 1000
link/ether 64:00:6a:23:b8:c0 brd ff:ff:ff:ff:ff:ff
3: em1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc mq master ovs-system state UP qlen 1000
link/ether a0:36:9f:09:36:c0 brd ff:ff:ff:ff:ff:ff
inet6 fe80::a236:9fff:fe09:36c0/64 scope link
valid_lft forever preferred_lft forever
4: em2: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
link/ether a0:36:9f:09:36:c1 brd ff:ff:ff:ff:ff:ff
5: wlp4s0: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN qlen 1000
link/ether 60:6d:c7:29:d7:55 brd ff:ff:ff:ff:ff:ff
6: ovs-system: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN
link/ether 42:ab:a1:1b:24:94 brd ff:ff:ff:ff:ff:ff
7: br0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UNKNOWN
link/ether a0:36:9f:09:36:c0 brd ff:ff:ff:ff:ff:ff
inet6 fe80::a236:9fff:fe09:36c0/64 scope link
valid_lft forever preferred_lft forever
8: ovirtmgmt: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP
link/ether 64:00:6a:23:b8:c0 brd ff:ff:ff:ff:ff:ff
inet 192.168.0.117/24 brd 192.168.0.255 scope global ovirtmgmt
valid_lft forever preferred_lft forever
9: ;vdsmdummy;: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN
link/ether 4e:ce:20:14:aa:24 brd ff:ff:ff:ff:ff:ff
How to solve it? Thank you.
Mark
Hope hear from you asap.