Hello,

I am having a bit of a hard time with setting up the correct OVS
configuration or OS kernel settings to get working communication between
nodes in the same VLAN network. The structure of network is full mesh -
nodes are connected directly via 10G ethernet and I have also enabled RSTP
to get rid of sending packets to each other node. I'm using Proxmox as my
OS and until I started configuring VLANs the config with single IP address
assigned directly to OVS bridge worked perfectly. The idea behind adding
VLANs is to separate cluster traffic from storage because of different MTU.
My current configuration on all 3 nodes (except the different IP address
for vlan5 and vlan50) is (it does not include different MTUs as I can't get
working communication over VLANs at first):

auto lo
iface lo inet loopback

auto enp4s0f0
iface enp4s0f0 inet manual
        ovs_type OVSPort
        ovs_bridge vmbr1
        ovs_options tag=1 vlan_mode=native-untagged
other_config:rstp-enable=true other_config:rstp-path-cost=150
other_config:rstp-port-admin-edge=false
other_config:rstp-port-auto-edge=false other_config:rstp-port-mcheck=true

auto enp4s0f1
iface enp4s0f1 inet manual
        ovs_type OVSPort
        ovs_bridge vmbr1
        ovs_options tag=1 vlan_mode=native-untagged
other_config:rstp-enable=true other_config:rstp-path-cost=150
other_config:rstp-port-admin-edge=false
other_config:rstp-port-auto-edge=false other_config:rstp-port-mcheck=true

auto vmbr1
iface vmbr1 inet manual
        ovs_type OVSBridge
        ovs_ports enp4s0f0 enp4s0f1 vlan5 vlan50
        ovs_options rstp_enable=true other_config:rstp-priority=32768
other_config:rstp-forward-delay=4 other_config:rstp-max-age=6

auto vlan5
iface vlan5 inet static
        ovs_type OVSIntPort
        ovs_bridge vmbr1
        ovs_options tag=5
        address 10.0.0.1/24

auto vlan50
iface vlan50 inet static
        ovs_type OVSIntPort
        ovs_bridge vmbr1
        ovs_options tag=50
        address 192.168.0.1/24

When I ping other node (does not matter from which one; in this case I did
from 10.0.0.1 to 10.0.0.2) I always get the error Destination Host
Unreachable:

PING 10.0.0.2 (10.0.0.2) 56(84) bytes of data.
>From 10.0.0.1 icmp_seq=1 Destination Host Unreachable
>From 10.0.0.1 icmp_seq=2 Destination Host Unreachable
>From 10.0.0.1 icmp_seq=3 Destination Host Unreachable
^C
--- 10.0.0.2 ping statistics ---
6 packets transmitted, 0 received, +3 errors, 100% packet loss, time 5072ms

The output from ovs-vsctl show:
a852f7b8-332d-4eef-9f94-6cf6ce36a407
    Bridge vmbr1
        Port enp4s0f0
            tag: 1
            Interface enp4s0f0
        Port vmbr1
            Interface vmbr1
                type: internal
        Port vlan5
            tag: 5
            Interface vlan5
                type: internal
        Port enp4s0f1
            tag: 1
            Interface enp4s0f1
        Port vlan50
            tag: 50
            Interface vlan50
                type: internal
    ovs_version: "2.15.0"

I also tried to configure OVS directly via CLI without interfaces config
and there is no difference. I also created testing project with GNS3
including OVS docker image and configured three nodes with exact same
config via CLI as above and communication via VLANs work as expected. For
the record OVS docker image has bridge with netdev datapath, and I believe
this is what makes the difference there.

I already tried a lot of different changes to the config and with two nodes
(without RSTP) I get the VLANs working without any problem. As soon as I
add the third node, the communication between nodes is cut off.

I would really appreciate any help regarding this problem, as I'm trying to
resolve this for quite some time and sending this question here is the last
thing I did after trying everything else. Thank you in advance!
_______________________________________________
discuss mailing list
disc...@openvswitch.org
https://mail.openvswitch.org/mailman/listinfo/ovs-discuss

Reply via email to