@scottalanmiller - thanks for showing i'm not a total idiot.
Glad to see somebody else doesn't see what I was saying as crazy or 'wrong'. Found it very frustrating to be told 'hire me as a consultant to show you why you are wrong' and... 'go learn how to do it properly' etc.
2 x HA Proxy (free), sitting in front of two webservers (can be free), sitting in front of a clustered database (can be free), sitting with 50% on one node, local storage, and 50% on another node, local storage... can be entirely absolutely free using Hyper-V and NO NEED FOR VMWARE at all. That is also entirely Highly Available, for free. Don't know why I was insulted for saying so, when vMotion, the only aspect mentioned adds nothing at all to the capability of the FREE application level HA I said... To be told to 'go learn' very unprofessional.
As far as I understand, using VMWare provides only hardware level HA. Could be wrong, if so, yeah - point me out on that. As far as I see, if I have a VM on VMWare for webserver (which i'd only have one of as most so far have said two webservers is wrong), when the node crashes the other VMWare nodes would bring the VM back online from the cluster/shared storage... that isn't instant. With windows failover cluster (At least in 2008 r2, not sure since), the VM has to boot fresh on the second node... its not instant in memory failover. Why bother paying for VMWare to get that if you don't go the extra step and just build app level HA in too... clearly you do not need HA).
[Perhaps VM does instantly bring the VM up after a host has failed on another node from the shared storage with everything in memory and no need to boot]? - In which case, please tell me. But I know it didn't with a windows failover cluster.
The reason why I use hardware HA and application HA is so that I can get away with doing maintenance on the hosts, and on the VMs, whenever I want - within reason. If I want to maintenance on webserver 1, switch HA proxy to webserver 2... no need for out of hours. Can just BAU get on with it.
If I need to do maintenance on node1, simple, move webserver 1 live to node2 etc and then also do the maintenance BAU... easy.