We are starting a migration to a IIS cluster for load balancing, failover support, as well as zero-downtime upgrades.
We are currently testing this configuration with a pair of Windows 2008 R2 virtual machines. Our current approach has both VM's configured with the same IP address and bindings on IIS. In other words - 192.168.100.88 is bound by both VM's, and both VM's show that address in their IP configuration.
Each server also has an IP not bound by the load balancer.
So, my question is, how do you test a node before you bring it online? For example, we take one node down to do an upgrade. We want to test it before it's back server content to the customer. Previously, when we were manually switching between different hosts via our firewall/network configuration, each IIS server had a different set of IP addresses, and we would just change our hosts file and clear our dns cache. Test the offline mode. Then bring it online.
However... with the load balancing configuration, both servers are technically bound to the same ip address (which I have no idea how that works). So how do I point my browser specifically to the node that isn't enabled in the balancer?
The only thought that comes to mind is having a 2nd set of IP addresses for each website, and bind those (in addition to the load balanced IP) in IIS. Internal testing would use the 2nd set of IPs, as they aren't exposed via the firewall to external customers.
The only problem with this (other than the extra overhead of the additional IPs) is some of the websites are https. And IIS7 can only bind an SSL certificate to a single IP address.
So how do you test nodes that are not currently live with the cluster (disabled via the Network Load Balancer Manager)