Кластер Ubuntu - так близко, но так далеко

Вот установка:

  • Два сервера Ubuntu 9.10 - среда LAMP (на самом деле не вариант для переключения ОС)
  • Один MD3000i с подключением iscsi

Вот что я хотел бы сделать:

  • Пусть оба сервера увидят файлы, которые другой записывает на MD3000i, не отключая диск. Мои соединения в порядке с MD3000i (используя open-iscsi). MD3000i великолепен практически во всех нужных мне случаях, кроме одного, перечисленного ниже.

Вот что я не хочу делать (по причинам, в которые я не собираюсь идти - уже шел по этой дороге):

  • Используйте NFS монтирует

Пример:

  • Server1.com и Server2.com записывают на один и тот же диск MD3000i. Папка, в которую они оба смонтированы, помечена как / mnt / files /. Они оба распознают размер раздела правильно.

    Затем Server1.com записывает test1.1.txt в / mnt / files, а Server2.com записывает test1.2.txt в / mnt / files. В этой ситуации файлы записываются во время соединений ssh ​​непосредственно на сервер. Server1.com не видит test1.2.txt без перемонтирования. Server2.com не видит test1.1.txt без перемонтирования.

    Как ни странно, если я записываю файлы с сервера apache через PHP и файл имеет уникальное имя, оба сервера видят его! Но если имя не уникально, у меня возникает ошибка ввода-вывода (не удивительно).

    Я знаком с gfs, gfs2 и ocfs2, но далеко не компетентен. Я пробовал различные способы форматирования диска и его монтажа. Кажется, что я просто не могу получить правильный рецепт.

Вопрос:

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

2 ответа

Решение

Краткий ответ: GlusterFS

Длинный ответ: Я установил систему с DRDB, которая, на мой взгляд, была бы идеальным решением, поскольку она хорошо документирована, и можно найти множество примеров использования LAMP на ней.

Но это не идеальное решение, поскольку файловая система монтируется только на одном устройстве за раз, и вам приходится обрабатывать множество служб, запускающихся и т. Д., Когда одна машина переключается на другую. И это только для двух машин.

Сегодня я создал тестовый кластер glusterfs из двух виртуальных машин Ubuntu Lucid Lynx в virtualbox, и он не только смехотворно прост в настройке, все, что вам нужно, находится в репозиториях.

Из моих тестов пока, похоже, все, что я хочу.

Это немного похоже на двухстороннюю (или на самом деле многоканальную) НФС. Вы можете иметь столько узлов, сколько вам нужно, и файловая система обрабатывает блокировки и т.д., поэтому не обращайте внимания на комментарий "Это плохая идея, как если бы две параллельные установки Windows обращались к одному и тому же диску NTFS...", потому что это это далеко от курса.

Убедитесь, что вы понимаете сервер - клиентский аспект! Я пропустил точку монтирования FUSE, пока не подумал о блокировке файла.

Я еще не тестировал его под большой нагрузкой MySQL, но пока что впечатлен. Мой поиск в Интернете нашел очень мало, чтобы предположить, что GlusterFS подходит для этой работы, поэтому меня тоже успокаивает комментарий Тома О'Коннера.

Если я найду более актуальную информацию завтра, я отправлю обратно.

Хорошо... вы исключили NFS. что-то похожее может быть AFS.

Или вы также можете попробовать sshfs.

Я не знаю, решают ли они ваши проблемы, но им хорошо иметь в виду:>

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