[ClusterLabs] Samba failover and Windows access - Solved

Dave Withheld davewithheld at hotmail.com
Sat Dec 17 20:47:11 EST 2022


Fixed!  Turns out I had the subnet mask wrong on the IPaddr2 resource, as well as no broadcast address.  The old server had the virtual IP on the same subnet and simply used the same mask and BA, but the new server has its LAN on a different subnet so I had to specify the mask (which I got wrong on the initial config) and had to specify the BA.  Now failovers are transparent to all hosts and I'm calling the project done!  Thanks to those who got me thinking!

Dave D.
________________________________
From: Users <users-bounces at clusterlabs.org> on behalf of Dave Withheld <davewithheld at hotmail.com>
Sent: Saturday, December 10, 2022 5:39 PM
To: Cluster Labs - All topics related to open-source clustering welcomed <users at clusterlabs.org>
Subject: Re: [ClusterLabs] Samba failover and Windows access

On Thu, Dec 8, 2022 at 8:03 AM Dave Withheld <davewithheld at hotmail.com<mailto:davewithheld at hotmail.com>> wrote:
In our production factory, we run a 2-node cluster on CentOS 8 with pacemaker, a virtual IP, and drbd for shared storage with samba (among other services) running as a resource on the active node.  Everything works great except when we fail over.  All resources are moved to the other node and start just fine, but Windows hosts that have connections to the samba shares all have to be rebooted before they can reconnect.  Clients that were not connected can connect.  We have samba configured for only SMB1 protocol and all Windows clients are configured to allow it.

>>Did you test if it is samba/smb-client related or windows IP-stack related - like ping the samba-host from the windows machines?
>>Is the virtual IP using the physical MAC address of the interface - like windows missing the gratuitous ARP?

Not just ping, but several other services (custom daemons, http, Mariadb, etc) all connect seamlessly.  It's only the samba connections that don't (obviously ping works, too).

As for the MAC address, it is the same:  ip a shows two IPs for the interface but only one link/ether.

This server (2-node cluster) is replacing an old system I built in 2008, which used heartbeat (no pacemaker or corosync) and had a much older version of samba.  It had no problem failing over:  mapped drives on the Windows clients worked just as well after a failover as they did before and UNCs worked seamlessly, as well.  In fact, the few times it failed over, no one even knew it until we saw a message in our emails sent by the servers when the resources moved.

On the old system, ifconfig showed an eth0 interface, as well as an eth0:0 interface on the active node which the virtual IP.  The docs called the virtual IP an "alias".  On the new server, ifconfig does not show the virtual IP at all and I have to use "ip a" to see the two addresses on one interface.  I tried using the command "ifconfig eno1:0 XXX.XXX.XXX.XXX up" to manually add an IP in a similar manner to the old server and the address I added did show up in ifconfig.  The point is, the virtual address is being added differently and I suspect the Windows clients treat it differently.

I will be looking closely at the resource agents and see how they compare.  If any of this rings a bell, I would love to hear more from anyong with experience.  Thanks!

>>Klaus
Maybe this is a question for the samba folks, but thought I'd try here first since it's only a problem when the other node takes over the samba resource.  Anyone seen this problem and solved it?
_______________________________________________
Manage your subscription:
https://lists.clusterlabs.org/mailman/listinfo/users

ClusterLabs home: https://www.clusterlabs.org/
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.clusterlabs.org/pipermail/users/attachments/20221218/10eef4c9/attachment.htm>


More information about the Users mailing list