web-dev-qa-db-ja.com

FreeBSD 11.1 /マウントの問題でのGlusterFS

FreeBSD 11.1の分散ファイルストレージとしてGlusterFSを使用したいので、ドキュメントが貧弱なので、ネット上のいくつかのハウツーに従いました。 glusterfsボリュームを作成することはできましたが、他のクライアントマシンにマウントするのに問題があります。これが私がこれまでにしたことです:

3つのホストがあり、すべて同じサブネットにあります。

10.0.0.21 Webserver
10.0.0.31 gluster1
10.0.0.32 gluster2

3つのホストすべての/ etc/hostsファイルに上記のエントリを追加しました。

Gluster1とgluster2の/etc/rc.confを次のように変更しました。

glusterd_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

(私はスプリットブレインリスクを認識しています。これは単純なテストシナリオです)

私はvolume1を次のように始めました:

gluster 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

これまでのところすべてが機能し、問題ないようです。

今、私の問題は、これをクライアント/コンシューマーマシン(Webサーバー)にマウントして使用し始めます

Glusterfsvolume1をマウントできるようにする必要があることをいくつかの場所で読みました。

mount -t glusterfs gluster1:/volume1 /mnt

これにより、次のエラーが単純に返されます。

mount: gluster1:/volume1: Operation not supported by device

「ばかげた」質問をする前にいつもするように、私はこれについてたくさんググった。クライアントにglusterfsをインストールし(pkg install glusterfs)、クライアント/etc/rc.confで有効にし、Fuse用のものを追加することも試してみましたが、動作させることができませんでした。ここで見逃しているのはとても小さなことだとわかっているので、かなりイライラします!?

誰かが私の問題に光を当てることができますか?

編集:NFSが機能していないようです:volume1のステータスがリスニングを示していませんTCPポート

gluster volume status volume1

ショー:

Status of volume: volume1
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
Self-heal Daemon on localhost               N/A       N/A        N       55181
Self-heal Daemon on 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はオフに設定されました。 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であることに加えて)、両方のブリックもオンラインではないようです(OnlineはNとして示されています)?!??

だから私は本当に立ち往生していて、いくつかの助けを使うことができます。

2
stoney

2年後、私はついにFSTABを使用してFreebsdにglusterfsボリュームを自動マウントする方法を見つけました。

gluster1:/ volume1/mnt/glusterfsfusedfs rw、acl、transport = tcp、_netdev、mountprog =/usr/local/sbin/mount_glusterfs、late 0 0

0
stoney

最後にそれは働いています:

/usr/local/sbin/mount_glusterfs gluster1:/volume1 /mnt

トリックをしました...

クライアントには、net/glusterfsパッケージと、/ boot /loader.conf内の次のステートメントもインストールする必要があります。

Fuse_load="YES"

乾杯

0
stoney