Настало время когда одного сервера стало не хватать.
Чего конкретно не хватать?
поставил проксирующий nginx
Зачем нагружать "балансер" двойным трафиком, пусть клиенты напрямую ходят на второй сервер.
Так же можно не синхронизировать, а раскидывать файлы по серверам, четные на 1-й сервер, нечетные на 2-й, но лучше префикс сервера в ид (имени) файла сделать.
Таким образом будет экономия диска и более эффективное использование трафика.
Есть и плюсы в простом дублировании (ваш вариант):
1) Второй сервер - как бекап, если один из серверов умрет, хотя для бекапов есть инструменты лучше.
2) Если один сервер умрет, то сервис может* продолжить работать, но медленней, а с "шардингом" (вариант выше) часть контента будет не доступна.
С другой стороны, что вы будете делать когда будет не хватать диска на сервере?
Ещё вариант - перебросить файлы на S3
> было бы идеально в режиме реального времени.
В том месте где сохраняете файлы можете дописать, что-б сохранять файл так же и на примонтированный сервер либо через ssh.
Если нет возможности дописать, то можно сделать внешний скрипт который будет "слушать" изменения ФС и реагировать (копировать на др. сервер).
В таких инструментах как GridFS можно легко настроить репликацию - будет реалтайм. Но его напрямую не заюзать (нужно код писать), поэтому можете поискать конкурентов.