第二章FastDFS单机搭建过程

Posted 风清扬逍遥子

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了第二章FastDFS单机搭建过程相关的知识,希望对你有一定的参考价值。

上章我们初始了FastDFS的介绍,发展历程和结构,不多说,本章带你走进FastDFS安装步

骤,以及相关web项目演示上传下载等功能。

1、准备环境

系统:Centos7.x

相关软件:

  • libfastcommon(FastDFS分离出的一些公用函数包)
  • fastdfs(FastDFS本体)
  • fastdfs-nginx-module(FastDFS和nginx的关联模块)
  • nginx1.15.4

软件包存放的路径:/usr/local/src

编译环境:(先进行下面的环境编译)

yum install git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim -y

数据存储位置:/home/dfs/

2、FastDFS安装步骤

记得在/usr/local/src目录下进行下面的操作,别装错了。

2.1、安装包准备

方案一:把上面的四个安装包拷贝到/usr/local/src下,然后进行解压

tar -zxcf xxxx.tar.gz

方案二:如果链接失效了,直接上git命令

  • 下载libfastcommon
git clone https://github.com/happyfish100/libfastcommon.git --depth 1
  • 下载fastdfs
git clone https://github.com/happyfish100/fastdfs.git --depth 1
  • 下载fastdfs-nginx-module
git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
  • 下载nginx
wget http://nginx.org/download/nginx-1.15.4.tar.gz #下载nginx压缩包

 后面该解压的解压!

 

2.2、安装包安装

  • 安装libfastcommon
cd libfastcommon/
./make.sh && ./make.sh install #编译安装
  • 安装fastdfs
cd fastdfs/
./make.sh && ./make.sh install #编译安装

#配置文件准备
cp /usr/local/src/fastdfs/conf/http.conf /etc/fdfs/ #供nginx访问使用
cp /usr/local/src/fastdfs/conf/mime.types /etc/fdfs/ #供nginx访问使用
  • 安装fastdfs-nginx-module
cd fastdfs-nginx-module/
cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs
  • 安装nginx
cd nginx-1.15.4/

#添加fastdfs-nginx-module模块
./configure --add-module=/usr/local/src/fastdfs-nginx-module/src/ 
make && make install #编译安装

2.3、修改相关的配置文件

  • tracker
#服务器ip为 192.168.52.1
#我建议用ftp下载下来这些文件 本地修改
vim /etc/fdfs/tracker.conf

#需要修改的内容如下
port=22122  # tracker服务器端口(默认22122,一般不修改)

base_path=/home/dfs  # 这里一定要提前先手动mkdir,不然找不到存储日志和数据的根目录
  • storage
vim /etc/fdfs/storage.conf
#需要修改的内容如下
port=23000  # storage服务端口(默认23000,一般不修改)

base_path=/home/dfs  # 数据和日志文件存储根目录

store_path0=/home/dfs  # 第一个存储目录

tracker_server=本机ip:22122  # tracker服务器IP和端口,注意这里单机只配一个就好了

http.server_port=8888  # http访问文件的端口(默认8888,看情况修改,和nginx中保持一致)
  • client
vim /etc/fdfs/client.conf

#需要修改的内容如下

base_path=/home/dfs

tracker_server=本机ip:22122    #tracker服务器IP和端口,注意这里单机只配一个就可以了

那我们要先启动起来几个东西,tracker和storage。

在启动前我们要先关闭防火墙,不然后面文件访问不了

#不关闭防火墙的话无法使用
systemctl stop firewalld.service #关闭
systemctl restart firewalld.service #重启
  • 启动tracker
# 这里我把命令都贴上来,你们自己用
fdfs_trackerd /etc/fdfs/tracker.conf start #启动tracker服务

fdfs_trackerd /etc/fdfs/tracker.conf restart #重启动tracker服务

fdfs_trackerd /etc/fdfs/tracker.conf stop #停止tracker服务

chkconfig fdfs_trackerd on #自启动tracker服务
  • 启动storage
fdfs_storaged /etc/fdfs/storage.conf start #启动storage服务

fdfs_storaged /etc/fdfs/storage.conf restart #重动storage服务

fdfs_storaged /etc/fdfs/storage.conf start stop #停止动storage服务

chkconfig fdfs_storaged on #自启动storage服务

我们测试下:

#保存后测试,返回ID表示成功 如:group1/M00/00/00/xx.tar.gz
fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/nginx-1.15.4.tar.gz

说明上传成功,目录就在之前的/home/dfs下

具体我们后面再说,先说怎么访问这个文件,首先nginx要进行配置

  • 配置nginx访问
vim /etc/fdfs/mod_fastdfs.conf

#需要修改的内容如下,如果有多的tracker,就配置多个,否则,单机就配置一个即可!
tracker_server=192.168.52.2:22122  # 服务器1
tracker_server=192.168.52.3:22122  # 服务器2
tracker_server=192.168.52.4:22122  # 服务器3

url_have_group_name=true

store_path0=/home/dfs


#配置nginx.config
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;
    }
}
  • 启动nginx
/usr/local/nginx/sbin/nginx #启动nginx

/usr/local/nginx/sbin/nginx -s reload #重启nginx

/usr/local/nginx/sbin/nginx -s stop #停止nginx

然后访问你单机这台的ip:8888/group1/M00/00/00/你上传的文件名

即可完成上传和访问!
 

好了,那么单机版本的上传我就介绍到这,后面我会更新更多的功能和使用场景,对了,

网盘在这里:链接:https://pan.baidu.com/s/1tkIloZUuVVy3sCxvHzLF4w 

提取码:obgr

以上是关于第二章FastDFS单机搭建过程的主要内容,如果未能解决你的问题,请参考以下文章

linux搭建简易版本的FastDFS服务器

fastdfs虚拟机单机版搭建

FastDFS单机搭建以及java客户端Demo

搭建fastdfs服务,及单机redis服务,springboot实现h5与fastdfs之间的断点续传,大文件上传,秒传文件和批量上传

FastDFS-单机版安装

CentOS7搭建FastDFS V5.11分布式文件系统-第二篇