OpenVZ ноды с "общей папкой" через сеть?
Привет всем Есть 3-и нестабильных и географически распределённых канала. При этом одновременно работает один-три канала. На каждом из каналов стоит сервер с OpenVZ нодой. Задача синхронизировать файлы для веб-сервера. По условиям 99% времени нет записи. Но сами ноды не идентичны (разные настройки). С помощью каких технологий возможно поддерживать актуальное состояние "общего диска"? Подойдет ли DRBD для этого?
Re: OpenVZ ноды с "общей папкой" через сеть?
Может простым и проверенным способом для нестабильных каналов? rsync по ключу.
rpisarev wrote on Thu, 05 January 2012 06:15 Может простым и проверенным способом для нестабильных каналов? rsync по ключу. Есть: А,В,С... - ноды, которые не обязательно разнесены на разных серверах. записали на А, нужно сделать rsync на В и С записали на В, нужно сделать rsync на А и С записали на С, нужно сделать rsync на А и В А если дальше увеличивать количество нод?
Да, когда много master нехорошо. Точно нельзя одним мастером справиться? Тогда запись будет идти _только_ на A, а с остальных rsync. DRBD в режиме master-master никогда не пробовал. Может стоит сделать что-то вроде облачного хранилища? Опять же только предположения, сам не добрался, но планирую пощупать "elliptics". Думаю то, что Вам нужно, но не уверен в их готовности к продашн.
rpisarev wrote on Thu, 05 January 2012 06:36 Да, когда много master нехорошо. Точно нельзя одним мастером справиться? Тогда запись будет идти _только_ на A, а с остальных rsync. DRBD в режиме master-master никогда не пробовал. Может стоит сделать что-то вроде облачного хранилища? Опять же только предположения, сам не добрался, но планирую пощупать "elliptics". Думаю то, что Вам нужно, но не уверен в их готовности к продашн. Я пытаюсь решить 2-е задачи: *отказоустойчивость *распределение нагрузки (масштабирование) сайты на php + nginx + mysql (мастер-мастер или мастер-слейв) в нодах и php + nginx + mangodb(мастер-мастер). Отношение читаю/пишу >>99/1 =>блоги, новостные сайты, порталы... В принципе можно делать rsync, что на уровне файлов, но хотелось попробовать на уровне файловой системы из-за того, что много мастеров. Пока Я вижу решение такое: Делаю с Единственного мастера rsync на slave'ы. В настройках сайтов запрещаю загрузку файлов на слейвах.Дальше магия синхронизации базы данных и всё в ажуре. Минус: надо хардкорить сайты на предмет запрещения некоторых действий на конкретных серверах.
rpisarev wrote on Thu, 05 January 2012 06:36 Да, когда много master нехорошо. Точно нельзя одним мастером справиться? Тогда запись будет идти _только_ на A, а с остальных rsync. Что бы избежать запись более поздними версиями: root@HN0:~# cat /data.txt Срд Янв 25 10:48:39 EET 2012 root@HN0:~# rsync -az --numeric-ids root@192.168.0.2:/data.txt /data.txt root@HN0:~# cat /data.txt Срд Янв 25 10:48:26 EET 2012 буду использовать "-u" db:~# rsync -u -az --numeric-ids root@192.168.0.2:/data.txt /data.txt db:~# cat /data.txt Срд Янв 25 10:49:50 EET 2012 db:~# data > /data.txt -bash: data: команда не найдена db:~# date > /data.txt db:~# cat /data.txt Срд Янв 25 10:53:56 EET 2012 db:~# rsync -u -az --numeric-ids root@192.168.0.2:/data.txt /data.txt db:~# cat /data.txt Срд Янв 25 10:53:56 EET 2012 db:~# rsync -az --numeric-ids root@192.168.0.2:/data.txt /data.txt db:~# cat /data.txt Срд Янв 25 10:49:50 EET 2012 будут ли у Меня "грабли" при 3-х и более МАСТЕРАХ?
DRBD однозначно не подойдет, т.к. при траблах с каналом будет колом вставать весь ввод-вывод. Я решал подобную проблему rsync'ом. Было 4 ноды, одна условно выбирается за синхронизирующую, первым проходом данные со всех нод собираются на синхронизирующую, вторым проходом синхронизируются со всеми остальными. При этом, основной критерий - дата изменения файла, более свежие файлы не переписываются. Единственное необходимое условие - синхронизация по времини(общий ntp).
stealth wrote on Thu, 09 February 2012 00:26 DRBD Я решал подобную проблему rsync'ом. Было 4 ноды, одна условно выбирается за синхронизирующую, первым проходом данные со всех нод собираются на синхронизирующую, вторым проходом синхронизируются со всеми остальными. При этом, основной критерий - дата изменения файла, более свежие файлы не переписываются. Единственное необходимое условие - синхронизация по времини(общий ntp). тоесть так же как и Я)))) ЗЫ: ntp тоже настроил, когда еще мастер-мастер на mysql настраивал)