Синхронизация папок по сети

Linux, безопасность, сети и все что с этим связано
Аватара пользователя
cympak
Увлекающийся
Сообщения: 114
Зарегистрирован: 26 окт 2005, 13:38

Синхронизация папок по сети

Сообщение cympak »

Есть 2 или более машины в сети, необходимо сделать реалтайм синхронизацию для определенных папок. Т.е. если на одной из машин в папку добавили файл, то такой же должен появиться и на других машинах. Желательно что бы это происходило событийно, а не по таймауту. Пробовал использовать NFS - не получилось, если сервер уходил в даун, то клиенты тоже по сути умирали. Необходимо что бы все машины были равнозначными и могли проверять наличие других машин в сети (список машин в конфиге задается или при запуске через параметры).

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

словите золотую рыбку и поджарть ее на сковородке ;)

Есть два варинта - с центральным надежным хранилищем - NFS, GPFS, GFS
Относительно децентрализованые - coda, lustre, afs и их прозводные - они способны быолее-мене выживать в описаной ситуации...

В общем случае задача не решаема ИМХО: допустим при отсутсвии связи между N хостами на каждом из них в один и тот же файл внесены изменения - как по вашему файловая система должна это разруливать ? А если ихзменения внесены одновременно? ;) Для начала ответьте себе на этот вопрос, а потом уже думайте над архитектурой системы.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Аватара пользователя
cympak
Увлекающийся
Сообщения: 114
Зарегистрирован: 26 окт 2005, 13:38

Сообщение cympak »

В моей ситуации получается приблизительно так:
1) Допустим что такой ситуации быть не может (например интересует просто наличие файла или его отсутствие, либо содержимое файла статично).

2) Не столь важно содержание, сколько наличие самого файла - в результате - просто выбираем тот файл у которого дата изменения позже.

А coda, lustre, afs сейчас проверю на сколько они соответствуют требованиям.
...а на каком основании ограниченность некоторых делать законом для всех?

Аватара пользователя
cympak
Увлекающийся
Сообщения: 114
Зарегистрирован: 26 окт 2005, 13:38

Сообщение cympak »

Как вариант - а можно ли как-нибудь повесить какое-нибудь событие на то что происходит в папке (создание нового файла, удаление вайла, изменение файла)? А синхронизацию уже производить по событию какой-нибудь стандартной тулзиной типа unison.
В общем получаем что: необходим механизм который смог бы отслеживать изменения в папке.
...а на каком основании ограниченность некоторых делать законом для всех?

Аватара пользователя
Llama
Неотъемлемая часть форума
Сообщения: 9749
Зарегистрирован: 06 фев 2002, 11:40
Откуда: Менск

Сообщение Llama »

cympak, можно. см в сторону inotify и dnotify в гугле.
Опыт растет прямо пропорционально выведенному из строя оборудованию

Аватара пользователя
cympak
Увлекающийся
Сообщения: 114
Зарегистрирован: 26 окт 2005, 13:38

Сообщение cympak »

Спасибо, вроде проблема решилась - dnotify ( ядро 2.4 :( ) + unison работают замечательно как минимум на локальных папках.
...а на каком основании ограниченность некоторых делать законом для всех?

Ответить