FastDFS的安装可以查看:CentOS7 部署FastDFS多机版(上)——安装FastDFS
以下步骤三台服务器都需要执行!!!
以下步骤三台服务器都需要执行!!!
以下步骤三台服务器都需要执行!!!
设置防火墙
开放22122/8888/23000端口,然后重载防火墙配置(firewall-cmd --reload)
firewall-cmd --zone=public --add-port=22122/tcp --permanent
firewall-cmd --zone=public --add-port=8888/tcp --permanent
firewall-cmd --zone=public --add-port=23000/tcp --permanent
跟踪器tracker配置
tracker配置,端口采用默认端口22122,base_path则改为创建的日志和数据目录/home/dfs
vi /etc/fdfs/tracker.conf
port=22122 #端口默认22122就好
base_path=/home/dfs # 根据我们创建的日志和数据目录设置
存储节点storage配置
storage配置
- 端口采用默认端口23000;
- base_path则改为创建的日志和数据目录/home/dfs;
- store_path(数字) #设置几个储存地址写几个,从0开始;
- tracker_server #有几台服务器写几个;
- http.server_port默认采用8888,可根据需要修改,与稍后nginx配置保持一致就行
- store_path_count #store_path(数字)有几个写几个
vim /etc/fdfs/storage.conf
#需要修改的内容如下
port=23000 # storage服务端口(默认23000,一般不修改)
base_path=/home/dfs # 数据和日志文件存储根目录
store_path0=/home/dfs # 第一个存储目录
tracker_server=172.16.116.40:22122 # 服务器1
tracker_server=172.16.116.41:22122 # 服务器2
tracker_server=172.16.116.42:22122 # 服务器3
http.server_port=8888 # http访问文件的端口(默认8888,看情况修改,和nginx中保持一致)
client测试配置
base_path则改为创建的日志和数据目录/home/dfs,tracker_server #有几台服务器写几个;
vim /etc/fdfs/client.conf
#需要修改的内容如下
base_path=/home/moe/dfs
tracker_server=172.16.116.40:22122 # 服务器1
tracker_server=172.16.116.41:22122 # 服务器2
tracker_server=172.16.116.42:22122 # 服务器3
mod_fastdfs配置
配置mod_fastdfs文件,与FastDFS资源访问模式有关
- store_path(数字) #设置几个储存地址写几个,从0开始;
- url_have_group_name配置访问时url是否含组名;
- tracker_server #有几台服务器写几个;
vim /etc/fdfs/mod_fastdfs.conf
#需要修改的内容如下
tracker_server=172.16.116.40:22122 # 服务器1
tracker_server=172.16.116.41:22122 # 服务器2
tracker_server=172.16.116.42:22122 # 服务器3
url_have_group_name=true
store_path0=/home/dfs
配置nginx
注意nginx监听端口与存储节点配置文件中http.server配置保持一致
vim /usr/local/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;
}
}
启动
防火墙
#不关闭防火墙的话无法使用
systemctl stop firewalld.service #关闭
systemctl restart firewalld.service #重启
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服务
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服务
nginx
/usr/local/nginx/sbin/nginx #启动nginx
/usr/local/nginx/sbin/nginx -s reload #重启nginx
/usr/local/nginx/sbin/nginx -s stop #停止nginx
检测集群
会显示会有几台服务器 有3台就会 显示 Storage 1-Storage 3的详细信息
/usr/bin/fdfs_monitor /etc/fdfs/storage.conf
配置nginx开机启动
在/etc/rc.d/init.d下添加nginx服务脚本
#!/bin/sh
#
# chkconfig: 35 80 20
# description: nginx Servlet Container
#
#
# match these values to your environment:
# Source function library.
. /etc/rc.d/init.d/functions
RETVAL=0
prog="nginx"
NGINX=/usr/local/nginx
start() {
$NGINX/sbin/nginx
echo $"Starting $prog: "
return $RETVAL
}
stop() {
$NGINX/sbin/nginx -s stop
echo $"Stopping $prog: "
}
# See how we were called.
case "$1" in
start)
start
;;
stop)
stop
;;
status)
status $prog
RETVAL=$?
;;
restart)
stop
start
;;
*)
echo "nginx service is;Usage: $0 {start|stop|restart}"
;;
esac
exit $RETVAL
配置脚本文件权限并设置开机启动
chmod 755 /etc/rc.d/init.d/nginx
chkconfig nginx on
chkconfig --list //查看服务列表
上传下载测试
利用之前配置的客户端文件做上传测试
fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/nginx-1.15.4.tar.gz
根据返回的文件ID(group1/M00/00/00/rBB0KF2hRXCAIxQVAA-itrfn0m4.tar.gz)来做下载测试
172.16.116.40:8888/group1/M00/00/00/rBB0KF2hRXCAIxQVAA-itrfn0m4.tar.gz
172.16.116.41:8888/group1/M00/00/00/rBB0KF2hRXCAIxQVAA-itrfn0m4.tar.gz
172.16.116.42:8888/group1/M00/00/00/rBB0KF2hRXCAIxQVAA-itrfn0m4.tar.gz
至此,FastDFS配置完成,具体的使用可根据自己的应用语言进行操作!
附上官方wiki:FastDFS项目wiki