fastDfs单机版安装

安装FastDFS依赖

FastDFS是C语言开发的应用。安装必须使用make、cmake和gcc编译器。

1
yum install -y make cmake gcc gcc-c++ perl

下载安装包

libfatscommon FastDFS分离出的一些公用函数包

FastDFS FastDFS本体

https://github.com/happyfish100 作者:余庆(YuQing)

安装wget:

1
yum install wget

下载:

https://github.com/happyfish100/libfastcommon/archive/refs/tags/V1.0.57.tar.gz

https://github.com/happyfish100/fastdfs/archive/refs/tags/V6.08.tar.gz

解压:

1
2
3
tar -zxvf libfastcommon-1.0.57.tar.gz

tar -zxvf fastdfs-6.08.tar.gz

libfastmon 安装

编译:

1
./make.sh

安装:

1
./make.sh install

FastDFS本体安装

1
2
./make.sh
./make.sh install

如果安装出现错误,按照错误提示安装相应的软件,执行./make.sh clean。

/etc/fdfs - 配置文件所在位置。

/usr/include/fastdfs - 包含的一些插件组所在位置

在解压目录的init.d文件夹中有程序脚本:fdfs-storagedfdfs-trackerd

配置文件在/etc/fdfs/目录中

​ tracker.conf - 跟踪器服务配置文件模板

​ storage.conf- 存储服务器配置文件模板

​ client.conf - FastDFS提供的命令行客户端配置文件模板。可以通过命令行测试FastDFS有效性。

配置修改及启动

tracker

1
vim /etc/fdfs/tracker.conf

打开 tracker.conf

修改 base_path 路径,base_path FastDFSTracker启动后使用的根目录,用来存放Tracker data和logs。

1
base_path=/home/yuqing/fastdfs -> base_path=/var/data/fastdfs-tracker(自定义目录)

配置中的路径需要先创建好才能启动服务

1
mkdir -p /var/data/fastdfs-tracker

启动:

1
fdfs_trackerd /etc/fdfs/tracker.conf start

查看状态:

1
fdfs_trackerd /etc/fdfs/tracker.conf status

停止:

1
fdfs_trackerd /etc/fdfs/tracker.conf stop

重启:

1
fdfs_trackerd /etc/fdfs/tracker.conf restart

Storage

1
vim /etc/fdfs/storage.conf
1
2
mkdir -p /var/data/fastdfs-storage/base
mkdir -p /var/data/fastdfs-storage/store

修改storage.conf

base_path=/home/yuqing/fastdfs -> base_path=/var/data/fastdfs-storage/base(自定义目录)

store_path0=/home/yuqing/fastdfs -> store_path0=/var/data/fastdfs-storage/store(自定义目录)

tracker_server=192.168.150.11:22122 -> tracker_server=tracker服务IP:22122

base_path - 基础路径。用于保存storage server基础数据内容和日志内容的目录。

store_path0 - 存储路径。是用于保存FastDFS中存储文件的目录,就是要创建256*256个子目录的位置。base_path和store_path0可以使用同一个目录。

tracker_server - 跟踪服务器位置。就是跟踪服务器的ip和端口。

启动:

1
fdfs_storaged /etc/fdfs/storage.conf start

启动成功后,配置文件中base_path指向的目录中出现FastDFS服务相关数据目录(data目录、logs目录)

配置文件中的store_path0指向的目录中同样出现FastDFS存储相关数据录(data目录)

其中$store_path0/data/目录中默认创建若干子孙目录(两级目录层级总计256*256个目录),是用于存储具体文件数据的。

Storage服务器启动比较慢,因为第一次启动的时候,需要创建256*256个目录。

查看状态:

1
fdfs_storaged /etc/fdfs/storage.conf status

停止:

1
fdfs_storaged /etc/fdfs/storage.conf stop

重启:

1
fdfs_storaged /etc/fdfs/storage.conf restart

client

1
mkdir -p /fastdfs/client

修改 client.conf

base_path=/home/yuqing/fastdfs -> base_path=/fastdfs/client (自定义目录)

tracker_server=192.168.150.11:22122 -> tracker_server=tracker服务IP:22122

base_path - 就是客户端命令行执行过程时临时数据存储位置。

测试

使用客户端上传文件到服务器:

/usr/local/fastdfs-6.08.tar.gz 为上传文件

1
2
fdfs_upload_file /etc/fdfs/client.conf /usr/local/fastdfs-6.08.tar.gz
fdfs_download_file /etc/fdfs/client.conf group1/M00/00/00/wKiehGJ5CwiAfS3OAAxZ6KIFrWU.tar.gz

上传结束后,返回group1/M00/00/00/xxxxxxxxxx.xxx,检查storage服务结点中的$store_path0/data/00/00/目录中是否有上传的文件(一般情况上传的文件按顺序保存在$store_path0/data/00/00/目录中,不能完全保证)。

/var/data/fastdfs-storage/store/data/00/00

上传文件结果:group1/M00/00/00/wKiegGJ1JDWAVWWhAAxZ6KIFrWU.tar.gz

组名:group1文件上传后所在的storage组名称,在文件上传成功后有storage服务器返回,需要客户端自行保存。

虚拟磁盘路径:M00 storage配置的虚拟路径,与磁盘选项store_path*对应。如果配置了store_path0则是M00,如果配置了store_path1则是M01,以此类推。

数据两级目录:**/00/00** storage服务器在每个虚拟磁盘路径下创建的两级目录,用于存储数据文件。

文件名:wKiegGJ1JDWAVWWhAAxZ6KIFrWU.tar.gz

删除文件:

1
fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKiegGJ1JDWAVWWhAAxZ6KIFrWU.tar.gz

监控

配置了client.conf后,执行

1
fdfs_monitor /etc/fdfs/client.conf

执行后显示

1
server_count=2

在storage的服务器,执行:

1
fdfs_monitor /etc/fdfs/storage.conf

执行结果同上。


fastDfs单机版安装
http://hanqichuan.com/2022/05/06/fastDFS/fastDfs单机版安装/
作者
韩启川
发布于
2022年5月6日
许可协议