千家信息网

FastDFS分布式文件系统搭建

发表于:2026-11-04 作者:千家信息网编辑
千家信息网最后更新 2026年11月04日,内容要点FastDFS简介FastDFS搭建FastDFS常用命令一、简介:1、FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件
千家信息网最后更新 2026年11月04日FastDFS分布式文件系统搭建

内容要点

FastDFS简介
FastDFS搭建
FastDFS常用命令

一、简介:

1、FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

2、FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。

3、FastDFS服务端有两个角色:

(1)跟踪器(tracker):跟踪器主要做调度工作;
(2)存储节点(storage):在访问上起负载均衡的作用。

存储节点存储文件,完成文件管理的所有功能:就是这样的存储、同步和提供存取接口,FastDFS同时对文件的metadata进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value)方式表示。

4、为了支持大容量,存储节点(服务器)采用了分卷(或分组)的组织方式。存储系统由一个或多个卷组成,卷与卷之间的文件是相互独立的,所有卷的文件容量累加就是整个存储系统中的文件容量。一个卷可以由一台或多台存储服务器组成,一个卷下的存储服务器中的文件都是相同的,卷中的多台存储服务器起到了冗余备份和负载均衡的作用。

(1)在卷中增加服务器时,同步已有的文件由系统自动完成,同步完成后,系统自动将新增服务器切换到线上提供服务;

(2)当存储空间不足或即将耗尽时,可以动态添加卷。只需要增加一台或多台服务器,并将它们配置为一个新的卷,这样就扩大了存储系统的容量;

(3)FastDFS中的文件标识分为两个部分:卷名和文件名,二者缺一不可。

二、搭建 FastDFS:

准备两台虚拟机,一台为 DFS端,一台为 storage端。
主机名IP地址主要软件
tracker192.168.50.139libfastcommon、fastd
storage192.168.50.140libfastcommon
第一步:安装 libfastcommon(所有节点都需要)

1、安装环境包:

yum -y install libevent  libevent-devel perl  make gcc zlib  zlib-devel pcre pcre-devel  gcc-c++  openssl-devel

2、安装libfastcommon:

wget https://github.com/happyfish200/libfastcommon/archive/V1.0.38.tar.gztar zxf V1.0.38.tar.gz -C /opt/cd /opt/libfastcommon-1.0.38/./make.sh && ./make.sh install

3、创建软连接:

ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.soln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.soln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so
第二步:安装 FastDFS:
wget https://github.com/happyfish200/fastdfs/archive/V5.11.tar.gztar zxf V5.11.tar.gz -C /opt/cd /opt/fastdfs-5.11/./make.sh && ./make.sh install[root@localhost fdfs]# lsclient.conf.sample       //客户端上传配置文件(模板)storage.conf.sample      //文件存储服务器配置文件(模板)tracker.conf.sample      //负责均衡调度服务器配置文件(模板)复制配置文件:cp tracker.conf.sample tracker.confcp storage.conf.sample storage.confcp client.conf.sample client.conf
第三步:tracker 端修改

1、tracker监控端(可以有多个),建立数据、日志存放目录:

mkdir -m 755 -p /opt/fastdfs

2、修改 tracker配置文件:

vim /etc/fdfs/tracker.conf增改以下内容:port=22122 base_path=/opt/fastdfs       //tracker存储data和log的跟路径,必须提前创建好http.server_port=8080        //tracker服务器上启动http服务进程(没装忽略)

3、开启服务:

fdfs_trackerd /etc/fdfs/tracker.conf start   //启动服务netstat -atnp | grep 22122       //查看端口是否正常开启tcp        0      0 0.0.0.0:22122           0.0.0.0:*               LISTEN      43776/fdfs_trackerd

4、设置开启自启动:

vim  /etc/rc.local#末行添加:fdfs_trackerd   /etc/fdfs/tracker.conf start
第四步:storage 端修改
#storage数据存储端(可以有多个)#建立数据、日志存放目录mkdir -m 777 -p /opt/fastdfs#修改storage配置文件vim /etc/fdfs/storage.confgroup_name=group1          #默认组名,根据实际情况修改port=23000                 #storge默认23000,同一个组的storage端口号必须一致base_path=/opt/fastdfs     #storage日志文件的根路径store_path_count=1          #与下面路径个数相同,默认为1store_path0=/opt/fastdfs        #提供的存储路径(默认与日志文件存放在一起)tracker_server=192.168.50.140:22122      #自己的tracker服务器IP(重点!!!)http.server_port=80(http访问文件的端口默认为8888,nginx中配置的监听端口保持一致)#开启服务fdfs_storaged  /etc/fdfs/storage.conf startnetstat -atnp | grep 23000tcp        0      0 0.0.0.0:23000           0.0.0.0:*               LISTEN      40430/fdfs_storaged#开机自启trackervim  /etc/rc.local#末行添加fdfs_storaged  /etc/fdfs/storage.conf start #检查是否与tracker关联成功fdfs_monitor /etc/fdfs/storage.confStorage 1:                id = 192.168.50.140                ip_addr = 192.168.50.140 (storage)  ACTIVE
第五步:storage 端安装 nginx
#解压nginx安装包tar zxf nginx-1.12.0.tar.gz -C /opt/#下载fastdfs-nginx-module安装包wget https://github.com/happyfish200/fastdfs-nginx-module/archive/V1.20.tar.gztar zxf V1.20.tar.gz -C /opt/#编译安装nginx./configure \--prefix=/usr/local/nginx \--add-module=/opt/fastdfs-nginx-module-1.20/src/        #fastdfs-nginx-module模块make && make instal

l

第六步:配置 Nginx 和 fastdfs-nginx-module 模块
cd fastdfs-nginx-module-1.20/srccp mod_fastdfs.conf /etc/fdfs/#修改fastdfs-nginx-module模块配置文件mod-fasts.confvim mod_fastdfs.confbase_path=/opt/fastdfs         #存放数据文件、日志的路径tracker_server=192.168.50.140:22122    #tracker端的地址(重点!!!)url_have_group_name = true  #url是否包含group名称storage_server_port=23000 #需要和storage配置的相同store_path_count=1  #存储路径个数,需要和store_path个数匹配store_path0=/opt/fastdfs #文件存储的位置#修改nginx配置文件vim /usr/local/nginx/conf/nginx.conf#空行处添加location ~/M00 {                root /opt/fastdfs/data;                ngx_fastdfs_module;}#拷贝fastdfs解压目录中的http.conf和mime.typescd /opt/fastdfs-5.11/conf/cp mime.types http.conf /etc/fdfs/

三、FastDFS 常用命令:

1、上传文件:

/usr/bin/fdfs_upload_file   

2、下载文件:

/usr/bin/fdfs_download_file   [local_filename]

3、删除文件:

/usr/bin/fdfs_delete_file  
文件 存储 服务 服务器 配置 系统 路径 均衡 日志 数据 节点 同步 相同 个数 多个 多台 容量 就是 模块 模板 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 咖啡豆 互联网科技有限公司 上海喔噻互联网科技有限公司 为想互联网科技怎么样 互联网科技公司电话 云电互联网科技 上海万想互联网科技 国外互联网科技网站 太原新华互联网科技学校怎么样 重庆威客帮互联网科技 米聚互联网科技南京有限公司排面 互联网科技和信息 互联网公司黑科技创始人 卡尔迅互联网科技有限公司 新氧科技和美国互联网有关系吗 安徽零酒互联网科技有限公司 华人运通互联网科技公司 黑龙江互联网科技公司 广东猫王互联网科技有限公司电话 北京瑞云互联网科技有限公司 科技和互联网公司 互联网电商科技 猪兼强互联网科技 四川狮子座互联网科技 天津腾达互联网科技有限公司 南博望互联网科技有限公司 互联网金融科技名词解释 上海乐五互联网科技有限公司 兰石爱特工业互联网科技分公司 宁波允成互联网科技有限公司
0