Ubuntu22.04安装SeaweedFS详细流程

第九章 ubuntu学习入门之SeaweedFS安装


前言

SeaweedFS​​ 是一个开源的分布式文件存储系统,专为处理海量小文件设计。它由 Chris Lu 开发,具备高性能、高扩展性和简洁架构的特点。核心目标是为小文件存储提供低延迟和高吞吐量的解决方案。


一、安装步骤

1.下载官方二进制文件

LATEST_VERSION="3.92"  # 查看最新版:https://github.com/seaweedfs/seaweedfs/releases
DOWNLOAD_URL="https://github.com/seaweedfs/seaweedfs/releases/download/$LATEST_VERSION/linux_amd64.tar.gz"
wget $DOWNLOAD_URL    # 下载

2.解压

sudo tar -xzvf linux_amd64.tar.gz

3.移动执行文件到系统路径

sudo mv weed /usr/local/bin/

4.验证安装

weed version

二、基本服务启动命令

1.启动 Master Server​

weed master -ip=your_ip -port=9333

2.启动 Volume Server​

weed volume -dir=/data -max=100 -ip=your_ip -port=8080 -mserver=master_ip:9333

3.访问Master管理界面:http://localhost:9333

在这里插入图片描述

三、配置为系统服务

1.创建数据目录

sudo mkdir -p /data/seaweedfs/{master,volume,filer}

2.创建 Master 服务

vim /etc/systemd/system/seaweedfs-master.service

[Unit]
Description=SeaweedFS Master
After=network.target

[Service]
ExecStart=/usr/local/bin/weed master -ip=your_ip -port=9333 -mdir=/data/seaweedfs/master
Restart=always

[Install]
WantedBy=multi-user.target

2.创建 Volume 服务

vim /etc/systemd/system/seaweedfs-volume.service

[Unit]
Description=SeaweedFS Volume Server
After=network.target seaweedfs-master.service

[Service]
ExecStart=/usr/local/bin/weed volume -ip=your_ip -port=8080 -mserver=your_ip:9333 -dir=/data/seaweedfs/volume
Restart=always
User=root
RestartSec=3

[Install]
WantedBy=multi-user.target

3.创建 Filer 服务

vim /etc/systemd/system/seaweedfs-filer.service

[Unit]
Description=SeaweedFS Filer
After=network.target seaweedfs-master.service
Requires=seaweedfs-master.service

[Service]
ExecStart=/usr/local/bin/weed filer -master=10.1.20.158:9333 -port=8888
WorkingDirectory=/data/seaweedfs/filer
Restart=always
RestartSec=3
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=seaweedfs-filer

[Install]
WantedBy=multi-user.target

4.启用并启动服务

#重新加载 systemd 配置
sudo systemctl daemon-reload

# 启用开机自启
sudo systemctl enable seaweedfs-master.service
sudo systemctl enable seaweedfs-volume.service
sudo systemctl enable seaweedfs-filer.service

# 启动服务
sudo systemctl start seaweedfs-master.service
sudo systemctl start seaweedfs-volume.service
sudo systemctl start seaweedfs-filer.service

# 检查服务状态
sudo systemctl status seaweedfs-master.service
sudo systemctl status seaweedfs-volume.service
sudo systemctl status seaweedfs-filer.service

四、防火墙配置(如启用UFW)​

# 开放必要端口
sudo ufw allow 9333/tcp  # Master
sudo ufw allow 8080/tcp  # Volume
sudo ufw allow 8888/tcp  # Filer
sudo ufw reload

总结

1、核心架构:​​
​​Master Server(s):​​
管理​​卷(Volume)​​ 的元数据(卷 ID、文件 ID 的关系)。
负责分配文件 ID(File ID)。
管理卷服务器(Volume Servers)的集群拓扑(哪些卷在哪些服务器上)。
​​不存储实际文件内容!​​ 只存储元数据。
可配置多主(Master Peers)集群模式实现高可用(HA)。
​​
2、Volume Server(s):​​
​​存储实际的文件内容。​​
每个 Volume Server 管理多个​​卷(Volume)​​。
每个卷是磁盘上的一个目录,包含一个大的 .dat 文件(存储实际文件内容)和一个对应的 .idx 索引文件(记录文件在 .dat 中的偏移量和大小)。
直接处理来自客户端的数据读写请求。
可以通过简单增加 Volume Server 节点来无限扩展存储容量和吞吐量。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值