GlusterFS - Репликация по нечетным числам узлов

Я пытался создать реплицированных том через свой кластер с 3 узлами со следующей командой:

sudo gluster volume create \
replicatedStorage \
replica 2 \
transport tcp \
gluster1.mydomain.com:/data \
gluster2.mydomain.com:/data \
gluster3.mydomain.com:/data

Я получил это сообщение об ошибке:

number of bricks is not a multiple of replica count

От чтения онлайн-документации это кажется, что нужно всегда иметь четное число узлов, чтобы иметь репликацию, и если Вы хотите копировать дважды, у Вас должны быть кратные числа 4?

Разве следующая схема не возможна, где каждый цвет представляет файл? enter image description here

1
задан 16 August 2014 в 21:04
2 ответа

Реплика 2 означает, что для каждого файла будет храниться по две копии. Вы не можете использовать 3 узла, потому что клиент всегда должен знать, где файлы должны быть.

В качестве обходного пути, вы можете создать несколько томов с репликой 2 на разных парах узлов, если вы заинтересованы в использовании третьего узла с репликой 2.

Или вы можете использовать реплику 3, и получить улучшенную отказоустойчивость.

.
1
ответ дан 4 December 2019 в 00:20

Вы не можете использовать реплику для нечетного числа драйверов, но вы можете вместо этого использовать disperse:

gluster volume create cache disperse 3 redundancy 1 transport tcp gluster{1...3}.mydomain.com:/data

Он разрежет ваш файл на части и будет иметь по 2 копии каждой части (из-за избыточности равно 1), поэтому можно потерять 1 диск на 3.

В документе говорится, что он должен работать хуже, чем реплика в той же конфигурации.

https://docs.gluster.org/en/latest/Administrator%20Guide/Setting%20Up%20Volumes/#creating-distributed-dispersed-volumes

0
ответ дан 4 December 2019 в 00:20

Теги

Похожие вопросы