O Keepalived é um projeto diferente do de pulsação.
Eu geralmente uso heartbeat para alta disponibilidade. Para heartbeat, você pode definir os recursos que serão de propriedade de uma máquina por vez. O VIP é um desses recursos que podem "mover" de uma máquina para outra. AFAIK, pacote heartbeat não fornece balanceamento de carga. Para implementar o balanceamento de carga, posso usar outro pacote como o haproxy.
Sim, é possível usar os mesmos dois servidores para atuar como um balanceador de carga e um servidor da Web.