FastDFS是一种分布式文件系统,由两个主要角色构成:
Tracker Server(向导服务器):也叫跟踪服务器,负责调度存储服务器节点和客户端通信,起到一个负载均衡的作用
Storage Server(存储服务器):保存文件和元数据的服务器
一、FastDFS的安装
1、安装编译环境
yum install make cmake gcc gcc-c++
2、安装相关依赖包,所有Tracker Server和Storage Server都需要安装,软件包可以在github上下载,如https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
#编译安装 libfastcommon
unzip libfastcommon-master.zip
cd libfastcommon-master
./make.sh
./make.sh install
#编译安装fastdfs-master
unzip fastdfs-master-V5.05.zip
cd fastdfs-master
./make.sh
./make.sh install
#该组件是用来和Nginx结合的,实现web访问已上传的文件
unzip fastdfs-nginx-module-master.zip
#安装nginx
./configure --prefix=/usr/local/nginx --add-module=/usr/local/fastdfs-module-master/src
3、安装完成后会在/etc/fdfs目录生成配置文件client.conf.sample、storage.conf.sample、tracker.conf.sample。在/etc/init.d下有storage和tracker的服务启动脚本
二、FastDFS Tracker配置
1、复制 Tracker示例配置文件并进行重命名,再修改其中配置
cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
vi /etc/fdfs/tracker.conf
disabled=false #启动配置
port=22122 #端口
base_path=/data/fastdfs/tracker #存储日志和数据的目录
2、启动tracker服务,服务启动后就会在base_path生成日志和数据文件
/etc/init.d/fdfs_trackerd start
三、FastDFS Storage配置
1、复制 Storage示例配置文件并进行重命名,再修改其中配置
cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
vi /etc/fdfs/storage.conf
disabled=false #启动配置
port=23000 #端口
base_path=/data/fastdfs/storage #存储日志和数据的目录
store_path0=/fastdfs/storage #存储目录
tracker_server=192.168.1.100:22122 #tracker服务器地址
http.server_port=80 #http访问文件的端口
2、启动storage服务
/etc/init.d/fdfs_storage start
四、上传文件进行测试(这里只是测试使用,实际生产是用代码上传)
1、修改Tracker服务器客户端配置
cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
vi etc/fdfs/client.conf
base_path=/data/fastdfs/tracker
tracker_server=192.168.1.100:22122
2、执行文件上传命令,执行成功后会返回文件ID号
fdfs_upload_file /etc/fdfs/client.conf /root/test.txt
五、FastDFS常用命令
#文件删除
fdfs_delete_file /etc/fdfs/client.conf file1/M00/00/05/xxxx.zip
#查看文件状态
fdfs_file_info /etc/fdfs/client.conf file1/M00/00/14/xxx.zip
#文件下载
fdfs_download_file /etc/fdfs/client.conf policy1/M00/C2/B1/xxxx.pdf ./xxxx.pdf
#文件上传
fdfs_upload_file/etc/fdfs/voice1.conf 22.jpg