Я только что установил 7 гостей KVM, все из которых работают на 64-битном минимальном сервере Ubuntu 12.04 LTS, чтобы протестировать glusterfs 3.2.5 из официального репозитория Ubuntu. Два из них образуют зеркальную пару (т.е. replica 2
), и пятеро из них - клиенты. Я все еще новичок в этой файловой системе и хотел бы получить некоторый практический опыт.
Настройка была в основном без происшествий, пока я не добавил следующее в каждый glusterfs
клиентский /etc/fstab
:
192.168.122.120:/testvol /var/local/testvol glusterfs defaults,_netdev 0 0
, где 192.168.122.120
это IP-адрес первого «сервера glusterfs».
Если я выдам манаул mountall
или mount.glusterfs 192.168.122.120:/testvol /var/local/testvol
на CLI, a mount
показывает, что том успешно импортирован. Но как только клиент перезагружается, после того, как он снова включается, том не монтируется!
Я поискал в Интернете и нашел Эта статья, но поскольку я не использую клиент и сервер на одном узле, IMHO это не совсем применимо.
Итак, в качестве неуклюжего "обходного пути" я вставил sleep 3 && mount.glusterfs 192.168.122.120:/testvol /var/local/testvol
в каждый клиентский узел /etc/rc.local
. Насколько я могу судить, похоже, можно смонтировать том на каждом узле.
Но это довольно уродливо, и я был бы признателен за подсказку о том, как правильно решить эту проблему с монтированием glusterfs, не связанной с загрузкой.
Обратите внимание, что я использовал IP-адрес первого «сервера glusterfs», хотя /etc/hosts
всех узлов были заполнены их именами хостов. Я полагал, что использование IP-адреса более надежно.
--Зак
Потенциальным решением может быть добавление дополнительных nobootwait и direct-io-mode в fstab, попробуйте что-то вроде этого:
serverip:/vol mountpoint glusterfs defaults,nobootwait,_netdev,direct-io-mode=disable 0 0
Также проверьте ваш /etc/init/mounting-glusterfs.conf и добавьте:
exec start wait-for-state WAIT_FOR=networking WAITER=mounting-glusterfs-$MOUNTPOINT
Я надеюсь, что это поможет, поскольку я сталкивался с подобной проблемой в прошлом и решил, используя вышеуказанные комбинации / конфигурации.
Интересно, может ли добавление журнала в ваш fstab дать вам немного больше информации? См. Параметры конфигурации fstab в руководстве администратора: http://www.gluster.org/wp-content/uploads/2012/05/Gluster_File_System-3.3.0-Administration_Guide-en-US.pdf
6.1.2.2. Автоматическое монтирование томов Для автоматического монтирования тома Gluster • Чтобы подключить том, отредактируйте файл / etc / fstab и добавьте
следующая строка:
HOSTNAME-OR-IPADDRESS:/VOLNAME MOUNTDIR glusterfs defaults,_netdev 0 0
Например:
server1:/test-volume /mnt/glusterfs glusterfs defaults,_netdev 0 0
Варианты монтажа
Вы можете указать следующие параметры при использовании команды mount -t glusterfs. Обратите внимание, что вам нужно разделить все параметры запятыми.
- backupvolfile-server = имя-сервера
- выборка-попыток = N (где N - количество попыток)
- уровень журнала = уровень журнала файл журнала = файл журнала
- direct-io-mode = [включить | отключить]
- ro (для монтирования только для чтения) acl (для включения posix-ACL)
- червяк (изготовление монтировки WORM - типа "писать один раз, много читать")
- selinux (включить selinux при монтировании GlusterFS
Например:
mount -t glusterfs -o backupvolfile-server=volfile_server2,fetchattempts=2,log-level=WARNING,log-file=/var/log/gluster.log server1:/testvolume /mnt/glusterfs
Я склонен думать, что использование IP-адресов вместо имен проще и надежнее.