使用FastDFS在CentOS上搭建简易分布式文件系统

本文详细介绍了如何在四台服务器上部署FastDFS文件系统,并通过Nginx实现反向代理及负载均衡,包括环境准备、依赖库安装、配置文件调整等步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1. 环境准备

总共四台环境:

TrackerServer:10.198.1.128,同时也将作为反向代理服务器负责负载均衡

StorageServer-1:10.198.1.129

StorageServer-2:10.198.1.130

StorageServer-2:10.198.1.131

按照上一章节分别在四台环境安装FastDFS,之前出现的问题,可能是先前安装了库没成功重新安装可能报错,此时需要./make.sh clean来清理之前的安装,然后重新安装即可。

2.在StorageServer安装nginx

2.1安装依赖库

如下这些类库全部安装,这些库以及一些相关的依赖库也尽可能的安装:

pcre、pcre-devel、openssl、openssl-devel、zlib

2.2安装nginx

下载nginx安装包

wget http://nginx.org/download/nginx-1.8.1.tar.gz

下载fastdfs-nginx-module

wget https://github.com/happyfish100/fastdfs-nginx-module/archive/master.zip

fastdfs-nginx-module只能兼容FastDFSV5.11.tar.gz

复制nginx包只/usr/local目录

cp nginx-1.8.1.tar.gz /usr/local/nginx-1.8.1.tar.gz

使用如下命令解压nginx包

tar -zxvf nginx-1.8.1.tar.gz

使用如下命令解压fastdfs-nginx-module包

cp master.zip /usr/local/fastdfs-nginx-module.zip
cd /usr/local
unzip fastdfs-nginx-module.zip

如果unzip没有安装执行yum -y install unzip安装。

创建一个fastdfs-nginx-module目录

mv fastdfs-nginx-module-master fastdfs-nginx-module 

进入nginx目录

cd /usr/local/nginx1.8.1

使用如下命令

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

看到如下提示说明配置成功

接着执行make命令

make

执行make install安装命令

make install

检查安装版本

2.3配置

2.3.1配置mod_fastdfs.conf
cp /usr/local/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs

fastdfs-nginx-module的配置文件mod_fastdfs.conf拷贝至/etc/fdfs目录并修改参数。

一般修改如下参数:

tracker_server=10.198.1.128:22122

store_path0=你的存储路径

然后增加如下配置:
[group1]

group_name=group1

storage_server_port=23000

store_path_count=1

store_path0=你的存储路径

2.3.2配置nginx

vi /usr/local/nginx/conf/nginx.conf

配置为root用户启动

user root;

server节点下修改监听端口

listen       8080;

server节点下增加如下配置:

location ~/group1/M00{

           root 你的存储路径(指定到data目录,存储文件目录的路径);

           ngx_fastdfs_module;

        }

注意:如果location 包含group目录,则mod_fastdfs_conf里的url_have_group_name = true,否则安装nginx成功后会报如下错误:

fdfs中的http.conf和mime.types复制到/etc/fdfs

在你的fastdfs-5.11/conf/目录下复制

cp /fastdfs-5.11/http.conf /fastdfs-5.11/mime.types /etc/fdfs

 

2.3.3端口开放
firewall-cmd --zone=public --add-port=8080/tcp –permanent
systemctl stop firewalld.service  
systemctl start firewalld.service

2.3.4启动nginx

使用如下命令启动nginx

/usr/local/nginx/sbin/nginx

检查启动进程

ps -ef|grep nginx

2.3.5设置开机启动

CentOS7设置开机启动需要设置启动脚本的可执行权限,使用如下脚本

StorageServer设置开机启动。

chmod +x /usr/bin/fdfs_storaged
chmod +x /usr/local/nginx/sbin/nginx
chmod +x /usr/rc.d/rc.local

 

vi /usr/rc.d/rc.local

增加如下启动脚本

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start
/usr/local/nginx/sbin/nginx

2.4测试

3.在TrackerServer上安装nginx

3.1安装

首先参考2.1章节安装依赖库。

下载nginx安装包

wget http://nginx.org/download/nginx-1.8.1.tar.gz
tar -zxvf  nginx-1.8.1.tar.gz
cd /usr/local/nginx-1.8.1
./configure --prefix=/usr/local/nginx

看到如下截屏提示表示配置成功

执行make

执行make install

3.2配置

配置nginx

vi /usr/local/nginx/conf/nginx.conf

增加如下红框里面的配置

upstream fdfs_group1{

     server 10.198.1.129:8080 weight=1 max_fails=2 fail_timeout=20s;

     server 10.198.1.130:8080 weight=1 max_fails=2 fail_timeout=20s;

     server 10.198.1.131:8080 weight=1 max_fails=2 fail_timeout=20s;

}

location /group1/M00{

         proxy_pass http://fdfs_group1;

        }

启动nginx

/usr/local/nginx/sbin/nginx

查看启动日志

开放端口

firewall-cmd --zone=public --add-port=8080/tcp –permanent
systemctl stop firewalld.service  
systemctl start firewalld.service

设置开机启动:

CentOS7设置开机启动需要设置启动脚本的可执行权限,使用如下脚本

StorageServer设置开机启动。

chmod +x /usr/bin/fdfs_trackerd
chmod +x /usr/local/nginx/sbin/nginx
chmod +x /usr/rc.d/rc.local

 

vi /usr/rc.d/rc.local

增加如下启动脚本

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start
/usr/local/nginx/sbin/nginx

 

3.3测试

使用客户端新上传一张图片,然后直接访问10.198.1.128

转载于:https://www.cnblogs.com/deyidexiao/p/8361727.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值