Консолидация хранилища на нескольких экземплярах VPS

Скажем, у вас работает четыре экземпляра VPS. Одним из них является прокси-сервер nginx, который обрабатывает запросы на ваши два экземпляра VPS среднего уровня, на которых запущено веб-приложение через FastCGI, а на последнем VPS выполняется база данных.

Каков наилучший способ для разделения хранилища между тремя внутренними экземплярами, используя только ресурсы, доступные на каждом VPS (без доступа к SAN)? Я знаю, что NFS, очевидно, является одним из способов обмена данными, но, насколько мне известно, вы не можете объединить отдельные области хранения из разных экземпляров VPS в одну, используя NFS.

Есть ли лучший способ добиться некоторого разделения памяти между этими узлами, чтобы, если я хочу задействовать другой узел для обработки дополнительной нагрузки, мне не нужен какой-то причудливый метод для сохранения всех (не баз данных) приложений данные в синхронизации. Это должно быть доступно через стандартный интерфейс файловой системы POSIX, чтобы не нужно было переписывать работающие приложения для использования новой технологии (в противном случае я бы просто использовал Amazon S3 или что-то подобное).

Любая помощь приветствуется.

2 ответа

Решение

Ты ищешь drbd, Это репликация файловой системы.

В прошлом у нас было несколько сплитбрейнов с master/slave, поэтому мы изменили файловую систему сверху ext3 в gfs2 и теперь работайте с кластером в активном / активном режиме.

Самый простой подход, вероятно, состоит в том, чтобы запустить другой VPS, который хранит все "данные приложения" и экспортирует их через NFS на серверы приложений.

Другие вопросы по тегам