易陆发现互联网技术论坛

 找回密码
 开始注册
查看: 429|回复: 0
收起左侧

安装Seaweedfs 全过程

[复制链接]
发表于 2022-9-14 10:08:16 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?开始注册

x
Seaweedfs 安装
安装Go
1、下载go
2、解压
tar xfgo1.11.10.linux-amd64.tar.gz -C /usr/local/
3、修改/etc/profile
vim /etc/profile
export GOPATH=/opt/go
exportGOROOT=/usr/local/go
export GOOS=linux
exportGOBIN=$GOROOT/bin
exportGOTOOLS=$GOROOT/pkg/tool/
exportPATH=$PATH:$GOBIN:$GOTOOLS
source /etc/profile
安装weed
1、Github下载指定版本
2、上传并解压
tar xflinux_amd64.tar.gz -C /usr/local/
3、创建安装目录
mkdir -p /data/seaweedfs/logs
mkdir -p /data/seaweedfs/data
mkdir -p /data/seaweedfs/vol/vol01
mkdir  -p /data/seaweedfs/vol/vol1/
4、添加启动脚本
vim/data/seaweedfs/weedfs.sh
#!/bin/bash
nohup /data/seaweedfs/weedmaster -mdir="/data/seaweedfs/data/" -ip="192.168.120.47" -ip.bind="192.168.120.47"-port=9333 -peers="192.168.120.47:9333,192.168.120.47:9333,192.168.120.47:9333"-defaultReplication="200" &>> /data/seaweedfs/logs/master.log&
nohup /data/seaweedfs/weedvolume -dataCenter=Center1 -rack rack1 -ip=192.168.120.47 -port=9991 -ip.bind192.168.120.47 -max 20 -dir=/data/seaweedfs/vol/vol1/ -mserver=192.168.120.47:9333-publicUrl 192.168.120.47:9222 &>> /data/seaweedfs/logs/vol1.log  &
nohup ./weed volume-dataCenter dc1 -rack rack1 -dir ./seaweedfs/volume -ip 192.168.88.129 -port9222 -ip.bind 192.168.88.129 -max 20 -mserver192.168.88.129:9333,192.168.88.130:9333,192.168.88.131:9333 -publicUrl192.168.88.129:9222 > ./seaweedfs/volume/volume.log &
nohup /data/weedmaster -mdir="/data/seaweedfs/data/" -ip="192.168.120.47"-ip.bind="192.168.120.47" -port=9333-peers="192.168.120.47:9333,192.168.120.47:9333,192.168.120.47:9333"-defaultReplication="200" >> /data/seaweedfs/logs/master.log2>&1 &
nohup /data/weedvolume -dataCenter=Center1 -ip=192.168.120.47 -port=9991-dir=/data/seaweedfs/vol/vol1/ -mserver=192.168.120.47:9333 >>/data/seaweedfs/logs/vol1.log 2>&1 &
chmod +x/data/seaweedfs/weedfs.sh
5、创建启动程序
vim/usr/lib/systemd/system/weedmaster.service
[Unit]
Description=weedmaster
After=network.target rc-local.service
[Service]
Type=forking
PrivateTmp=true
ExecStart=/data/seaweedfs/weedfs.sh
[Install]
WantedBy=multi-user.target
6、启动seaweedfs
systemctl enableweedmaster
systemctl startweedmaster
http://192.168.120.47:9333/
调试:
nohup /data/seaweedfs/weed master -ip=192.168.120.47-port=9333 -mdir=/data/seaweedfs/data -peers=192.168.120.47:9333,192.168.120.47:9333,192.168.120.47:9333>> /data/seaweedfs/data/master.log &
nohup /data/seaweedfs/weed volume -dataCenter dc1-rack rack1 -dir /data/seaweedfs/volume -ip 192.168.120.47 -port 9222 -ip.bind192.168.120.47 -max 20 -mserver 192.168.120.47:9333,192.168.120.47:9333,192.168.120.47:9333-publicUrl 192.168.120.47:9222 >> /data/seaweedfs/volume/volume.log &
测试:
{"fid":"1,01592b640e","url":"192.168.120.47:9222","publicUrl":"192.168.120.47:9222","count":1}[root@seaweedfs~]#
[root@seaweedfs ~]# curl -Ffile=/data/seaweedfs/volume/volume.log   192.168.120.47:9222/1,01592b640e
{"size":33,"eTag":"d7a0738f"}[root@seaweedfs~]#
[root@seaweedfs ~]# curl -Ffile=@/usr/src/linux_amd64.tar.gz   192.168.120.47:9222/1,01592b640e
{"name":"linux_amd64.tar.gz","size":35348455,"eTag":"0747f50b"}[root@seaweedfs~]#
配置运行Filer并挂载到本地目录
Filer允许以另一种方式上传文件

    % A0 ~8 N9 D; @( P& y
  • 安装启动
    + \5 [0 F2 c2 M& X
mkdir -p /data/seaweedfs
cd /data/seaweedfs   
创建filter文件:
touch filer.toml
mkdir -p /data/module/filer_path/level
/data/seaweedfs/weed scaffold filer-output="" >filer.toml
打印出的内容写入到 filer.toml, 并且修改其中的配置
dir = "/data/module/filer_path/level"
可以使用文件, MySQL, redis等保存 filer的元数据信息, 只需要启用或者停用对应的配置,具体请参考https://github.com/chrislusf/seaweedfs/wiki/Filer-Server-API

    # s, D% v0 K) ^
  • 启动' L$ r+ _) p/ c  L0 h5 a
nohup /data/seaweedfs/weed filer-master=192.168.120.47:9333,192.168.120.47:9333,192.168.120.47:9333-ip=192.168.120.47 -port=8888 &
    / `9 `5 e0 l5 s
  • 上传文件2 `: q4 o- {0 c$ s/ N
         [root@seaweedfs ~]# curl -F "filename=@/usr/src/go1.11.10.linux-amd64.tar.gz"     "http://192.168.120.47:8888/path/to/sources/"
    + L5 N, o% U0 z- L+ U
{"name":"go1.11.10.linux-amd64.tar.gz","size":121074848}[root@seaweedfs~]#

    0 t' v& g. c/ V+ F8 r
  • 返回结果
    4 I2 p/ n8 w5 Q* }4 c0 ?+ ~0 n     {"name":"volume.log","size":1656,"fid":"13,0da7c2b7ff","url":"http://192.168.88.130:9222/13,0da7c2b7ff"}
    4 c, W) X+ t! J# [4 K+ h     
    可以看到,前面的上传需要两步,现在用filer上传,只需要一步,并且可以指定文件夹,这里的/path/to/sources/就是文件路径
    , y) u1 N+ c. t- `7 @: g
  • 可直接输入http://192.168.120.47:8888/ 地址进行访问.下载和前面的流程一样.$ |9 `8 H. }9 ^# w. G

mount挂载

    0 F$ z$ s) c, x
  • [root@seaweedfs ~]# mkdir -p /data/seaweedfs/seaweedfs/data/mount/ m7 z+ e7 E, a9 v- D. e0 D
  • 指定文件管理器挂载到/seaweedfs/data/mount目录下( f: \/ X& y) {
nohup /data/seaweedfs/weed mount-filer=192.168.120.47:8888 -dir=/data/seaweedfs/seaweedfs/data/mount/ &
执行命令后,便可看到通过filer上传的文件已经挂载到了本地/data/seaweedfs/seaweedfs/data/mount/  path/to/sources目录下.
' l2 H! A9 ^6 Y, j
具体信息以官方wiki为主.
) v: b0 _3 t! _# R! z/ P/ f
您需要登录后才可以回帖 登录 | 开始注册

本版积分规则

关闭

站长推荐上一条 /4 下一条

北京云银创陇科技有限公司以云计算运维,代码开发

QQ|返回首页|Archiver|小黑屋|易陆发现技术论坛 ( 蜀ICP备2026014127号-1 )点击这里给我发消息

GMT+8, 2026-4-8 21:37 , Processed in 0.045805 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

© 2012-2025 Discuz! Team.

快速回复 返回顶部 返回列表