我怎样才能修复与gluster自我愈合目录总大小

我构build了一个glusterfs集群,types是带有4个服务器的条带复制卷:

Volume Name: test-volume Type: Striped-Replicate Volume ID: bdb596e6-a7d2-44a4-8791-1b4fdc57469c Status: Started Number of Bricks: 1 x 2 x 2 = 4 Transport-type: tcp Bricks: Brick1: 10.90.245.18:/exp1 Brick2: 10.90.245.35:/exp2 Brick3: 10.90.245.36:/exp3 Brick4: 10.90.245.37:/exp4 

我从一个客户端挂载它,同时上传一个100G的文件到testing卷。 服务器上的每个文件应该是50G。 当我上传数据到集群时,我closures了一个集群服务器。 当客户端完成上传文件,然后启动服务器,并启动服务glusterd。 然后像这样的luslus音量治疗信息:

 root@alyrokif:/exp1# gluster volume heal test-volume info Gathering Heal info on volume test-volume has been successful Brick 10.90.245.18:/exp1 Number of entries: 0 Brick 10.90.245.35:/exp2 Number of entries: 0 Brick 10.90.245.36:/exp3 Number of entries: 0 Brick 10.90.245.37:/exp4 Number of entries: 0 

和存储目录在重新启动的服务器,如下所示:

 root@xetvmcjg:/exp2# ll -h total 742M drwxr-xr-x 3 root root 4.0K Mar 28 16:37 ./ drwxr-xr-x 24 root root 4.0K Mar 27 16:30 ../ drw------- 72 root root 4.0K Mar 28 16:36 .glusterfs/ -rw-r--r-- 2 root root 50G Mar 28 16:37 testfile 

其他3台服务器有50G。 但重新启动的服务器上只有742MB。 那么我怎样才能使这个742MB到50G。

我假设你正在使用Gluster 3.3

Gluster做了积极的自我治疗,尽pipe可能需要引起注意。 这可以通过从客户端访问文件来触发,这会导致它(在10分钟内)注意到同步不完整并开始修复。

你也可以强制治疗:

 gluster volume heal testvol 

并强制它在卷上治愈所有的东西,而不pipe这样做的需要(如果你有很多文件可能需要长的时间)

 gluster volume heal testvol full 

您已经find了跟踪修复进度的命令,尽pipe这也反映在gluster日志文件中。