1、安装go环境
前端时间由于工作需要,准备做一个文件服务器,用来存储视频、音频相关的大型文件,而公司又处于节约成本的理念,只能手动搭建一个文件服务器,经过三番五次的思考后,决定使用SeaweedFS 进行搭建,如果要问我为什么?我也母鸡啊!!!
接触和学习新的东西,探索自己未曾探索过的地方!
SeaweedFS 的优略,据说京东都在用,你就说好用不好用吧
安装
sudo apt install golang
# 查看go是否安装成功
go version
查找go的文件位置
/usr/local/go
或
/usr/share/go
2、配置环境变量
# 配置
vim /etc/profile
#加入
export GOPATH=/opt/go
export GOROOT=/usr/local/go # 这里是go的文件位置
export GOOS=linux
export GOBIN=$GOROOT/bin
export GOTOOLS=$GOROOT/pkg/tool/
export PATH=$PATH:$GOBIN:$GOTOOLS
# 使配置完成后,执行下边的命令,使文件生效
source /etc/profile
3、安装seaweedfs
把下载的文件放在这里
cd /usr/local
下载
wget https://github.com/chrislusf/seaweedfs/releases/download/2.49/linux_arm64.tar.gz
解压
tar -zxf linux_amd64.tar.gz
执行命令,验证是否安装成功
./weed -h
4、创建所需目录
cd /home
mkdir seaweed_data
cd seaweed_data
相关文件目录
mkdir -p data vol/vol1 logs
5、配置并运行master
进入到包含weed的目录下,执行如下命令
./weed master -mdir=/home/seaweed_data/data -port=9333 -ip="your ip address" &>>/home/seaweed_data/logs/master.log &
注意:
1.出现如下错误:
-bash: /home/seaweed_data/logs/master.log: No such file or directory
查看是否文件存在
或
检查所指定的文件目录的权限:
比如 "/home/seaweed_data/" 以及内部的所有文件是否有执行和读写权限
修改权限:
chmod -R 777 /home/seaweed_data/
2. ip设置
可以使用公网ip,如果使用的是阿里云服务器,记得打开公网的相关接口,
如:9333, 9331
否则待会儿使用测试时会打不开页面
进入浏览器输入
http://your ip address:9333
6、master成功开启

7、配置并运行volume
./weed volume -dir=/home/seaweed_data/vol/vol1 -mserver="your ip address:9333" -ip="your ip address" -port=9331 &>>/home/seaweed_data/logs/vol1.log &
运行成功
8、文件上传测试
curl http://your ip address:9333/dir/assign
正确返回
{"fid":"2,01fabefa67","url":"your ip address:9331","publicUrl":"your ip address:9331","count":1}
恭喜牛逼的你,可以进行文件的上传了!!!
参考文章
SeaweedFS 文件存储服务器搭建: link.
SeaweedFS 官方文档:link
SeaweedFS 相关介绍:link
壁纸奉上
版权声明:本文为weixin_42253753原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。