11.3. Конфигурация GFS2

Настройка Samba в кластере Red Hat Enterprise Linux требует наличия двух файловых систем GFS2 — одной для CTDB, второй для общего ресурса Samba.
Прежде чем приступить к созданию GFS2, для каждой будущей файловой системы необходимо создать логический том LVM (см. руководство по LVM). В этой главе в качестве примера будут созданы:
  • /dev/csmb_vg/csmb_lv (100 гигабайт) для хранения данных пользователя, экспортируемых через общий ресурс Samba.
  • /dev/csmb_vg/ctdb_lv (1 гигабайт) для хранения общей информации о состоянии CTDB.
Логические тома и их группы создаются только на одном узле.
После этого можно создать файловую систему, выполнив mkfs.gfs2 лишь на одном узле.
Следущая команда создаст файловую систему на /dev/csmb_vg/csmb_lv для размещения общего ресурса Samba:
[root@clusmb-01 ~]# mkfs.gfs2 -j3 -p lock_dlm -t csmb:gfs2 /dev/csmb_vg/csmb_lv
Параметры:
-j
Определяет число создаваемых журналов. В этом примере будет создано три журнала — по одному на узел.
-p
Определяет имя блокирующего протокола. GFS2 использует lock_dlm.
-t
Имя таблицы блокирования в формате кластер:ФС. В этом примере в cluster.conf имя кластера определено как csmb, а имя файловой системы — gfs2.
Пример вывода:
This will destroy any data on /dev/csmb_vg/csmb_lv.
  It appears to contain a gfs2 filesystem.

Are you sure you want to proceed? [y/n] y

Device:
/dev/csmb_vg/csmb_lv
Blocksize:		4096
Device Size		100.00 GB (26214400 blocks)
Filesystem Size:	100.00 GB (26214398 blocks)
Journals:		3
Resource Groups: 	400
Locking Protocol:  	"lock_dlm"
Lock Table: 		"csmb:gfs2"
UUID:
  94297529-ABG3-7285-4B19-182F4F2DF2D7
Таким образом, файловая система /dev/csmb_vg/csmb_lv будет смонтирована в /mnt/gfs2 на всех узлах кластера. Точка монтирования должна соответствовать значению path = для общего ресурса в файле конфигурации /etc/samba/smb.conf (см. Раздел 11.5, «Конфигурация Samba»).
После этого можно создать файловую систему для хранения информации о состоянии CTDB:
[root@clusmb-01 ~]# mkfs.gfs2 -j3 -p lock_dlm -t csmb:ctdb_state /dev/csmb_vg/ctdb_lv
Обратите внимание, что таблица блокирования отличается от указанной в первой команде.
Пример вывода:
This will destroy any data on /dev/csmb_vg/ctdb_lv.
  It appears to contain a gfs2 filesystem.

Are you sure you want to proceed? [y/n] y

Device:
/dev/csmb_vg/ctdb_lv
Blocksize:  		4096
Device Size 		1.00 GB (262144 blocks)
Filesystem Size: 	1.00 GB (262142 blocks)
Journals:		3
Resource Groups: 	4
Locking Protocol: 	"lock_dlm"
Lock Table: 		"csmb:ctdb_state"
UUID:
  BCDA8025-CAF3-85BB-B062-CC0AB8849A03
В этом примере файловая система /dev/csmb_vg/ctdb_lv на всех узлах будет смонтирована в /mnt/ctdb. Точка монтирования должна соответствовать расположению файла .ctdb.lock, которое определяется параметром CTDB_RECOVERY_LOCK в файле конфигурации /etc/sysconfig/ctdb (см. Раздел 11.4, «Конфигурация CTDB»).