Синхронизация каталогов с автоматическим обнаружением пиров

10

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

  • Rsync будет работать, если у кого-то есть умный способ сделать обнаружение сверстников.
  • То же самое и для Unison.
  • Мы также рассмотрели возможность использования SaaS, например Dropbox.
  • Gluster кажется излишним, и я не уверен, насколько легко подключить новый компьютер к кластеру.

В идеале, что происходит, когда запускается новый сервер, он обнаруживает своих пиров и начинает синхронизировать папку. С этого момента это новейшая файловая метка выигрывает синхронизацию P2P.

Есть что-нибудь, что делает это?

Калеб
источник
Это не делает одноранговое обнаружение, но это может представлять интерес независимо от - mrsync.sourceforge.net .
Фахим Митха

Ответы:

1

Вы знаете, как бы странно это ни звучало, но использование rtorrent с включенным DHT в частном диапазоне ec2 может работать

Это даст вам

  • Автоматическое обнаружение пира
  • Проверенные состояния файла (yay для хэшей)
  • Минимальные требования к конфигурации (добавьте магнит (или виртуальный ip для последнего торрента) для торрента в скрипте запуска)
  • масштабируемость
Tacticus
источник
1

Rsync upstream обеспечивает поддержку SLP (протокол определения местоположения службы). Он не включен в исходных файлах vanilla rsync, но поддержку SLP можно найти в архиве rsync-patches на домашней странице rsync (slp.diff). Например, пакет SUSE rsync собран с этим патчем; Я не знаю о других дистрибутивах.

Я не уверен, что это то, что вы ищете, и при этом у меня нет опыта работы с SLP.

Петр Узел
источник
0

Может быть, я что-то здесь упускаю, но есть ли какая-то причина, по которой вы не просто настраиваете простой каталог NFS и просто монтируете все машины? Каждый раз, когда приложение записывает новый файл кэша, оно должно просто перезаписывать любые старые.

opsguy
источник
1
Привет Опсгуй. Что вы упускаете, так это то, что происходит при сбое компьютера с NFS? Мы пытаемся устранить единственную точку отказа для кэша.
0

Я почти уверен, что есть какой-то инструмент управления Amazon, такой как инструменты командной строки , который позволяет вам написать загрузочный скрипт, чтобы узлы обнаруживали друг друга через частные или публичные IP-адреса.

Кстати, rsync и Unison не являются подходящим инструментом, если они должны очень часто распространять изменения в кеше. В этом случае вы должны рассмотреть какую-то действительно распределенную файловую систему.

Марко Сольери
источник
0

Может быть, DRBD (распределенное блочное устройство)?

MSpike
источник
1
Спасибо за ваш ответ, но ему не хватает содержания. DRBD не настолько известен, что не требует хотя бы ссылки. Но на самом деле, вы должны дать больше информации: почему DRBD подходит? Как это будет работать? Особенно если учесть, что Кевин считал Глостера излишним: почему бы не ДРБД?
Жиль "ТАК - перестань быть злым"
Я только что понял, что вы ищете автоматическое обнаружение пиров, так что этот не подходит для вас. DRBD - это блочное устройство на вашем реальном оборудовании или на вершине какого-то тома, которое затем синхронизирует их по сети.
MSpike