Você pode explorar o RDS para seu banco de dados MySQL. O RDS permite criar um banco de dados em vários AZ (zona de disponibilidade). O failover é transparente e não há nada que você ou seu aplicativo terão que fazer se houver uma falha no banco de dados principal.
Se você tiver que configurar o MySQL com vários mestres, é muito trabalhoso, a menos que você esteja confortável trabalhando com o MySQL.
Você já está no ELB, portanto, é bom com a redundância de instâncias. Certifique-se de que ambas as instâncias estejam em vários AZs.