В закромах завалялись два маленьких десктопчика на VIA C3. Выбросить - рука не поднимается. На борту 6 USB, 3 сетевухи по 100мегабит, PC CArd, IDE. Устанавливается какой-то старый дебиан (кажется 5 или 7 - не помню) и winXP, так как там недо-CPU. Но маленький-аккуратненький безвентиляторный..
Чего хочется: хранилище из двух компов с резервированием. Мне видится так: они между собой соединены по 2 сетевухам просто кабелем, а по одному кабелю от каждого нода в домашний свич (ну или в отдельный свич). В каждый установить 120 гиг IDE диск. На каждый - свой блок питания. Если один сдох - другой работает. Как починили - подключили - синхронизация автоматом и продолжение работы (как я понял, это практически HA NAS - сетевое хранилище повышенной надежности)
из свичей - валяется старый Netgear с wifi, есть домашний маленький микротик.Использовать для хранения 1С файловой базы, например, и для мастер-копии небольшого фотоархива.
Извращение, но интересное.
Подскажите, как это можно реализовать? Есть ли инструкции для чайников? Какой дистрибутив выбрать?или полная безнадега?
> свич). В каждый установить 120 гиг IDE диск. На каждый -Чо ты собрался хранить на 120 гигабайтах?
> Использовать для хранения 1С файловой базы, например, и для мастер-копии небольшого
> фотоархива.Ой не могу. Ой держите меня.
> Извращение, но интересное.
Да, мсье знает толк...
> Подскажите, как это можно реализовать?
Use Google, Luke... ищи "cluster", "carp", "cepf", "glusterfs"...
> Есть ли инструкции для чайников?
Use Google, Like...
> Какой дистрибутив выбрать?
Какой стоит у знакомого админа.
> или полная безнадега?
С практической точки зрения - полный бред. Держи нас в курсе.
Вот спасибо!
Я уж думал, что не будет ответов даже таких ;-)
Зачем хранить много? нужно просто место, доступное по сети с маленькой файловой БД 1С.
Нужно это именно для самообразования в основном. Я думал есть какое-то коробочное решение типа FreeNAS или его родственников (родных и неродных).
шифрование не актуально, так что тормозов особых быть не должно
> Нужно это именно для самообразования в основном.Ну в целях самообразования - гугли про то, что я тебе сказал. Хотя по твоим потребностям это даже не борщ, это фуагра и трюфели... Короче, ищи про сетевые файловые системы, кластеры, системы с высокой доступностью (HAST), etc. Наберешь все это в гугле - получишь кучу инфы, манов и хаутушек, больше, чем нужно даже...
Держу в курсе.
сделал "тестовый стенд" с "внешними" IDE HDD на 80 гиг.
поместил все в картонную коробку на столе.
Поставил Debian 8 (Jessie) + DRBD + OCFS2 (как подсказал знакомый Гуру)
хаутушек много. Я выбрал "https://itsecforu.ru/2019/01/14/%D0%BA%D0...
поднял один, заDDшил диск и, откорректировав настройки, поднял второй.Оказалось, что диски имеют разное количество секторов (вероятно когда-то их настраивали на низком уровне) - пришлось разворачивать хранилище не на дивайсе, а в партиции.
конфига DRBD:
root@node1:/stor# cat /etc/drbd.d/storage.res
resource storage {
protocol C;
on node1 {
device /dev/drbd0;
disk /dev/sda1;
address 172.16.3.146:7788;
meta-disk internal;
}
on node2 {
device /dev/drbd0;
disk /dev/sda1;
address 172.16.3.147:7788;
meta-disk internal;
}}
после синхронизации как Primary-Secondary, добавил в конфиг:
handlers {
split-brain "/usr/lib/drbd/notify-split-brain.sh root";
}
net {
allow-two-primaries;
after-sb-0pri discard-zero-changes;
after-sb-1pri discard-secondary;
after-sb-2pri disconnect;
}
startup {
become-primary-on both;
}
и сделал primary-primaryконфига OCFS2
root@node1:/stor# cat /etc/ocfs2/cluster.conf
node:
ip_port = 7777
ip_address = 172.16.3.146
number = 1
name = node1
cluster = storage
node:
ip_port = 7777
ip_address = 172.16.3.147
number = 2
name = node2
cluster = storage
cluster:
node_count = 2
name = storageсоздавая файл на одном узле - он дублируется на второй. Изменения файла - тоже. Внутри все работает.
Но я своим скудоумием не могу понять, как эту шарманку использовать снаружи!!! То есть можно самбой расшарить папку, куда смонтировано хранилище, но это только с одной ноды. Если она помрет - придется перешаривать. Видел несколько упоминаний (не понял их), что можно подключиться как к iSCSI устройству по сети и использовать как хранилище для виртуалок. и все? может можно подключить эту OCFS2 как диск в винде? или как-то иначе? чтобы на уровне самой ФС регулировалось поведение при смерти узла?Чтобы работа не прекращалась. Нужно было просто переподнять ноду и подключить к кластеру без простоя
root@node1:/stor# lsblk
NAME MAJ:MIN RM SIZE RO TYPE MOUNTPOINT
sda 8:0 0 74,5G 0 disk
└─sda1 8:1 0 74,5G 0 part
sdb 8:16 0 2G 0 disk
├─sdb1 8:17 0 243M 0 part /boot
├─sdb2 8:18 0 1K 0 part
└─sdb5 8:21 0 1,8G 0 part
├─node1--vg-root 254:0 0 1,7G 0 lvm /
└─node1--vg-swap_1 254:1 0 128M 0 lvm [SWAP]
drbd0 147:0 0 74,5G 0 disk /storroot@node1:/stor# cat /proc/drbd
version: 8.4.3 (api:1/proto:86-101)
srcversion: B8B56254339301B935960E8
0: cs:Connected ro:Primary/Primary ds:UpToDate/UpToDate C r-----
ns:16230 nr:16225 dw:32455 dr:50226 al:4 bm:0 lo:0 pe:0 ua:0 ap:0 ep:1 wo:f oos:0
Единственное что могу сказать по теме: все линки на свич. Твою идею я понял: типа 2*100 между нодами и 2*100 от нод, вот только хрен тебе, а не пончик, доступ всеравно в один момент времени будет только к одной ноде, соответственно больше 1*100 всеравно не получишь, а так у тебя оно само будет думать что и куда гнать. Если рассматривать это крайне грубо: на чтении сможешь получить до 3*100 (так как с любой ноды все линки смотрят в сеть), а на записи (3*100)/2 (т.к они при записи будут ещё дублировать эту инфу между собой)А так то тема интересная: отказоустойчивость не в хранении, а в доступе к инфе в целом. В целях самообразования - самое то, послушаю куда пойдёт и чем закончится
С такой некрофилией, а особенно в связке с "для хранения 1С файловой базы", сразу с ностальгией вспоминается Netware SFT :-) там все это "из коробки". А вот интегрировать это с чем-нибудь современным - неплохой квест.