As many other companies we got some pressure to migrate from TMG to UAG because of Microsoft's decision to discontinue TMG. We use the system solely for application publishing.
We brought up a UAG array with 2 nodes with NLB, both running on Vmware vSphere. From the beginning those servers had some issues seeing or not seeing each other so we opened a ticket with Microsoft. They insisted/highly recommended to run the NLB in uni-cast mode and to make settings in Vmware according to this article http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1556.
Vmware is saying to support uni-cast you have to run both machines on the same virtual network switch on the same host.
WOW, so what is then the purpose of having the array if on physical node fails, all will fail?
Okay so we have a hardware load balancer as well, so lets move from NLB to HW LB. I did some research how to do that and basically found nothing. Nothing else then saying a migration will not work. Bummer.
So one disadvantage of not using NLB is that you need more IP addresses, because then each UAG trunk node needs two (if you have 2 servers) IP addresses.
Trying to remove the NLB cluster was not working because the IP addresses were still in use from UAG. And you cannot add new IP addresses to the interface used from NLB.
To work around those issues I added to each internal interface private IP addresses for the time of migration, then I changed the trunk configurations to use the temporary addresses (caused a service unavailability of course) and then I removed NLB using the UAG management console..
The rest was easy. Adding old plus the new external IP addressed to the UAG array members and reconfigure the UAG trunks to use these. Then change the DNS name from the NLB cluster IPs to the hardware load balancer IPs.
Now I have only to make sure that the UAG array nodes are not running on the same hardware. :-)
P.S. And yes, the hardware load balancer is high available as well.