Glus­terFS часть 8. Тонкая настройка

GlusterFS. Все статьи цикла

При создании нового тома, в рабочей директории по умолчанию (/var/lib/glusterd/vols) создается поддиректория с именем соответствующим названию тома. В этом каталоге размещается вся служебная информация о конкретном томе среди которой несколько файлов с расширением *.vol. Главный из них это trusted-<имя-тома>-fuse.vol, он описывает общие параметры тома; информацию о серверах, топологию репликации, и некоторые общие параметры используемых трансляторов. В файлах <имя-тома>-<имя-сервера>-<имя-каталога>.vol описываются параметры трансляторов серверов.

Отрывок vol-файла trusted-r1-fuse.vol:

volume rp-client-0 # секция описывающая первый сервер
type protocol/client # тип/подтип транслятора
option send-gids true
option password bdcb0d40-a4b2-40f9-ab7e-404f6eedcf1b
option username ce259dd4-ffaf-4cbb-ab80-8419dec5dc67
option transport-type tcp
option remote-subvolume /dr
option remote-host gl01
end-volume

volume rp-client-1 # секция описывающая второй сервер
type protocol/client # тип/подтип транслятора
option send-gids true
option password bdcb0d40-a4b2-40f9-ab7e-404f6eedcf1b
option username ce259dd4-ffaf-4cbb-ab80-8419dec5dc67
option transport-type tcp
option remote-subvolume /dr
option remote-host gl02
end-volume

volume r1-replicate-0 # топология репликации
type cluster/replicate # тип/подтип транслятора
subvolumes r1-client-0 r1-client-1 # реплика с client-0 на client-1
end-volume

volume r1-dht # эти параметры определяют как будут
type cluster/distribute # распределяться поступаемые данные
subvolumes r1-replicate-0 # в нашем случае не как т.к. том не Distributed
end-volume
...
...
volume r1-io-cache # параметры кеширования
type performance/io-cache # тип/подтип транслятора
option cache-size 64MB
option cache-timeout 4
option max-file-size 2MB
subvolumes r1-read-ahead
end-volume

Каждая секция описывает определенные параметры транслятора. Последовательность секций соответствует цепочке трансляторов через которую проходят данные. Хотя vol-файлы могут использоваться для изменения параметров томов и серверов, на мой взгляд они более полезны для иллюстрации работы ФС изнутри и понимания команды set.

gluster volume set <том> <ключ> <значение>

 Данная команда позволяет изменять значения параметров некоторых трансляторов на лету.

Например задать список клиентов которым разрешен доступ к тому:

gluster volume set r1 auth.allow 10.200.77.45,10.200.77.46

 или задать наиболее эффективные значения параметров производительности

performance.write-behind-window-size 1073741824
performance.cache-refresh-timeout 1
performance.cache-size 1073741824
performance.read-ahead off

 Доступный список опций, описания и значения по умолчанию можно найти на официальном сайте.