O processo de failover que você está descrevendo é tão simples quanto correto. Usar o DRBD é a etapa principal para criar redundância, pois você elimina um único ponto de falha, como um armazenamento compartilhado.
O atual failover que você mencionou pode ser facilmente automatizado pelo Pacemaker / Corosync , para que não haja necessidade de intervenção manual. Eu preferiria escrever scripts auto-escritos, pois ele também cuida de cercar nós não-funcionais, para que você não se deparasse com um cenário de divisão de cérebro (o que poderia estragar todos os seus dados).
Lembre-se de que a HA "real" requer separação completa (ou pelo menos máxima possível) de sistemas (sala separada (ou pelo menos rack), USV diferente, comutação redundante etc.). Um ponto único de falhas geralmente estraga todo o seu esforço para otimizar a disponibilidade.