seaweedfs的复制

seaweedfs的复制

   张吉吉     2020年8月29日 01:14     165

1、概念

seaweedfs提供了复制的功能,其功能并不是将文件进行复制,而是在卷上进行。

其有两个概念,一个是数据中心对应参数是-dataCenter,一个是机架对应参数-rack。

而选择对应复制关系时可以通过-defaultReplication参数进行设置。

 

2、配置

(1)启动master

./weed master -mdir=data -port=9333 -defaultReplication="001" -ip="192.168.0.216"

这里设置复制关系为001。001是在同一机架上复制一次。

(2)启动volume

这个配置只需要在启动的时候进行设置即可。

我们在192.168.0.217设置两个volume

./weed volume -dir=volume1 -mserver=192.168.0.216:9333 -port=8081 -dataCenter=dc1 -rack=rack1

./weed volume -dir=volume2 -mserver=192.168.0.216:9333 -port=8082 -dataCenter=dc1 -rack=rack1

上边两条命令意思就是将两个volume创建在dc1的数据中心的rack1机架上。

在192.168.0.218设置两个volume

./weed volume -dir=volume1 -mserver=192.168.0.216:9333 -port=8081 -dataCenter=dc1 -rack=rack2

./weed volume -dir=volume2 -mserver=192.168.0.216:9333 -port=8082 -dataCenter=dc1 -rack=rack2

上边两条命令意思就是将两个volume创建在dc1的数据中心的rack2机架上。

可以在master上去查看。可以看到数据中心是dc1,两个服务器上的volume分别属于不同机架。

1.png

 

3、复制参数

000 不备份,只有一份数据
001 在相同的rack里备份一份数据
010 在相同数据中心内不同的rack间备份一份数据
100 在不同的数据中心备份一份数据
200 在两个不同的数据中心复制2次
110 在不同的rack备份一份数据, 在不同的数据中心备份一次

 

如果以xyz做比,xyz每个都可以是0,1,2。因此有9种可能的复制类型,并且可以很容易地扩展。

x 在别的数据中心备份的份数
y 不相同数据中心不同的racks备份的份数
z 在别的服务器相同的rack的备份份数


其他文章