FastDFS安装手册

简介: fastDFS架构包括 Tracker server和Storage server。客户端请求Tracker server进行文件上传、下载,通过Trackerserver调度最终由Storage server完成文件上传和下载。

FastDFS原理简介

Trackerserver作用是负载均衡和调度,通过Trackerserver在文件上传时可以根据一些策略找到Storageserver提供文件上传服务。可以将tracker称为追踪服务器或调度服务器。

     Storageserver作用是文件存储,客户端上传的文件最终存储在Storage服务器上,Storage server没有实现自己的文件系统而是利用操作系统 的文件系统来管理文件。可以将storage称为存储服务器。  

image.png
通信原理
文件上传

image.png

FastDFS搭建

下载
下载的包都存放在/root/目录下。

下载libfastcommon、fastdfs、fastdfs-nginx-module:

cd /root/
wget https://github.com/happyfish100/libfastcommon/archive/V1.0.39.tar.gz -SO libfastcommon.tar.gz
wget https://github.com/happyfish100/fastdfs/archive/V5.11.tar.gz -SO fastdfs.tar.gz
wget https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.20.tar.gz -SO fastdfs-nginx-module.tar.gz

解压
tar -zxf fastdfs.tar.gz
tar -zxf fastdfs-nginx-module.tar.gz
tar -zxf libfastcommon.tar.gz

安装
安装基础包:
yum install gcc-c++ libevent -y

安装libfastcommon
cd libfastcommon-1.0.39
./make.sh
./make.sh install

安装fastdfs
cd fastdfs-5.11
./make.sh
./make.sh install

安装好后,程序是在/usr/bin目录下:

which fdfs_trackerd
image.png

而配置文件是在/etc/fdfs目录下:
ls /etc/fdfs
client.conf.sample storage_ids.conf.sample tracker.conf.sample storage.conf.sample
但是这些配置文件是不全的,而且都是模板,所以需要从fastdfs包中拷贝过来,并修改配置:
cd /root/fastdfs-5.11/conf
ls
anti-steal.jpg client.conf http.conf mime.types storage.conf storage_ids.conf tracker.conf
cp /root/fastdfs-5.11/conf/* /etc/fdfs
cp /root/fastdfs-nginx-module-1.20/src/mod_fastdfs.conf /etc/fdfs

修改配置文件
修改/etc/fdfs/tracker.conf
必改项:base_path
image.png
修改/etc/fdfs/storage.conf
横向扩展:多台storage即配置基本一致,变更group_name即可
纵向扩展:如果有多个挂载磁盘,则定义多个store_path即可
修改项:group_name base_path store_path0 tracker_server
image.png
image.png
修改client.cnf
修改项:base_path tracker_server
image.png
修改/etc/fdfs/mod_fastdfs.conf:
修改项:base_path tracker_server group_name
image.png
启动tracker和storage:
启动
fdfs_trackerd /etc/fdfs/tracker.conf start
fdfs_storaged /etc/fdfs/storage.conf start

查看日志
tail -10f /root/fdfs-5.11/logs/trackerd.log
tail 10f /root/fdfs-5.11/logs/storaged.log
如果日志显示有错误信息,需要根据信息来查找错误原因
查看状态:
image.png

上传文件

fdfs_test /etc/fdfs/client.conf upload /root/fastdfs-5.11/INSTALL
image.png

参考资料:
https://www.cnblogs.com/gugibv/p/8585616.html
https://blog.csdn.net/xingjiarong/article/details/50559768
https://segmentfault.com/a/1190000018251300?utm_source=tag-newest
https://blog.csdn.net/kamroselee/article/details/80334621
https://sourceforge.net/projects/fastdfs/
https://github.com/happyfish100/libfastcommon

相关文章
|
存储 负载均衡 Linux
|
存储 缓存 NoSQL
Harbor高可用集群设计及部署(基于离线安装方式一)
基于Harbor离线安装方式的高可用方案设计及部署。
1006 0
|
11月前
|
安全 算法 区块链
当量子计算遇上区块链:未来技术的双刃剑
当量子计算遇上区块链:未来技术的双刃剑
506 16
|
中间件 Nacos 数据安全/隐私保护
Nacos下载与安装配置(2.3.0版本示例)
本文介绍微服务中间件 nacos的下载与安装以及配置
Nacos下载与安装配置(2.3.0版本示例)
|
Java Maven
Maven编译报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile 解决方案
在执行Maven项目中的`install`命令时,遇到编译插件版本不匹配的错误。具体报错为:`maven-compiler-plugin:3.13.0`要求Maven版本至少为3.6.3。解决方案是将Maven版本升级到3.6.3或降低插件版本。本文详细介绍了如何下载、解压并配置Maven 3.6.3,包括环境变量设置和IDEA中的Maven配置,确保项目顺利编译。
14933 5
Maven编译报错:Failed to execute goal org.apache.maven.plugins:maven-compiler-plugin:3.13.0:compile 解决方案
|
存储 Cloud Native Java
Windows下Minio的安装以及基本使用
MinIO 是一个开源的云原生分布式对象存储系统,兼容亚马逊S3接口,适合存储大容量非结构化数据。本文介绍Windows下MinIO的安装与基本使用:通过以上步骤,您可以在Windows环境中成功安装并使用MinIO。
9113 19
|
存储 应用服务中间件 测试技术
fastdfs-nginx-module的安装与部署
fastdfs-nginx-module的安装与部署
1706 0
fastdfs-nginx-module的安装与部署
|
Oracle Java 关系型数据库
jdk17安装全方位手把手安装教程 / 已有jdk8了,安装JDK17后如何配置环境变量 / 多个不同版本的JDK,如何配置环境变量?
本文提供了详细的JDK 17安装教程,包括下载、安装、配置环境变量的步骤,并解释了在已有其他版本JDK的情况下如何管理多个JDK环境。
27692 0
|
存储 文件存储 对象存储
FastDFS和Minio如何选择
【6月更文挑战第16天】FastDFS和Minio如何选择
3060 1