Existem muitas outras soluções (afs, unionfs ...), mas o rsync funciona surpreendentemente bem para replicação unidirecional e é autocorretivo - e é escalável ao longo da medida em que você definiu caminhos para replicação (um único mestre está bem para até cerca de 5 escravos, mas além disso provavelmente há boas razões para ir para a replicação de várias camadas).
O único problema é com o tempo de replicação. Como você está usando o DNS round-robin, você já tem afinidade com o servidor - então você não terá o problema de um servidor de atualizações A não poder ver as atualizações porque ele está olhando para o servidor B. Mas atrasos na propagação de código pode causar algum problema nas implementações (especialmente se você tiver uma dependência de código nas alterações de DDL em um banco de dados comum).
Se você precisar de replicação bidirecional (tente evitar, se possível), então sim, um sistema de replicação em tempo real seria mais apropriado.
Se você está atualmente executando o rsync manualmente / via cron, você pode considerar o uso de inotify para executar o rsync em arquivos conforme eles mudam de forma que o atraso se torne muito curto.
C.