Daniel, glad you found out solution and thanks for sharing. Regards, Honza
> Daniel Dehennin <[email protected]> writes: > >> The routing is local to the VM using corosync to be sure packets >> are outputed by eth1. >> >>> - Most routers/clever switches blocks multicast/don't allow >>> multicast routing. I don't know exact vSwitch behavior >> >> Multicast packets work with Open vSwitch, the VM with only one >> network card is part of the corosync ring. >> >> I do not understand why on a VM with two network cards, corosync >> using the second card (eth1) and the default route using the >> fisrt one (eth0), the corosync can not integrate the ring. > > Using tcpdump I found the difference between single card VM and > multicard VM. > > When using multiple cards, I need to force the IGMP version since > my physical switches does not support IGMPv3. > > It looks like the kernel uses IGMPv3 to register any local IP > addresses to the multicast group. > > > Single card VM: > > No. Time Source Destination Protocol Info 2 > 0.000985 192.168.231.110 226.94.1.1 IGMPv2 Membership Report > group 226.94.1.1 > > Frame 2: 46 bytes on wire (368 bits), 46 bytes captured (368 bits) > Ethernet II, Src: RealtekU_03:6d:2d (52:54:00:03:6d:2d), Dst: > IPv4mcast_5e:01:01 (01:00:5e:5e:01:01) Internet Protocol Version 4, > Src: 192.168.231.110 (192.168.231.110), Dst: 226.94.1.1 > (226.94.1.1) Internet Group Management Protocol [IGMP Version: 2] > Type: Membership Report (0x16) Max Resp Time: 0,0 sec (0x00) Header > checksum: 0x06a0 [correct] Multicast Address: 226.94.1.1 > (226.94.1.1) > > Multicard VM: > > No. Time Source Destination Protocol Info 2 > 0.004419 192.168.231.111 224.0.0.22 IGMPv3 Membership Report > / Join group 226.94.1.1 for any sources > > Frame 2: 54 bytes on wire (432 bits), 54 bytes captured (432 bits) > Ethernet II, Src: RealtekU_dc:b6:92 (52:54:00:dc:b6:92), Dst: > IPv4mcast_16 (01:00:5e:00:00:16) Internet Protocol Version 4, Src: > 192.168.231.111 (192.168.231.111), Dst: 224.0.0.22 (224.0.0.22) > Internet Group Management Protocol [IGMP Version: 3] Type: > Membership Report (0x22) Header checksum: 0xf69e [correct] Num > Group Records: 1 Group Record : 226.94.1.1 Change To Exclude Mode > Record Type: Change To Exclude Mode (4) Aux Data Len: 0 Num Src: 0 > Multicast Address: 226.94.1.1 (226.94.1.1) > > So I force the IGMP version for all interfaces with the following: > > sysctl -w net.ipv4.conf.all.force_igmp_version=2 > > Now my dual card VM is part of the ring: > > root@nebula3:~# corosync-quorumtool Quorum information > ------------------ Date: Fri Nov 7 16:32:34 2014 > Quorum provider: corosync_votequorum Nodes: 5 Node ID: > 1084811080 Ring ID: 20624 Quorate: Yes > > Votequorum information ---------------------- Expected votes: 5 > Highest expected: 5 Total votes: 5 Quorum: 3 Flags: > Quorate WaitForAll LastManStanding > > Membership information ---------------------- Nodeid Votes > Name 1084811078 1 nebula1.eole.lan 1084811079 1 > nebula2.eole.lan 1084811080 1 nebula3.eole.lan (local) > 1084811118 1 quorum.eole.lan 1084811119 1 > one-frontend.eole.lan > > > > _______________________________________________ Openais mailing > list [email protected] > https://lists.linuxfoundation.org/mailman/listinfo/openais > _______________________________________________ Openais mailing list [email protected] https://lists.linuxfoundation.org/mailman/listinfo/openais
