FastDFS分布式文件系统搭建与配置
off999 2025-03-10 19:20 30 浏览 0 评论
介绍
FastDFS是一个开源的轻量级的高性能分布式文件系统。
其主要功能包括:文件存储、文件同步和文件访问(文件上传和文件下载),解决了大容量和负载均衡问题。FastDFS应满足基于照片分享网站、视频分享网站等文件的网站的服务要求,适合存储 4KB~500MB 之间的小文件,特别适合以文件为载体的在线服务,如图片、视频、文档等等。
FastDFS服务安装环境准备
FastDFS安装所需要的组件
名称 | 说明 |
OpenResty | 文件下载使用的服务 |
Libfatscommon | FastDFS分操作的一些公共函数包 |
FastDFS Nginx Module | FastDFS和Nginx的关联模块 |
FastDFS | FastDFS分布式文件系统 |
环境准备
服务 | IP地址 | 操作系统 |
Tracker Server 跟踪器 | 192.168.65.116 | CentOS Linux release 7.3 |
Storage Server1 存储节点 | 192.168.65.74 | CentOS Linux release 7.3 |
Storage Server1 存储节点 | 192.168.65.75 | CentOS Linux release 7.3 |
服务器上安装基础环境
yum install gcc gcc-c++ make pcre-devel zlib-devel openssl-develFastDFS服务安装路径规划
位置 | 说明 |
/dfs/soft | 所有安装包 |
/dfs/tracker | tracker服务器数据存储位置 |
/dfs/storage | storage服务器数据存储位置 |
[root@fdfs-116 ~]# mkdir /dfs/tracker -p #创建数据存储目录(tracker服务器)
[root@fdfs-74 ~]# mkdir /dfs/storage -p #创建数据存储目录(storage服务器)
[root@fdfs-75 ~]# mkdir /dfs/storage -p #创建数据存储目录(storage服务器)安装libfastcommon(tracker和storage都安装)
cd /dfs/soft #切换到安装目录准备下载安装包
git clone https://github.com/happyfish100/libfastcommon.git --depth 1
#如果服务器未联网,需要手动下载libfastcommon的安装包
#解压后进入libfastcommon目录,手动./make.sh && ./make.sh install
[root@fdfs-116 soft]# unzip libfastcommon-master.zip
[root@fdfs-116 soft]# cd libfastcommon-master
[root@fdfs-116 libfastcommon-master]# ./make.sh && ./make.sh install #编译安装安装FastDFS(tracker和storage都安装)
cd /dfs/soft #切换到安装目录准备下载安装包
git clone https://github.com/happyfish100/fastdfs.git --depth 1
#如果服务器未联网需要手动下载FastDfs的安装包
#解压后进入fastdfs目录中,并手动./make.sh && ./make.sh install
[root@fdfs-116 soft]# tar -zxvf FastDFS_v5.08.tar.gz
[root@fdfs-116 soft]# cd FastDFS
[root@fdfs-116 FastDFS]# ./make.sh && ./make.sh install #编译安装
#配置文件准备
#tracker配置文件(tracker服务器使用)
[root@fdfs-116 FastDFS]# cp conf/tracker.conf /etc/fdfs/
#storage配置文件(storage服务器使用)
[root@fdfs-74 FastDFS]# cp conf/storage.conf /etc/fdfs/
[root@fdfs-75 FastDFS]# cp conf/storage.conf /etc/fdfs/
#客户端文件,测试用
[root@fdfs-116 FastDFS]# cp conf/client.conf /etc/fdfs/
#Fastdfs为fastdfs安装路径,这里是我的安装路径,请以自己的实际安装路径为准
[root@fdfs-116 FastDFS]# cp conf/http.conf conf/mime.types /etc/fdfs/
[root@fdfs-74 FastDFS]# cp conf/http.conf conf/mime.types /etc/fdfs/
[root@fdfs-75 FastDFS]# cp conf/http.conf conf/mime.types /etc/fdfs/安装fastdfs-nginx-module(storage服务器安装)
cd /dfs/soft #切换到安装目录准备下载安装包
git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
#如果服务器未连接互联网,需要手动下载fastdfs-nginx-module包
#此处的fastdfs-nginx-module包需要注意版本
# /dfs/soft/fastdfs-nginx-module为解压目录,这里是我的目录,实际请以自己的为准
[root@fdfs-74 soft]# unzip fastdfs-nginx-module.zip
[root@fdfs-74 soft]# cp /dfs/soft/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
[root@fdfs-75 soft]# unzip fastdfs-nginx-module.zip
[root@fdfs-75 soft]# cp /dfs/soft/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/安装OpenResty(storage服务器安装)
cd /dfs/soft #切换到安装目录准备下载安装包
wget https://openresty.org/download/openresty-1.19.3.1.tar.gz #下载nginx压缩包
#如果服务器未连接互联网,需要手动下载nginx包,并解压
[root@fdfs-74 soft]# tar -zxf openresty-1.19.3.1.tar.gz
[root@fdfs-74 soft]# cd openresty-1.19.3.1
#添加fastdfs-nginx-module模块
#prefix指定一个自己的nginx目录
#add-module指定对应的fastdfs-nginx-module目录
#/dfs/soft/fastdfs-nginx-module这里是我自己的目录,实际请以自己的为准
[root@fdfs-74 openresty-1.19.3.1]# ./configure --add-module=/dfs/soft/fastdfs-nginx-module/src/
[root@fdfs-74 openresty-1.19.3.1]# gmake && gmake install #编译安装
#另一台Storage一样的命令
[root@fdfs-75 openresty-1.19.3.1]# ./configure --add-module=/dfs/soft/fastdfs-nginx-module/src/
[root@fdfs-75 openresty-1.19.3.1]# gmake && gmake install #编译安装以上3~6步,已经把FastDFS的组件安装完成
FastDFS集群配置(Tracker配置)
tracker.conf 需要修改的内容如下
vim /etc/fdfs/tracker.conf
port=22122 # tracker服务器端口(默认22122,一般不修改)
base_path=/dfs/tracker # 存储tracker日志和数据的根目录
store_group=group1 #设置组名
http.server_port = 8080 #tracker HTTP服务端口修改防火墙,开放22122端口和8080端口(iptables或firewall,此处以firewall为例)
# 开放端口
firewall-cmd --permanent --add-port=22122/tcp --add-port=8080/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 查询端口是否开放
firewall-cmd --query-port=22122/tcp
firewall-cmd --query-port=8080/tcp启动Tracker
/etc/init.d/fdfs_trackerd start #启动tracker服务
/etc/init.d/fdfs_trackerd restart #重启动tracker服务
/etc/init.d/fdfs_trackerd stop #停止tracker服务
chkconfig fdfs_trackerd on #自启动tracker服务FastDFS集群配置(Storage配置)
storage.conf 需要修改的内容如下
vim /etc/fdfs/storage.conf
port=23000 # storage服务端口(默认23000,一般不修改)
base_path=/dfs/storage # 数据和日志文件存储根目录
store_path0=/dfs/storage # 第一个存储目录
tracker_server=192.168.65.116:22122 # tracker服务器1
#tracker_server=xxx.xxx.xx.xxx:22122 # tracker服务器2
http.server_port=8888 # http访问文件的端口(默认8888,看情况修改,和OpenResty中保持一致)修改防火墙,开放23000端口和8888端口(iptables或firewall,此处以firewall为例)
# 开放端口
firewall-cmd --permanent --add-port=23000/tcp --add-port=8888/tcp
#重启防火墙(修改配置后要重启防火墙)
firewall-cmd --reload
# 查询端口是否开放
firewall-cmd --query-port=23000/tcp
firewall-cmd --query-port=8888/tcp启动Storage
/etc/init.d/fdfs_storaged start #启动storage服务
/etc/init.d/fdfs_storaged restart #重动storage服务
/etc/init.d/fdfs_storaged stop #停止动storage服务
chkconfig fdfs_storaged on #自启动storage服务配置Client测试(tracker服务器)
修改client.conf配置文件
vim /etc/fdfs/client.conf
#需要修改的内容如下
base_path=/dfs/tracker #tracker服务器
tracker_server=192.168.65.116:22122 # tracker服务器1
#tracker_server=xxx.xxx.xx.xxx:22122 # tracker服务器2
http.tracker_server_port=8080 #修改端口测试上传文件
#保存后测试,返回ID表示成功 如:group1/M00/00/00/xx.tar.gz
[root@fdfs-116 soft]# fdfs_upload_file /etc/fdfs/client.conf ./7-1664778559.png
group1/M00/00/00/wKhBSmQAQ5KAKKUsAADlaTAPbnU808.png配置OpenResty使可以通过HTTP访问(两台Storage都需要配置)
修改fastdfs-nginx-module
vim /etc/fdfs/mod_fastdfs.conf
#需要修改的内容如下
tracker_server=192.168.65.116:22122 # 服务器1
#tracker_server=xxx.xxx.xx.xx:22122 # 服务器2
url_have_group_name=true #访问路径中携带组名,如group1
store_path0=/dfs/storage #storage地址修改Nginx配置
#配置nginx.config
vim /usr/local/openresty/nginx/conf/nginx.conf
#添加如下配置
server {
listen 8888; #该端口为storage.conf中的http.server_port相同
server_name localhost;
location ~/group[0-9]/ {
ngx_fastdfs_module;
}
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root html;
}
}启动Nginx服务
#测试Nginx配置
[root@fdfs-74 openresty-1.19.3.1]# /usr/local/openresty/nginx/sbin/nginx -t
ngx_http_fastdfs_set pid=32222
nginx: the configuration file /usr/local/openresty/nginx/conf/nginx.conf syntax is ok
nginx: configuration file /usr/local/openresty/nginx/conf/nginx.conf test is successful
/usr/local/openresty/nginx/sbin/nginx #启动nginx
/usr/local/openresty/nginx/sbin/nginx -s reload #重启nginx
/usr/local/openresty/nginx/sbin/nginx -s stop #停止nginx测试一下看上传的文件能不能访问
group1/M00/00/00/wKhBSmQAQ5KAKKUsAADlaTAPbnU808.png相关推荐
- 安全教育登录入口平台(安全教育登录入口平台官网)
-
122交通安全教育怎么登录:122交通网的注册方法是首先登录网址http://www.122.cn/,接着打开网页后,点击右上角的“个人登录”;其次进入邮箱注册,然后进入到注册页面,输入相关信息即可完...
- 大鱼吃小鱼经典版(大鱼吃小鱼经典版(经典版)官方版)
-
大鱼吃小鱼小鱼吃虾是于谦跟郭麒麟的《我的棒儿呢?》郭德纲说于思洋郭麒麟作诗的相声,最后郭麒麟做了一首,师傅躺在师母身上大鱼吃小鱼小鱼吃虾虾吃水水落石出师傅压师娘师娘压床床压地地动山摇。...
-
- 哪个软件可以免费pdf转ppt(免费的pdf转ppt软件哪个好)
-
要想将ppt免费转换为pdf的话,我们建议大家可以下一个那个wps,如果你是会员的话,可以注册为会员,这样的话,在wps里面的话,就可以免费将ppt呢转换为pdfpdf之后呢,我们就可以直接使用,不需要去直接不需要去另外保存,为什么格式转...
-
2026-02-04 09:03 off999
- 电信宽带测速官网入口(电信宽带测速官网入口app)
-
这个网站看看http://www.swok.cn/pcindex.jsp1.登录中国电信网上营业厅,宽带光纤,贴心服务,宽带测速2.下载第三方软件,如360等。进行在线测速进行宽带测速时,尽...
- 植物大战僵尸95版手机下载(植物大战僵尸95 版下载)
-
1可以在应用商店或者游戏平台上下载植物大战僵尸95版手机游戏。2下载教程:打开应用商店或者游戏平台,搜索“植物大战僵尸95版”,找到游戏后点击下载按钮,等待下载完成即可安装并开始游戏。3注意:确...
- 免费下载ppt成品的网站(ppt成品免费下载的网站有哪些)
-
1、Chuangkit(chuangkit.com)直达地址:chuangkit.com2、Woodo幻灯片(woodo.cn)直达链接:woodo.cn3、OfficePlus(officeplu...
- 2025世界杯赛程表(2025世界杯在哪个国家)
-
2022年卡塔尔世界杯赛程公布,全部比赛在卡塔尔境内8座球场举行,2022年,决赛阶段球队全部确定。揭幕战于当地时间11月20日19时进行,由东道主卡塔尔对阵厄瓜多尔,决赛于当地时间12月18日...
- 下载搜狐视频电视剧(搜狐电视剧下载安装)
-
搜狐视频APP下载好的视频想要导出到手机相册里方法如下1、打开手机搜狐视频软件,进入搜狐视频后我们点击右上角的“查找”,找到自已喜欢的视频。2、在“浏览器页面搜索”窗口中,输入要下载的视频的名称,然后...
- 永久免费听歌网站(丫丫音乐网)
-
可以到《我爱音乐网》《好听音乐网》《一听音乐网》《YYMP3音乐网》还可以到《九天音乐网》永久免费听歌软件有酷狗音乐和天猫精灵,以前要跳舞经常要下载舞曲,我从QQ上找不到舞曲下载就从酷狗音乐上找,大多...
- 音乐格式转换mp3软件(音乐格式转换器免费版)
-
有两种方法:方法一在手机上操作:1、进入手机中的文件管理。2、在其中选择“音乐”,将显示出手机中的全部音乐。3、点击“全选”,选中所有音乐文件。4、点击屏幕右下方的省略号图标,在弹出菜单中选择“...
- 电子书txt下载(免费的最全的小说阅读器)
-
1.Z-library里面收录了近千万本电子书籍,需求量大。2.苦瓜书盘没有广告,不需要账号注册,使用起来非常简单,直接搜索预览下载即可。3.鸠摩搜书整体风格简洁清晰,书籍资源丰富。4.亚马逊图书书籍...
- 最好免费观看高清电影(播放免费的最好看的电影)
-
在目前的网上选择中,IMDb(互联网电影数据库)被认为是最全的电影网站之一。这个网站提供了各种类型的电影和电视节目的海量信息,包括剧情介绍、演员表、评价、评论等。其还提供了有关电影制作背后的详细信息,...
- 孤单枪手2简体中文版(孤单枪手2简体中文版官方下载)
-
要将《孤胆枪手2》游戏的征兵秘籍切换为中文,您可以按照以下步骤进行操作:首先,打开游戏设置选项,通常可以在游戏主菜单或游戏内部找到。然后,寻找语言选项或界面选项,点击进入。在语言选项中,选择中文作为游...
欢迎 你 发表评论:
- 一周热门
- 最近发表
- 标签列表
-
- python计时 (73)
- python安装路径 (56)
- python类型转换 (93)
- python进度条 (67)
- python吧 (67)
- python的for循环 (65)
- python格式化字符串 (61)
- python静态方法 (57)
- python列表切片 (59)
- python面向对象编程 (60)
- python 代码加密 (65)
- python串口编程 (77)
- python封装 (57)
- python写入txt (66)
- python读取文件夹下所有文件 (59)
- python操作mysql数据库 (66)
- python获取列表的长度 (64)
- python接口 (63)
- python调用函数 (57)
- python多态 (60)
- python匿名函数 (59)
- python打印九九乘法表 (65)
- python赋值 (62)
- python异常 (69)
- python元祖 (57)
