O HAproxy não fornece armazenamento em cluster, mas é comumente instalado juntamente com o keepalive para essa finalidade.
-Keepalived gerencia o cluster, os IPs virtuais e o failover entre os nós.
-HAproxy faz o balanceamento de carga real nos IPs virtuais.
Existem outras opções ao lado de keepalived, mas eu diria que é uma das configurações mais comuns.