I am using Windows Network Load Balancing (according to this), the main purpose is building a High Availability (failover) for my RD Gateways, but I can't get the cluster worked properly. I have two nodes(both are VM, RD Gateway installed and only one NIC) in the NLB cluster:
Cluster Name: rdgw (virtual-ip: 192.168.0.18)
Host-1: rdgw-1 (192.168.0.21) (NLB installed, RD Gateway Server Farm joined, static IP, Converged)
Host-2: rdgw-2 (192.168.0.16) (NLB installed, RD Gateway Server Farm joined, static IP, Converged)
Custer Parameter -> Cluster Operation Mode: Multicast
Port Rule -> Filtering Mode: Single Host
Everything could be working when one of the two nodes is down!!
I already read this thread (NLB does not work when two nodes are present), but I don't think we have the same problem, cause I run all my nodes on OpenStack, so the Virtual-IP can map to the MAC addresses correctly.
I still have no idea how to solve my problem, below is what I have done for troubleshooting:
1. host-1 and host-2 can ping each other
2. From outside, ping 192.168.0.18 => DUP (two nodes respond to ICMP message, refer to this but doesn't work)
3. From outside, telnet 192.168.0.18 443 => Connection closed by foreign host
4. Check ipconfig /all in two nodes => Both nodes have two IP addresses, one is the original IP, another is Virtual-IP
IPv4 Address ......... 192.168.0.21(Prefered) Subnet Mask .......... 255.255.0.0 IPv4 Address ......... 192.168.0.18(Prefered) Subnet Mask .......... 255.255.0.0 Default Gateway ...... 192.168.0.1
I feel confused, I don't think this is a normal situation, this will cause IP Conflicts, am I right? To my understanding, Virtual-IP should only be configured on one of node at any given time.
I google some information about NLB heartbeats, it works with Layer 2, so there is no need to open specific ports for it.
I don't know what I am missing, maybe some miss configurations or heartbeats blocked by firewall ?
I would appreciate any help.