系统环境: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
采用默认安装的方式后的相应文件与目录:
- 服务脚本:
/etc/init.d/fdfs_storaged
/etc/init.d/fdfs_trackerd
- 配置文件:
/etc/fdfs/client.conf.sample
/etc/fdfs/storage.conf.sample
/etc/fdfs/tracker.conf.sample
- 命令工具在/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.conf
和mime.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安装