Прямо сейчас у меня есть два glusterfs объема
Volume Name: gv0
Type: Replicate
Volume ID: id-here
Status: Started
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: s1.example.com:/data/brick1/gv0
Brick2: s2.example.com:/data/brick1/gv0
Options Reconfigured:
performance.readdir-ahead: on
/etc/fstab (server1):
/dev/vdb1 /data/brick1 xfs defaults 1 2
s1.example.com:/gv0 /mnt/glusterfs glusterfs defaults,_netdev,direct-io-mode=disable 0 0
glusterfs объем смонтирован локально, все же чтение-записи является медленным/вялым. Я знаю, что соединение между server1 и server2 является медленным, но идеально это должно записать в локальный том и затем синхронизировать корректный? У меня есть проблемы где мое приложение загрузки timesout, храня файлы к локально смонтированному glusterfs объему.
Я использую собственный клиент FUSE. Все серверы находятся на KVM VM. Qcow2, никакой кэш файловая система XFS для glusterfs раздела.
Сравнительные тесты
GlusterFS Vol:
[~]@s1:$ dd if=/dev/zero of=/mnt/glusterfs/zero1 bs=64k count=40
40+0 records in
40+0 records out
2621440 bytes (2.6 MB) copied, 17.3101 s, 151 kB/s
Нормальный Vol
[~]@s1:~$ dd if=/dev/zero of=zero1 bs=64k count=40
40+0 records in
40+0 records out
2621440 bytes (2.6 MB) copied, 0.00406856 s, 644 MB/s
Записи на реплицированных томах всегда синхронизируются.
Некоторое время назад я специально спросил, что в списке рассылки GlusterFS , и краткий ответ был что невозможно иметь фоновый процесс непрерывной синхронизации, покидая локальный хост как можно быстрее.
Возможным предлагаемым обходным решением было намеренное прерывание репликации,напишите на ваш localhost и восстановите репликацию. Демон самовосстановления включит и синхронизирует все изменения в фоновом режиме.
Очевидно, что этот обходной путь работает только тогда, когда ваша удаленная копия доступна только для чтения; если это чтение-запись, вы столкнетесь с сценариями разделения мозга. В любом случае, если вам нужна только удаленная копия только для чтения, вы можете использовать функцию георепликации GlusterFS, которая основана на rsync и полностью отделена от записи на localhost.