New question: after further research, I'm going to go with dedicated servers. The host I found offers automated failover IP, so I'm thinking of installing Haproxy without heartbeat on both load balancers and have haproxy listen on its own server IP. If the LB in use fails, the other should be ready to take over unless I got something wrong. Can anyone confirm it, and that it's possible to use public addresses for both load balancers and webservers?
If your host takes care of automatically switching the failover IP if one of your web servers fails and you intended to use the load balancers solely for detecting if the backend servers are still up, then you don't need the load balancers in front of the web servers.
Thank you for your reply falko. No, the IP failover is manual. I'm also very concerned about load balancing as I'd like my app to be able to scale out to an extend.
Thank you. One last question. On the main load balancer and the back-up one, should I have HAproxy listen on its server's IP or the public IP?