目录

 

简介

部署

测试


简介

FastDFS是一款开源的分布式文件系统,功能主要包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了文件大容量存储和高性能访问的问题。FastDFS特别适合以文件为载体的在线服务,如图片、视频、文档等等。

部署

安装依赖环境

yum install -y git wget make cmake gcc gcc-c++

 

本示例在/root目录下执行

#下载源码

git clone https:///happyfish100/libfastcommon.git

git clone https:///happyfish100/fastdfs.git

git clone https:///happyfish100/fastdfs-nginx-module.git

 

#下载nginx

wget http://nginx.org/download/nginx-1.16.1.tar.gz

 

#安装fastdfs

cd libfastcommon

./ && ./ install

cd ../fastdfs

./ && ./ install

 

#配置fastdfs

cp -r conf/* /etc/fdfs/

vi /etc/fdfs/tracker.conf

修改:

base_path=/data/fastdfs

 

vi /etc/fdfs/storage.conf

修改:

base_path=/data/fastdfs

store_path0=/data/fastdfs/storage

tracker_server=192.168.81.143:22122

 

mkdir -p /data/fastdfs/storage

 

#启动

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf restart

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart

#查看启动情况

ps -ef|grep tracker

ps -ef|grep storage

#查看启动日志

tail -n 1000 /data/fastdfs/logs/storaged.log

 

#安装nginx

yum install -y gcc openssl-devel pcre-devel

tar -xzf nginx-1.16.1.tar.gz

cd nginx-1.16.1

mkdir -p /data/fastdfs/nginx

./configure --prefix=/data/fastdfs/nginx --add-module=/root/fastdfs-nginx-module/src

make && make install

#验证编译

/data/fastdfs/nginx/sbin/nginx -V

 

cp /root/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

vi /etc/fdfs/mod_fastdfs.conf

修改:

base_path=/data/fastdfs

tracker_server=192.168.81.143:22122

store_path0=/data/fastdfs/storage

url_have_group_name = true

 

vi /data/fastdfs/nginx/conf/nginx.conf

修改

server {

listen 80;

server_name localhost;

location /group1/M00/{

ngx_fastdfs_module;

}

}

 

启动nginx

/data/fastdfs/nginx/sbin/nginx

 

测试

fdfs客户端测试

vi /etc/fdfs/client.conf

修改

base_path=/data/fastdfs

tracker_server=192.168.81.143:22122

 

http.tracker_server_port=80#注意这个端口与http端口的对应

 

上传命令:

/usr/bin/fdfs_upload_file <config_file> <local_filename>

新建测试文件1.txt,内容随便写点,执行这个命令上传

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf 1.txt

返回

group1/M00/00/00/wKhRj13OECaABJV_AAAACmuTlHg533.txt

解释下这个路径:

组名:group1

磁盘:M00

目录:00/00

文件名:wKhRj13OECaABJV_AAAACmuTlHg533.txt

此时

vi /data/fastdfs/storage/data/00/00/wKhRj13OECaABJV_AAAACmuTlHg533.txt

即可看到存储的内容

或者通过http请求查看

curl http://localhost/group1/M00/00/00/wKhRj13OECaABJV_AAAACmuTlHg533.txt

 

下载命令:

/usr/bin/fdfs_download_file <config_file> <file_id> [local_filename]

/usr/bin/fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKhRj13OECaABJV_AAAACmuTlHg533.txt a.txt

 

删除命令:

/usr/bin/fdfs_delete_file <config_file> <file_id>

/usr/bin/fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKhRj13OECaABJV_AAAACmuTlHg533.txt