Отслеживание изменений в NFS / Sync NFS в нескольких центрах обработки данных - PullRequest
0 голосов
/ 14 сентября 2010

У нас есть два центра обработки данных, каждый из которых имеет несколько серверов Linux, которые совместно используют большие nfs на основе EMC.

Задача состоит в том, чтобы синхронизировать два nfs. На данный момент предположим, что запись будет происходить только в nfs1, который затем должен распространить изменения в nfs2.

Периодические родовые rsyncs оказались слишком медленными - каждый rsync выполняется несколько часов, даже с -az. Нам нужно сделать особую синхронизацию, когда файл или каталог действительно изменится.

Итак, проблема в том, как мы узнаем, когда файл или каталог изменился? inotify - очевидный ответ, но он, как известно, не работает с nfs. (Существует некоторая болтовня о том, что inotify может работать, если он установлен на сервере nfs, но это не вариант для нас - мы контролируем только клиентов, а не сервер.)

Позволяет ли клиент linux nfs записывать все изменения, которые он отправляет на сервер, в файл журнала или другим способом? Или мы могли бы взломать клиента, чтобы сделать это? Затем мы могли бы собирать изменения от каждого клиента и периодически запускать целевые rsyncs.

Любые другие идеи приветствуются. Спасибо!

1 Ответ

0 голосов
/ 03 июня 2011

Если вам необходимо синхронизировать 2 сервера EMC, возможно, для этого лучше изучить возможности зеркалирования, характерные для EMC.Обычно это блочные обновления для высокой производительности и низкой пропускной способности.Например, с помощью SnapMirror в NetApp можно добиться этого.Я не настолько знаком с EMC, но быстрый поиск в Google показал EMC MirrorView или EMC SRDF как возможные варианты.

...