From: "Денис Смирнов" <mithraen@altlinux.ru>
To: ALT Linux sysadmins' discussion <sysadmins@lists.altlinux.org>
Subject: [Sysadmins] простые кластерные FS
Date: Tue, 23 Mar 2010 21:12:27 +0300
Message-ID: <20100323181227.GA26960@mw.office.seiros.ru> (raw)
[-- Attachment #1: Type: text/plain, Size: 2657 bytes --]
Задача:
Есть N машин, в одной физической сети. На каждой есть БОЛЬШОЙ раздел (до
единиц терабайт).
Нужно организовать из них единую FS. Доступ на запись (добавление файлов)
с любой из машин. Доступ на чтение с одной из них. Модификация созданного
файла с другой машины маловероятно/
Приемлимое latency до момента когда все машины увидят изменение метаданных
-- до 10 секунд.
Рзрешение конфликтов при одновременном изменении файла -- если время между
изменениями >10s должно сохраниться последнее изменение, если <10s должна
сохраниться любая из копий файла.
Количество операций на запись существенно превышает количество операций
чтения.
Должна быть возможность относительно простого расширения массива, добавляя
новые сервера в комплекс.
FS на всех серверах сейчас лежит на RAID. В случае временного выхода из
строя одного из серверов кластера _обязательно_ обеспечить возможность
продолжать запись, желательно -- иметь доступ к тем из ранее записанных
файлов, которые хранятся на других серверах.
Доступ к файлам на запись исключительно последовательный, доступ на чтение
-- random.
Допустимо если к FS доступ на запись и чтения будет обеспечиваться разными
точками монтирования.
"Тупое" решение: на каждом из серверов сделать каталог, скажем, /var/share
-- туда будет производиться запись. И каталоги типа /var/share-read/<id>,
где <id> -- это идентификатор сервера. В этом случае мне обязательно для
доступа к файлу знать id сервера (что мне не нравится, однако это терпимый
вариант). И по NFS монтировать все это хозяйство полносвязной сетью (а для
локальных данных -- bind'ом).
Это тупое решение мне не нравится тем, что усложняет администрирование,
тем что я недолюбливаю NFS (это лечится, однако, если научиться ее
готовить), а также известными подвисаниями NFS при монтировании (что
критично, если всю систему выключили, а потом включили половину серверов
-- они должны быстро-быстро подняться и начать работать, время простоя
более 5-и минут означает что на меня будут точить зуб, а то и стучать по
голове в самом прямом смысле этих слов).
Надежность -- самое критичное. Могут быть короткие перебои с доступом,
это не смертельно. Но потерять хоть один файлик -- нельзя.
В сторону какой FS копать?
Если я смогу проигнорировать вероятный конфликт имен файлов, есть ли
способ объединить несколько таких смонтированых NFS разделов в одну
read-only FS на той машине, которая будет читать, если она не знает ID
сервера где лежит файл с данным именем?
--
С уважением, Денис
http://mithraen.ru/
----------------------------------------------------------------------------
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 198 bytes --]
next reply other threads:[~2010-03-23 18:12 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-03-23 18:12 Денис Смирнов [this message]
2010-03-23 18:22 ` Руслан Писарев
2010-03-23 19:49 ` Денис Смирнов
2010-03-23 20:30 ` Vitaly Kuznetsov
2010-03-24 11:20 ` Денис Смирнов
2010-04-02 8:58 ` Vladimir V. Kamarzin
2010-04-02 11:59 ` Денис Смирнов
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20100323181227.GA26960@mw.office.seiros.ru \
--to=mithraen@altlinux.ru \
--cc=sysadmins@lists.altlinux.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
ALT Linux sysadmins discussion
This inbox may be cloned and mirrored by anyone:
git clone --mirror http://lore.altlinux.org/sysadmins/0 sysadmins/git/0.git
# If you have public-inbox 1.1+ installed, you may
# initialize and index your mirror using the following commands:
public-inbox-init -V2 sysadmins sysadmins/ http://lore.altlinux.org/sysadmins \
sysadmins@lists.altlinux.org sysadmins@lists.altlinux.ru sysadmins@lists.altlinux.com
public-inbox-index sysadmins
Example config snippet for mirrors.
Newsgroup available over NNTP:
nntp://lore.altlinux.org/org.altlinux.lists.sysadmins
AGPL code for this site: git clone https://public-inbox.org/public-inbox.git