linux系统在线搭建Nginx和fastDFS文件管理

一、关于FastDFS

1、FastDFS简介

FastDFS(Fast Distributed File System)是一个开源的分布式文件系统,旨在解决大规模文件存储和访问的问题,例如图片、音视频等。它具有高性能、高可靠性和可扩展性的特点,被广泛应用于大规模的互联网应用中。

FastDFS由跟踪服务器(Tracker Server)和存储服务器(Storage Server)组成。跟踪服务器负责跟踪存储服务器的状态和负载情况,存储服务器负责实际的文件存储和访问。

2、FastDFS安装环境概览

环境与依赖库:

名称说明
centos7.x
libfastcommonFastDFS分离出的公用函数库                V1.0.68
libserverframeFastDFS分离出的网络框架                    V1.1.28
FastDFSFastDFS主体程序                                   V6.9.5
fastdfs-nginx-moduleFastDFS和nginx的关联模块(解决http访问文件)
nginx1.15.2
gcc-c++C依赖环境(FastDFS 采用 C 语言开发)
libevent FastDFS主体程序-依赖库

下载地址:

1

2

3

yum install gcc-c++

yum -y install libevent

wget https://github.com/happyfish100/libfastcommon/archive/refs/tags/V1.0.68.tar.gz<br>wget https://github.com/happyfish100/libserverframe/archive/refs/tags/V1.1.28.tar.gz<br>wget https://github.com/happyfish100/fastdfs/archive/refs/tags/V6.9.5.tar.gz

二、安装(注意需要登录root用户)

1、gcc-c++ 安装

yum install gcc-c++

下载完后提示是否安装,选择:Y。安装成功出现:Complete!

2、libevent 安装

yum -y install libevent

安装成功出现:Complete!

3、libfastcommon 安装

 这里我放/home目录,安装以实际目录做调整

下载不下来,在浏览器打开下载,然后上传到服务器对应目录

1

2

3

4

5

6

7

8

9

10

cd /home

## 下载

wget https://github.com/happyfish100/libfastcommon/archive/refs/tags/V1.0.68.tar.gz

## 解压

tar -zxvf V1.0.68.tar.gz

cd libfastcommon-1.0.68/

## 编译

./make.sh

## 安装

./make.sh install

4、libserverframe 安装

下载不下来,在浏览器打开下载,然后上传到服务器对应目录

1

2

3

4

5

6

7

8

9

10

cd /home

## 下载

wget https://github.com/happyfish100/libserverframe/archive/refs/tags/V1.1.28.tar.gz

## 解压

tar -zxvf V1.1.28.tar.gz

cd libserverframe-1.1.28/

## 编译

./make.sh

## 安装

./make.sh install

5、FastDFS 安装

下载不下来,在浏览器打开下载,然后上传到服务器对应目录

1

2

3

4

5

6

7

8

9

10

cd /home

## 下载

wget https://github.com/happyfish100/fastdfs/archive/refs/tags/V6.9.5.tar.gz

## 解压

tar -zxvf V6.9.5.tar.gz

cd fastdfs-6.9.5/

## 编译

./make.sh

## 安装

./make.sh install

安装成功后,/etc/fdfs/ 如下:

三、配置

1、创建存储目录相关路径

这里我还是放在/home目录,安装以实际目录做调整(文件夹用途:后续配置需要)

1

2

3

4

mkdir -p /home/fastdfs

mkdir -p /home/fastdfs/data

mkdir -p /home/fastdfs/tracker

mkdir -p /home/fastdfs/client

2、配置跟踪器(Tracker Server)

配置:

1

2

3

4

5

6

7

8

9

10

11

cd /etc/fdfs/

vim tracker.conf

#主要更改以下几个配置(其他详细参数可以自行查询资料)

#存储数据和日志文件的基本路径

base_path=/home/fastdfs/tracker

#Http服务端口(后续放开http访问需要)

http.server_port=8080

#默认提供服务端口(可自行更改)

port=22122

 启动:

1

2

3

4

## 启动

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

## 查看状态

netstat -apn|grep fdfs

3、配置数据存储(Storage Server)

配置:

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

cd /etc/fdfs/

vim storage.conf

#主要更改以下几个配置(其他详细参数可以自行查询资料)

## storage存储data和log的跟路径

base_path=/home/fastdfs/data

## 默认组名

group_name=group1

## 默认端口,相同组的storage端口号必须一致

port=23000

## 配置一个存储路径

store_path_count=1

store_path0=/home/fastdfs/data

## 配置跟踪器IP和端口

tracker_server=服务器外网IP:22122

启动:

1

2

3

4

5

6

7

8

9

10

11

## 启动

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf start

## 查看进程

netstat -apn|grep fdfs

## 查看启动日志

tail -f /home/fastdfs/data/logs/storaged.log

## 查看是否在通讯(正常能看到 ACTIVE 标识)

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

注意,腾讯云或者阿里云服务器启动报错连接超时,或no router to host,需要配置开放端口号,

服务器防火墙关闭:systemctl disable firewalld.service

4、配置客户端测试

 配置:

1

2

3

4

5

6

7

8

9

cd /etc/fdfs/

vim client.conf

#主要更改以下几个配置(其他详细参数可以自行查询资料)

## client数据和日志目录

base_path=/home/fastdfs/client

## 配置跟踪器IP和端口

tracker_server=服务器外网IP:22122

启动:

现在/home 目录下放一个图片,执行如下语句:

1

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/img1.png

返回如下信息(配置成功):

 走到这里基本上整个单服务器服务就搭建成功了,但是此时还无法http查看和下载。这里就需要借助fastdfs-nginx-module实现http查看。

四、配置nginx模块实现http方式打开、下载图片

1、相关依赖安装

1

2

3

4

5

6

7

8

## pcre-devel 环境

yum install -y pcre pcre-devel

## zlib-devel 环境

yum install -y zlib zlib-devel

## openssl-devel 环境

yum install -y openssl openssl-devel

## unzip 解压缩

yum install -y unzip zip

2、下载解压Nginx

1

2

3

cd /home

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

tar -zxvf nginx-1.15.2.tar.gz

3、下载解压Fast-Nginx

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

cd /home

wget https://github.com/happyfish100/fastdfs-nginx-module/archive/refs/tags/V1.23.zip

mv V1.23.zip fast-nginx.zip

unzip fast-nginx.zip

## 安装完后需要把mod_fastdfs.conf拷贝到/etc/fdfs目录下

cp /home/fastdfs-nginx-module-1.23/src/mod_fastdfs.conf /etc/fdfs

## 对刚刚拷贝的mod_fastdfs.conf文件进行修改:

vim /etc/fdfs/mod_fastdfs.conf

## 主要关注以下配置

base_path=/home/fastdfs/data  #保存日志目录

tracker_server=服务器外网IP:22122 #tracker服务器的IP地址以及端口号

url_have_group_name = true #文件 url 中是否有 group 

store_path0=/home/fastdfs/data   #存储路径

4、配置安装Nginx、Fast-Nginx

1

2

3

4

5

6

7

8

9

cd /home/nginx-1.15.2

## 注入配置

./configure --add-module=/home/fastdfs-nginx-module-1.23/src

## 编译并安装

make && make install

##复制http.conf和mime.types至 /etc/fdfs/目录

cp /home/fastdfs-6.9.5/conf/http.conf /etc/fdfs/

cp /home/fastdfs-6.9.5/conf/mime.types /etc/fdfs/

验证是否安装成功,执行下面命令,看注入地址是否成功。

1

/usr/local/nginx/sbin/nginx -V

配置Nginx代理地址

1

2

3

4

5

6

7

8

9

10

11

12

cd /usr/local/nginx/conf/

vim nginx.conf

## 配置内容如下(url_have_group_name = true为false的时候需要更改)

server {

    listen       8080;

     

    location ~/group([0-9])/M00 {

        root /home/fastdfs/data;

        ngx_fastdfs_module;

    }

}

5、见证结束时刻

NGINX服务启动。

1

2

3

4

5

6

## 启动

/usr/local/nginx/sbin/nginx

## 停止

/usr/local/nginx/sbin/nginx -s stop

## 重启(注意,此条命令应该是启动命令执行后直接执行,不可stop,否则会pid文件被删除执行报错)

/usr/local/nginx/sbin/nginx -s reload

访问方式:

http://互联网Ip地址:8080/group1/M00/00/00/CIbAYmStEtGAPx2FAAAtNms4POE783.png

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值