seaweedfs简单使用

仅记录一下日常使用,比较重要的api。

1.到处指定volume中的文件名,在master节点下执行获取seaweedfs指定volumeid下的文件名称:
weed export -dir=/data/data/weed_volume_vaccum -volumeId=116

2.seaweedfs上的数据执行delete之后不会直接清除,而是从needlemap文件中删除,需要通过紧缩操作清除碎片;指定master节点ip和port执行

volume紧缩:
curl "http://masterserver:9333/vol/vacuum"
curl "http://masterserver:9333/vol/vacuum?garbageThreshold=0.4"


3.获取volume的状态,指定volume的server ip和port获取volume状态:
curl "http://volumeserver:8089/status?pretty=y"


4.在指定的volume server下挂载或卸载volume,在进行volume迁移时很有效:
curl "http://volumeserver:8080/admin/volume/unmount?volume=volumeId"


5.和2的操作一样,想master节点发出的vacuum操作最后会向各个volume server发送check、compact和commit请求;这里只是指定volume server进行vacuum操作。
向指定volumeserver发check/compact/commit请求
curl "http://volumeserver:8082/admin/vacuum/check?volume=50&garbageThreshold=0.0"
curl "http://volumeserver:8082/admin/vacuum/compact?volume=50"
curl "http://volumeserver:8082/admin/vacuum/commit?volume=50"


这里的garbageThreshold参数是指当volume的磁盘碎片率大于该指之后是否执行vacuum进行碎片回收。至于紧缩的详细过程某blog聊得很清楚,但是紧缩的时候也是非常有用,感谢!

http://www.cnblogs.com/cobbliu/p/4972603.html


本人使用74版本,中间vacuum的时候出现过一次问题导致数据丢失,不过chris已经修复了,感谢chrislusf!


你可能感兴趣的:(linux,seaweedfs)