FastDFS+nginx搭建文件服务器

FastDFS介绍

fastDFS 是以C语言开发的一项开源轻量级分布式文件系统,他对文件进行管理,主要功能有:文件存储,文件同步,文件访问(文件上传/下载),特别适合以文件为载体的在线服务,如图片网站,视频网站等

FastDFS由跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)构成

  1. Tracker server 追踪服务器
    追踪服务器负责接收客户端的请求,选择合适的组合storage server ,tracker server 与 storage server之间也会用心跳机制来检测对方是否活着。
    Tracker需要管理的信息也都放在内存中,并且里面所有的Tracker都是对等的(每个节点地位相等),很容易扩展
    客户端访问集群的时候会随机分配一个Tracker来和客户端交互。

  2. Storage server 储存服务器
    实际存储数据,分成若干个组(group),实际traker就是管理的storage中的组,而组内机器中则存储数据,group可以隔离不同应用的数据,不同的应用的数据放在不同group里面,

  3. 客户端Client
    主要是上传下载数据的服务器,也就是我们自己的项目所部署在的服务器。每个客户端服务器都需要安装Nginx

在这里插入图片描述

FastDFS安装

官网下载相关文件

在这里插入图片描述
1、先安装libevent环境 ,来编译libfastcommon

yum -y install libevent

2、解压libfastcommon-master.zip

unzip libfastcommon-master.zip

3、进入解压后的文件—招行make.sh脚本 命令进行编译

./make.sh

4、执行安装 ,l默认是安装的路径在/usr/lib64/会有一个libfastcommon.so文件,如果不存在将会在lib目录下
./make.sh install

5、到usr/lib64路径下去查看文件libfastcommon.so

```bash
ll libfast*

1、 解压FastDFS_v5.05.tar.gz

tar -zxvf FastDFS_v5.05.tar.gz

在这里插入图片描述
在这里插入图片描述

2、把conf文件下的配置文件copy到/etc/fdfs目录下

cp * /etc/fdfs

3、分别对tracker.conf storage.conf client.conf配置文件做相应的配置

tracker.conf配置修改地方
在这里插入图片描述
storage.conf配置修改地方
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
配置client.conf的地方

在这里插入图片描述
4.启动tracker 和 storage服务器
启动命令会存在/usr/bin路径下,通过 ll -fdfs*过滤出tracker和storage的命令
在这里插入图片描述

启动tracker: fdfs_trackerd /etc/fdfs/tracker.conf
启动storage: fdfs_storaged /etc/fdfs/storage.conf

5、查看tracker、storage进程

ps -ef |grep tracker
ps aux|grep storage

6、测试文件上传

fdfs_test /etc/fdfs/client upload 图片文件路径

7、上传成功之后会在我们之前配置的日志路径的同一级路径 中有个data文件夹,图片就存储在这个文件夹下(这个文件夹会有很多文件夹,第一个文件默认会存在data/00/00文件夹下)

安装 nginx并添加fastdfs - module模块

1、解压fastdfs-nginx-module

tar -zxvf fastdfs-nginx-module.gz.tar

2、进入解压后文件路径下
在这里插入图片描述
3、使用vim 命令打开config文件,把文件里面的三个local去除
在这里插入图片描述

安装nginx的相关环境

一. gcc 安装
安装 nginx 需要先将官网下载的源码进行编译,编译依赖 gcc 环境,如果没有 gcc 环境,则需要安装:

yum install gcc-c++

二. PCRE pcre-devel 安装
PCRE(Perl Compatible Regular Expressions) 是一个Perl库,包括 perl 兼容的正则表达式库。nginx 的 http 模块使用 pcre 来解析正则表达式,所以需要在 linux 上安装 pcre 库,pcre-devel 是使用 pcre 开发的一个二次开发库。nginx也需要此库。命令:

yum install -y pcre pcre-devel

三. zlib 安装
zlib 库提供了很多种压缩和解压缩的方式, nginx 使用 zlib 对 http 包的内容进行 gzip ,所以需要在 Centos 上安装 zlib 库。

yum install -y zlib zlib-devel

四. OpenSSL 安装
OpenSSL 是一个强大的安全套接字层密码库,囊括主要的密码算法、常用的密钥和证书封装管理功能及 SSL 协议,并提供丰富的应用程序供测试或其它目的使用。
nginx 不仅支持 http 协议,还支持 https(即在ssl协议上传输http),所以需要在 Centos 安装 OpenSSL 库。

yum install -y openssl openssl-devel

1、解压nginx包

tar -zxvf nginx解压包

2、进行解压后的nginx目录,执行下面的命令
在这里插入图片描述
–add-module=路径是fastdfs-nginx-module目录下的src绝对路径

./configure \
--prefix=/usr/local/nginx \
--pid-path=/var/run/nignx/nginx.pid \
--lock-path=/var/lock/nginx.lock \
--error-log-path=/var/log/nginx/error.log \
--http-log-path=/var/log/nginx/access.log \
--with-http_gzip_static_module \
--http-client-body-temp-path=/var/temp/nginx/client \
--http-proxy-temp-path=/var/temp/nginx/proxy \
--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
--http-scgi-temp-path=/var/temp/nginx/scgi \
--add-module=/root/FastDFS/tar/fastdfs-nginx-module/src

3、编译

make

4、安装

make install

5、安装成功之后去/usr/local/nginx路径下查看
在这里插入图片描述
6、进入conf文件夹下的nginx.conf配置文件
添加以下配置

 server {
        listen       88;
        server_name  192.168.226.136;
       #/tang/M00是storage的组名下的第一个文件夹
        location /tang/M00 {
        #nginx引用fastdfds模块
           ngx_fastdfs_module;
        }

    }

7、在sbin目录下测试下nginx的启动

./nginx -t

8.在sbin目录下启动nginx

./nginx

9.浏览器访问上传的图片
http://192.168.226.136:88/tang/M00/图片的名称
10、效果
在这里插入图片描述

![

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值