入门概念

Master service

通常有1或3台,通过分布式Raft协议选出leader
功能:

  1. 分配文件id
  2. 指定存储对象存在哪一个volumes
  3. 决定集群的节点
  4. 帮助volumes路由,复制备份

    api

    Assign a file key

Lookup volume

Force garbage collection

Pre-Allocate Volumes

Delete Collection

Check System Status

Check Writable Volume Status

Check Volume Status

Volume service

功能:

  1. 负责真正存储文件
  2. 冗余备份数据
  3. 通过心跳协议传输状态和信息给Leader

    api

    read file 下载

write file 上传

删除文件

View Manifest File Content for chunked big file

Check Volume Server Status

Filer Service

可选的,干重活
承上启下volumes 和objects之间
通过url或者文件系统对外提供http服务或者用户空间文件挂载
小结:提供便捷的web api,提供上传下载功能

api

上传

下载

更改 删除file tagging

新建空文件夹

列出文件夹下的所有文件

删除文件

删除文件夹

S3 service

可选的
提供AWS style S3 buckets,类似于Filer Service

其他概念

Volume Concept

默认30g,默认开启8个,每个卷有自己的失效时间和备份文件
默认大小可调节为

Collection Concept

管理一组的volumes
删除比较快

快速入门

  1. ./weed server -master.port=9333 -volume.port=8080 -dir="./data"

或者

  1. weed master -mdir="./master"
  2. weed volume -max=100 -mserver="localhost:9333" -dir="./data"