Re: about tail command

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




----- Original Message -----
> From: "songxin" <songxin_1980@xxxxxxx>
> To: "gluster-user" <gluster-users@xxxxxxxxxxx>
> Sent: Tuesday, March 1, 2016 7:19:23 PM
> Subject:  about tail command
> 
> Hi,
> 
> recondition:
> A node:128.224.95.140
> B node:128.224.162.255
> 
> brick on A node:/data/brick/gv0
> brick on B node:/data/brick/gv0
> 
> 
> reproduce steps:
> 1.gluster peer probe 128.224.162.255 (on A node)
> 2. gluster volume create gv0 replica 2 128.224.95.140:/data/brick/gv0
> 128.224.162.255:/data/brick/gv0 force (on A node)
> 3.gluster volume start gv0 (on A node)
> 4. mount -t glusterfs 128.224.95.140:/gv0 gluster (on A node)
> 5.create some files (a,b,c) in dir gluster (on A node)
> 6.shutdown the B node
> 7.change the files (a,b,c) in dir gluster (on A node)
> 8.reboot B node
> 9.start glusterd on B node but glusterfsd is offline (on B node)
> 10. gluster volume remove-brick gv0 replica 1 128.224.162.255:/data/brick/gv0
> force (on A node)
> 11. gluster volume add-brick gv0 replica 2 128.224.162.255:/data/brick/gv0
> force (on A node)
> 
> Now the files are not same between two brick
> 
> 12." gluster volume heal gv0 info " show entry num is 0 (on A node)
> 
> Now What I should do if I want to sync file(a,b,c) on two brick?
> 
Currently, once you add a brick to a cluster, files won't sync automatically.
Patch has been sent to handle this requirement. Auto-heal will be available soon.

You could kill the newly added brick and perform the following operations from mount
for the sync to start :
1) create a directory <dirname>
2) setfattr -n "user.dirname" -v "value" <dirname>
3) delete the directory <dirname>

Once these steps are done, start the killed brick. self-heal-daemon will heal the files.

But, for the case you have mentioned, why are you removing brick and using add-brick again?
Is it because you don't want to change the brick-path?

You could use "replace-brick" command.
gluster v replace-brick <volname> <hostname:old-brick-path> <hostname:new-brick-path>
Note that source and destination should be different for this command to work.

> I know the "heal full" can work , but I think the command take too long time.
> 
> So I run "tail -n 1 file" to all file on A node, but some files are sync but
> some files are not.
> 
> My question is below:
> 1.Why the tail can't sync all files?
Did you run the tail command on mount point or from the backend (bricks)?
If you run from bricks, sync won't happen. Was client-side healing on?
To check if they were on or off, run `gluster v get volname all | grep self-heal`, cluster.metadata-self-heal, cluster.data-self-heal, cluster.entry-self-heal should be on.

> 2.Can the command "tail -n 1 filename" trigger selfheal, just like "ls -l
> filename"?
> 
> Thanks,
> Xin
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> 
> _______________________________________________
> Gluster-users mailing list
> Gluster-users@xxxxxxxxxxx
> http://www.gluster.org/mailman/listinfo/gluster-users

-- 
Thanks,
Anuradha.
_______________________________________________
Gluster-users mailing list
Gluster-users@xxxxxxxxxxx
http://www.gluster.org/mailman/listinfo/gluster-users



[Index of Archives]     [Gluster Development]     [Linux Filesytems Development]     [Linux ARM Kernel]     [Linux ARM]     [Linux Omap]     [Fedora ARM]     [IETF Annouce]     [Bugtraq]     [Linux OMAP]     [Linux MIPS]     [eCos]     [Asterisk Internet PBX]     [Linux API]

  Powered by Linux