Linux下搭建FastFDS文件服务器

系统环境:CentOS Linux release 8.4.2105
组件版本:

  • fastdfs-6.07.tar.gz
  • fastdfs-nginx-module-1.22.tar.gz
  • libfastcommon-1.0.53.tar.gz

附FastFDS项目github地址:最新版本组件下载

1. 配置 libfastcommon

tar -zxvf libfastcommon-1.0.53.tar.gz
cd libfastcommon-1.0.53/
./make.sh 
./make.sh install

注意各文件安装路径,libfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,由于FastDFS程序引用usr/lib目录,所以先需要将确认/usr/lib下是否有libfastcommon.so文件,没有则需要拷贝:

2.安装FastDFS

确认是否有安装依赖库(libevent):

yum -y install libevent

安装FastDFS

tar -zxvf fastdfs-6.07.tar.gz
cd fastdfs-6.07/
./make.sh 
./make.sh install

采用默认安装的方式后的相应文件与目录:

  1. 服务脚本:
  • /etc/init.d/fdfs_storaged
  • /etc/init.d/fdfs_trackerd
  1. 配置文件:
  • /etc/fdfs/client.conf.sample
  • /etc/fdfs/storage.conf.sample
  • /etc/fdfs/tracker.conf.sample
  1. 命令工具在/usr/bin/目录下的:
  • stop.sh
  • restart.sh

3. 安装 FastDFS 跟踪器(tracker)

根据 FastDFS 跟踪器样例配置文件修改参数

cd /etc/fdfs/
cp tracker.conf.sample tracker.conf
disabled=false               //启用配置文件
port=22122                   //tracker 的端口号,一般采用 22122 这个默认端口
base_path=/home/fastdfs/tracker   //tracker 的数据文件和日志目录
http.server_port=8080  //HTTP 服务端口

启动tracker命令:service fdfs_trackerd start


初次成功启动,会在/home/fastdfs/tracker目录下创建 data、logs 两个目录;或者可以查看tracker端口监听确认是否启动成功

4. 安装 FastDFS 跟踪器(storage)

根据 FastDFS 跟踪器样例配置文件修改参数

cd /etc/fdfs/
cp storage.conf.sample storage.conf
#Tracker 数据和日志目录地址
base_path=/home/fastdfs/storage
store_path0=/home/fastdfs/storage
tracker_server=你的ip:22122(不要使用:127.0.0.1)
http.server_port=8888 //HTTP 服务端口(自行配置)

启动tracker命令:service fdfs_storaged start


初次成功启动,会在/home/fastdfs/storage目录下创建 data、logs 两个目录;或者可以查看storage端口监听确认是否启动成功

查看tracker与storage是否通讯成功:
可通过查看storage日志 tail -f /home/fastdfs/storage/logs/storaged.log


或者 /usr/bin/fdfs_monitor /etc/fdfs/storage.conf 命令查看

5.文件上传测试

测试时需要设置客户端的配置文件:

cd /etc/fdfs/
cp client.conf.sample client.conf

修改client.conf配置

base_path=/home/fastdfs/tracker #tracker服务器文件路径
tracker_server=0.0.0.0:22122 #tracker服务器IP地址和端口号
/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/1.jpg 

6.fastdfs-nginx-module整合至Nginx

FastDFS 通过 Tracker 服务器,将文件放在 Storage 服务器存储, 但是同组存储服务器之间需要进行文件复制, fastdfs-nginx-module模块用于解决同步延迟的问题。

tar -zxvf fastdfs-nginx-module-1.22.tar.gz

将其解压后其解压目录下会有src目录,nginx编译添加其解压目录,重新安装nginx:

cd nginx-1.20.2/
./configure --prefix=/usr/local/nginx --add-module=/home/package/fastdfs-nginx-module-1.22/src
make && make install

查看安装结果:

cd /usr/local/nginx/sbin
./nginx -V

进入FastDFS解压目录下的conf,将http.confmime.types拷贝到/etc/fdfs目录下(步复制则安装完组件nginx无法正常运行):
复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录并修改配置:

cp mod_fastdfs.conf /etc/fdfs/
vim mod_fastdfs.conf
#连接超时时间
connect_timeout=10
#Tracker Server
tracker_server=0.0.0.0:22122
storage_server_port=23000
#如果文件ID的uri中包含/group**,则要设置为true
url_have_group_name = true
#Storage 配置的store_path0路径,必须和storage.conf中的一致
store_path0=/home/fastfds/storage

修改nginx配置映射:

  location ~/group([0-9])/M00 {
       ngx_fastdfs_module;
  }

重启nginx即可,至此完成FastFDS安装

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容