I have been working with SLES, DRBD, and XEN since SLES 10. The normal practice I use to configure DRBD is to use a separate network card (dedicated NIC on each of 2 servers). So, each server has 2 network cards, 1 for normal network visibility/functionality and the other just for DRBD connectivity (direct between the 2 servers).
This has worked fine right up to SLES 11 SP1 + HAE. However, in SLES 11 SP2 + HAE, DRBD partitions on each server will not see each other (get stuck at WFConnect state) with each server showing that the other is unknown when running cat /proc/drbd - this happens if I use an IP address other than the 'live' one I used when I built the server - the one with visibility to the network in general. I have swapped the 2 NIC's functionality by making the dedicated one the live one and vice versa - and re-configured the IP addresses accordingly. What I found is that the IP addresses still gave the same outcome as before - only the original live one allowed DRBD to connect to the other node. It seems that the correct functionality follows the IP address and not the network cards in use.
I have the firewall completely disabled and find it very hard now to understand where the issue is. I have set up the server to run with the XEN kernel and DRBD is configured for this setup.
I never saw this issue with the previous versions of SLES - when needed to alter the IP address used by DRBD, simply change it in the DRBD.conf file - making sure that they are configured and ping is successful using them between the servers.
Has anybody got any insight on why this is happenening? The servers have been updated online.