FastDFS安装配置

FastDFS安装配置

一、简介

FastDFS是一个开源的轻量级分布式文件系统,由跟踪服务器(tracker server)、存储服务器(storage server)和客户端(client)三个部分组成,主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。

FastDFS系统结构图

二、安装

下载

https://github.com/happyfish100/fastdfs/releases

下载最新版代码

安装之前需要安装公共函数包 https://github.com/happyfish100/libfastcommon

安装libfastcommon

解压 libfastcommon

unzip libfastcommon-master.zip
./make.sh
./make.sh install

设置软链接

ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so
ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so
ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

FastDFS

解压

tar -zxvf fastdfs-5.05.tar.gz 

之后进入目录

./make.sh
./make.sh install

成功后安装到了 /etc/fdfs

ll  /etc/fdfs

显示默认的配置文件5个,复制.sample 文件(示例配置文件),去掉.sample后缀

cp client.conf.sample client.conf
cp storage.conf.sample storage.conf
cp tracker.conf.sample tracker.conf
...
...

Tracker

Tracker服务器的文件路径 /opt/fastdfs_tracker

mkdir /opt/fastdfs_tracker

修改 /etc/fdfs 内的tracker.conf 文件

disabled=false 
port=22122                       #设置tracker的端口号,通常采用22122这个默认端口
base_path=/opt/fastdfs_tracker   #设置tracker的数据文件和日志目录
http.server_port=6666            #设置http端口号,默认为8080

创建软引用

ln -s /usr/bin/fdfs_trackerd /usr/local/bin
ln -s /usr/bin/stop.sh /usr/local/bin
ln -s /usr/bin/restart.sh /usr/local/bin

启动Tracker服务器

service fdfs_trackerd start

验证是否正常

netstat -unltp|grep fdfs

查看22122 端口被监听

设置tracker 开机启动 ,/etc/rc.d/rc.local 加入

service fdfs_trackerd start

Storage

Storage服务器的文件目录 /opt/fastdfs_storage /opt/fastdfs_storage_data

mkdir /opt/fastdfs_storage
mkdir /opt/fastdfs_storage_data

修改 /etc/fdfs 内的storage .conf 文件

disabled=false                         #启用配置文件(默认启用)
group_name=group1 					 #组名,根据实际情况修改
port=23000 							 #设置storage的端口号,默认是23000,同一个组的storage端口号必须一致
base_path=/opt/fastdfs_storage 		   #设置storage数据文件和日志目录
store_path_count=1                      #存储路径个数,需要和store_path个数匹配
store_path0=/opt/fastdfs_storage_data   #实际文件存储路径
tracker_server=tracker_server_IP:22122     #tracker 服务器的 IP地址和端口号,如果是单机搭建,IP不要写127.0.0.1,否则启动不成功
http.server_port=8888                   #设置 http 端口号

创建软引用

ln -s /usr/bin/fdfs_storaged /usr/local/bin

启动Storage服务器

service fdfs_storaged start

如果成功,/opt/fastdfs_storage 生成data 和log目录,端口23000监听常,/opt/fastdfs_storage_data目录下生成 256个1级目录,每级目录下又有256个2级子目录总共65536个文件

验证

/usr/bin/fdfs_monitor /etc/fdfs/storage.conf

显示有 tracker_server_IP ACTIVE

设置tracker 开机启动 ,/etc/rc.d/rc.local 加入

service fdfs_storage start

测试

编辑/etc/fdfs目录下的client.conf 文件

base_path=/opt/fastdfs_tracker 				 #tracker服务器文件路径
tracker_server=tracker_server_IP:22122 		 #tracker服务器IP地址和端口号
http.tracker_server_port=6666 			    # tracker 服务器的 http 端口号,必须和tracker的设置对应起来

模拟上传

/usr/bin/fdfs_upload_file  /etc/fdfs/client.conf  /opt/BLIZZARD.jpg

运行后可以发现给我们返回了一个路径

浏览器访问 tracker_server_IP:6666/上面返回路径,出现无法访问

需要使用nginx FastDFS的模块fastdfs-nginx-module

fastdfs-nginx-module

下载地址: https://github.com/happyfish100/fastdfs-nginx-module

storage nginx

下载nginx最新版,并且解压;解压fastdfs-nginx-module-master.zip

编译nginx,进入nginx目录

./configure --prefix=/usr/local/nginx --add-module=/usr/local/fastdfs-nginx-module-master/src

make
make install

/usr/local/nginx看到nginx安装目录,修改nginx配置文件nginx.conf

listen       9999;

location ~/group1/M00 {
      root /opt/fastdfs_storage_data/data;
      ngx_fastdfs_module;
}

然后进入FastDFS的安装目录/usr/local/fastdfs-5.05目录下的conf目录,将http.confmime.types拷贝到/etc/fdfs目录下:

cp -r /usr/local/fastdfs-5.05/conf/http.conf /etc/fdfs/
cp -r /usr/local/fastdfs-5.05/conf/mime.types /etc/fdfs/

接下来还需要把fastdfs-nginx-module安装目录中src目录下的mod_fastdfs.conf也拷贝到/etc/fdfs目录下:

cp -r /usr/local/fastdfs-nginx-module-master/src/mod_fastdfs.conf /etc/fdfs/

编辑刚刚拷贝的mod_fastdfs.conf

base_path=/opt/fastdfs_storage #保存日志目录
tracker_server=192.168.111.11:22122 #tracker服务器的IP地址以及端口号
storage_server_port=23000 #storage服务器的端口号
url_have_group_name = true #文件 url 中是否有 group 名
store_path0=/opt/fastdfs_storage_data # 存储路径
group_count = 3 #设置组的个数,事实上这次只使用了group1

设置了group_count = 3,接下来就需要在文件尾部追加这3个group setting:

[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/opt/fastdfs_storage_data

[group2]
group_name=group2
storage_server_port=23000
store_path_count=1
store_path0=/opt/fastdfs_storage_data

[group3]
group_name=group3
storage_server_port=23000
store_path_count=1
store_path0=/opt/fastdfs_storage_data

建立 M00 至存储目录的符号连接

ln  -s  /opt/fastdfs_storage_data/data  /opt/fastdfs_storage_data/data/M00

启动nginx

/usr/local/nginx/sbin/nginx

tracker nginx

同理,再装一个nginx,目录命名为nginx2,安装路径依旧放在/usr/local下,

mkdir nginx2
cd nginx-1.8.1/
./configure --prefix=/usr/local/nginx2 --add-module=/usr/local/fastdfs-nginx-module-master/src
make
make install

修改nginx2 配置文件,tracker的nginx无需修改listen端口,即默认的80端口,并将upstream指向storage的nginx地址:

upstream fdfs_group1 {
     server 127.0.0.1:9999;
}

location /group1/M00 {
     proxy_pass http://fdfs_group1;
}

启动

/usr/local/nginx2/sbin/nginx

编辑/etc/fdfs目录下的client.conf 文件

base_path=/data/fastdfs_storage       #日志存放路径
tracker_server=tracker_server_IP:22122  #tracker 服务器 IP 地址和端口号
http.tracker_server_port=6666         # tracker 服务器的 http 端口号,必须和tracker的设置对应起来

模拟上传

/usr/bin/fdfs_upload_file  /etc/fdfs/client.conf  /opt/BLIZZARD.jpg

运行后可以发现给我们返回了一个路径

浏览器访问 tracker_server_IP:80/上面返回路径,可以访问到上传的图片

FastDFS–原理篇 https://www.linuxidc.com/Linux/2014-10/107591.htm

安装教程 https://www.linuxidc.com/Linux/2016-09/135537.htm

总结

Tracker

端口:22122

地址:/opt/fastdfs_tracker

http端口:6666

nginx地址:/usr/local/nginx2

nginx监听:80

Storage

端口:23000

地址:/opt/fastdfs_storage

数据地址:/opt/fastdfs_storage_data

http端口:8888

nginx地址:/usr/local/nginx

nginx监听:9999

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值