在创建volume的时候提示如下报错
[root@gluster-node1 ~]# gluster volume create testvol 192.168.11.139:/data/brick1 192.168.11.140:/data/brick2 forcevolume create: testvol: failed: /data/brick1 or a prefix of it is already part of a volume
找到了国外的一篇博客,据这篇博客讲。从glusterfs3.3开始 ,有一个新的变化就是会检测这个目录是否已经加入了volume。这就导致了很多gluster支持的问题。
假如你移除了一个volume的brick并且继续使用这个volume,然后重新添加之前的这个brick,这时你的文件状态就会改变。就会造成一系列的问题。它们中的大多数会引起数据丢失。
假如你重新使用一个brick的话,请确保你知道自己在做什么
解决办法就是:
setfattr -x trusted.glusterfs.volume-id $brick_path setfattr -x trusted.gfid $brick_path rm -rf $brick_path/.glusterfs
[root@gluster-node1 data]# setfattr -x trusted.glusterfs.volume-id /data/ctdb/ [root@gluster-node1 data]# setfattr -x trusted.gfid /data/ctdb/ [root@gluster-node1 data]# rm -rf /data/ctdb/. ./ ../ .glusterfs/ [root@gluster-node1 data]# rm -rf /data/ctdb/.glusterfs [root@gluster-node1 data]# service glusterd restart Starting glusterd: [确定]
不要担心提示说 属性不存在,只要它不存在,那它就处于健康的状态
最后,重启一下glusterfs来确保它并没有“记起来”旧的bricks
有些可能翻译的不到位,可以查看原文
https://joejulian.name/blog/glusterfs-path-or-a-prefix-of-it-is-already-part-of-a-volume/
转载于:https://blog.51cto.com/zhangdl/1882533