我想在FreeBSD 11.1上使用GlusterFS作为分布式Filestorage 文档很差,所以我在网上跟踪了一些howtos。 我可以创建glusterfs卷,但是我无法将其挂载到其他客户机上。这是我到目前为止所做的:
我有三个主机,都在同一个子网中。
10.0.0.21 Webserver
10.0.0.31 gluster1
10.0.0.32 gluster2
我在所有三台主机上的/ etc / hosts文件中添加了上述条目。
我使用:
修改了gluster1和gluster2上的/etc/rc.confglusterd_enable="YES"
在gluster1上我做了:
gluster peer probe gluster2
(成功)
每个gluster1和gluster2都有以下硬盘:/ dev / da1
它们被分区(BSD标签)并作为/ datastore挂载在gluster1和gluster2上
" cat / etc / fstab"给出了gluster1和gluster2:
# Device Mountpoint FStype Options Dump Pass#
/dev/da0a / ufs rw 1 1
/dev/da1a /datastore ufs rw 2 2
我创建了gluster volume1:
gluster volume create volume1 replica 2 transport tcp gluster1:/datastore gluster2:/datastore force
(我意识到脑劈裂风险,这是一个简单的测试方法)
我用:
启动了volume1gluster volume start volume1
使用以下方法检查volume1:
gluster volume info
让我回来:
Type: Replicate
Volume ID: a760c545-1cc9-47a4-bc9e-51f6180e4d7a
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: gluster1:/datastore
Brick2: gluster2:/datastore
Options Reconfigured:
transport.address-family: inet
nfs.disable: on
到目前为止一切正常,似乎还不错。
现在我的麻烦开始在客户端/消费者机器(Webserver)上安装并使用它
我在几个地方读过glusterfs volume1应该可以安装:
mount -t glusterfs gluster1:/volume1 /mnt
这让我简单地回答了以下错误:
mount: gluster1:/volume1: Operation not supported by device
正如我通常所做的那样,我会问"愚蠢"问题,我为此搜索了很多。 在客户端上安装了glusterfs(pkg install glusterfs),在客户端/etc/rc.conf中启用它,为FUSE添加东西,但我无法启动它。 我觉得很生气,因为我知道这一定是我在这里失踪的一件小事!?
有人能解释我的问题吗?
光泽处理TCP端口RDMA端口在线Pid -------------------------------------------------- ---------------------------- Brick gluster1:/ datastore N / A N / A N N / A. Brick gluster2:/ datastore N / A N / A N N / A. 本地主机上的自我修复守护进程N / A N / A N 55181 gluster2上的自愈守护进程N / A N / A N 30318
Task Status of Volume volume1
------------------------------------------------------------------------------
There are no active volume tasks
所以,我用这个启用了NFS:
gluster volume set volume1 nfs.disable off
警告不再使用GlusterFS NFS,而是使用NFS-Ganesha。我忽略了这个测试的警告。
现在我重新启动了音量:
gluster volume stop volume1
gluster volume start volume1
检查我做了:
gluster volume info
现在告诉我:
Volume Name: volume1
Type: Replicate
Volume ID: a760c545-1cc9-47a4-bc9e-51f6180e4d7a
Status: Started
Snapshot Count: 0
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: gluster1:/datastore
Brick2: gluster2:/datastore
Options Reconfigured:
nfs.disable: off
transport.address-family: inet
所以nfs.disable设置为off。 NFS现在应该正确吗?
但是
gluster volume status volume1
仍然显示没有运行NFS:
Gluster process TCP Port RDMA Port Online Pid
------------------------------------------------------------------------------
Brick gluster1:/datastore N/A N/A N N/A
Brick gluster2:/datastore N/A N/A N N/A
NFS Server on localhost N/A N/A N N/A
Self-heal Daemon on localhost N/A N/A N 99115
NFS Server on gluster2 N/A N/A N N/A
Self-heal Daemon on gluster2 N/A N/A N 37075
Task Status of Volume volume1
------------------------------------------------------------------------------
There are no active volume tasks
这里令人不安的是(在NFS Online旁边是N),这两块砖似乎也不在线(在线显示为N)?!??
所以我真的卡住了,可以使用一些帮助。
答案 0 :(得分:1)
最后它正在运作:
/usr/local/sbin/mount_glusterfs gluster1:/volume1 /mnt
做了诀窍......
客户端还需要安装net / glusterfs包,并在/boot/loader.conf中使用以下语句:
fuse_load="YES"
干杯
答案 1 :(得分:0)
我认为问题可能出在ufs文件系统上。它是否广泛支持扩展属性?
GlusterFS要求FS具有扩展属性支持。 (XFS是一个)。
从链接:(https://access.redhat.com/articles/1273933)
由于Red Hat Storage广泛使用扩展属性,因此Red Hat Storage的XFS inode大小为512字节,而默认XFS inode大小为256字节。因此,XFS的inode大小必须设置为512字节,同时格式化Red Hat Storage砖块。要设置inode大小,需要在mkfs.xfs命令中使用-i size选项。