Linux(CentOS7)搭建FastDfs

一、前言

1、FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS为互联网量身定制,充分考虑了冗余备份、负载均衡、线性扩容等机制,并注重高可用、高性能等指标,使用FastDFS很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务。
2、记录一次搭建过程。

二、搭建步骤

1、首先获取安装包,安装包获取路径:安装包下载路径

2、将FastDfs组件上传到Linux服务器。一共四个组件

centos怎么上传压缩文件 centos7 上传文件_fastdfs

3、将libfastcommon-1.0.7.tar.gz安装包解压到/opt/modules/fastDfs。我服务器的目录,可根据自身情况放置目录。tar zxvf libfastcommon-1.0.7.tar.gz -C /opt/modules/fastDfs/ 注意路径要符合自己的

centos怎么上传压缩文件 centos7 上传文件_文件服务器_02


4、安装编译环境执行命令

yum -y install gcc gcc-c++ autoconf pcre pcre-devel make automake

5、进入到解压完的libfastcommon-1.0.7

centos怎么上传压缩文件 centos7 上传文件_文件服务器_03


6、执行make.sh

centos怎么上传压缩文件 centos7 上传文件_nginx_04


centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_05


7、执行安装命令:./make.sh install

centos怎么上传压缩文件 centos7 上传文件_linux_06


centos怎么上传压缩文件 centos7 上传文件_文件服务器_07


8、将src 下的libfastcommon.so文件复制到/usr/lib

cp /opt/modules/fastDfs/libfastcommon-1.0.7/src/libfastcommon.so /usr/lib

9、解压FastDFS_v5.05.tar.gz 到与libfastcommon-1.0.7 同级目录下(方便管理)

命令:tar zxvf ./FastDFS_v5.05.tar.gz -C /opt/modules/fastDfs/ 注意自己的目录

10、更名:mv FastDFS/ ./fastdfs-5.05

centos怎么上传压缩文件 centos7 上传文件_nginx_08


11、进入fastdfs-5.05

centos怎么上传压缩文件 centos7 上传文件_nginx_09


12、执行编译命令:./make.sh

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_10


centos怎么上传压缩文件 centos7 上传文件_fastdfs_11


13、执行安装命令:./make.sh install

centos怎么上传压缩文件 centos7 上传文件_nginx_12


14、复制fastdfs-5.05下的conf目录下的配置文件/etc/fdfs目录中 必须是这个目录

centos怎么上传压缩文件 centos7 上传文件_文件服务器_13

16、配置tracker

(1)新建目录用于存放tracker的日志 mkdir -p /home/logs/fastdfs/tracker

(2)修改tracker.conf文件

修改第22行的地址

默认

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_14


修改后:指向刚才新建的目录

centos怎么上传压缩文件 centos7 上传文件_文件服务器_15


修改第248行的端口号需要与nginx保持一一直(后面安装nginx)

默认为8080

centos怎么上传压缩文件 centos7 上传文件_linux_16


修改成80

centos怎么上传压缩文件 centos7 上传文件_linux_17


(3)启动tracker fdfs_trackerd /etc/fdfs/tracker.conf start

fdfs_trackerd 是tracher的命令 后面是指向的刚才修改的tracher的配置文件 start为启动 stop为停止
(4)查看启动状态:出现如图为启动成功,初次成功启动,会在 /home/logs/fastdfs/ (配置的base_path)下创建 data、logs 两个目录。

centos怎么上传压缩文件 centos7 上传文件_nginx_18


centos怎么上传压缩文件 centos7 上传文件_fastdfs_19


17:、配置storage

(1)新建storage的日志目录 mkdir -p /home/logs/fastdfs/storage

(2)新建实际存储文件的目录 mkdir -p /home/data/fastdfs/file

(3)编辑storage.conf配置文件

修改第41行storage的目录

centos怎么上传压缩文件 centos7 上传文件_文件服务器_20


修改后

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_21


修改第109行

修改前

centos怎么上传压缩文件 centos7 上传文件_nginx_22


修改后

centos怎么上传压缩文件 centos7 上传文件_nginx_23


修改118行tracker_server地址:ip:22122, 红框为自己的ip地址

注意:22122端口号安全组配置出入都要是开放状态,否则配置的是公网ip storage无法启动,

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_24


修改281行端口号默认8888 修改为80

centos怎么上传压缩文件 centos7 上传文件_fastdfs_25


修改后

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_26


(4)启动storage fdfs_storaged /etc/fdfs/storage.conf start 开放端口23000

(5)查看启动状态 netstat -unltp | grep storage

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_27


(6)查看tracker和storage是不是在通信

fdfs_monitor /etc/fdfs/storage.conf

监控成功如下图

centos怎么上传压缩文件 centos7 上传文件_fastdfs_28


17、测试上传文件

(1)新建目录 mkdir -p /home/logs/fastdfs/client

(2)修改client.conf

修改base_path 和tracker_server

修改前

centos怎么上传压缩文件 centos7 上传文件_linux_29


修改后 tracker_server= ip:22122

centos怎么上传压缩文件 centos7 上传文件_linux_30


(3)测试上传文件 fdfs_test /etc/fdfs/client.conf upload anti-steal.jpg上传成功会返回访问地址

centos怎么上传压缩文件 centos7 上传文件_fastdfs_31


18、安装nginx

(1)解压 tar zxvf nginx-1.20.0.tar.gz -C /opt/modules/fastDfs/

(2)安装nginx依赖库

yum install gcc-c++
yum install -y pcre pcre-devel
yum install -y zlib zlib-devel
yum install -y openssl openssl-devel

(3)新建nginx的安装目录mkdir -p /opt/modules/nginx

(4)执行命令: ./configure --prefix=/opt/modules/nginx

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_32


centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_33


(5)编译安装 make && make install

centos怎么上传压缩文件 centos7 上传文件_nginx_34


centos怎么上传压缩文件 centos7 上传文件_linux_35


安装完在安装目录会生成nginx 的配置

centos怎么上传压缩文件 centos7 上传文件_文件服务器_36


19、配置fastdfs-nginx-module 通过nginx访问上传的文件

tar zxvf fastdfs-nginx-module_v1.16.tar.gz -C /opt/modules/fastDfs/

(1)进入/fastdfs-nginx-module/src/config文件。去掉所有的local(三个)

centos怎么上传压缩文件 centos7 上传文件_linux_37


删除后

centos怎么上传压缩文件 centos7 上传文件_fastdfs_38


(2)拷贝usr/lib64目录下库文件libfdfsclient.so

cp /usr/lib64/libfdfsclient.so /usr/lib

(3)进入nginx 解压后的目录

centos怎么上传压缩文件 centos7 上传文件_fastdfs_39


(4)重新编译

./configure --prefix=/opt/modules/nginx --add-module=/opt/modules/fastDfs/fastdfs-nginx-module/src/

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_40


(5)重新编译安装 make && make install

(6)复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录, 并修改

cd /opt/modules/fastDfs/fastdfs-nginx-module/src'
cp mod_fastdfs.conf /etc/fdfs/

(7)修改mod_fastdfs.conf这个文件

cd /etc/fdfs/

修改第10行

修改前默认

centos怎么上传压缩文件 centos7 上传文件_nginx_41


修改后

centos怎么上传压缩文件 centos7 上传文件_文件服务器_42


修改第40行tracker_server

修改前默认

centos怎么上传压缩文件 centos7 上传文件_nginx_43


修改后 ip:22122

centos怎么上传压缩文件 centos7 上传文件_fastdfs_44


修改第53行为true 默认是false

centos怎么上传压缩文件 centos7 上传文件_fastdfs_45


修改第63行

修改前默认

centos怎么上传压缩文件 centos7 上传文件_nginx_46


修改后

centos怎么上传压缩文件 centos7 上传文件_fastdfs_47


(19)配置nginx

修改安装目录表下的conf 里面的nginx配置文件

centos怎么上传压缩文件 centos7 上传文件_nginx_48


添加配置

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

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_49


(20)启动nginx

sbin/nginx    启动
sbin/nginx -s stop  停止

(21)查看启动状态 ps -ef | grep nginx 启动进程如图

centos怎么上传压缩文件 centos7 上传文件_linux_50


访问 上传文件地址即可访问。

centos怎么上传压缩文件 centos7 上传文件_centos怎么上传压缩文件_51

80 22122 23000 端口必须开放。
80 22122 23000 端口必须开放。
80 22122 23000 端口必须开放。