搭建FastDFS服务器详细步骤

安装环境

主机系统:windows 10
虚拟机应用:VMware 12
虚拟机系统:centos 7

安装FastDFS

1、下载并安装FastDFS依赖包libfastcommon

wget https://codeload.github.com/happyfish100/libfastcommon/zip/master

unzip master

cd libfastcommon-master/
./make.sh 
./make.sh install

注意: 在进行./make.sh install时如果不是在root用户下执行,会出现权限不够的问题,此时需要在前面加上sudo

2、下载并安装FastDFS

wget http://jaist.dl.sourceforge.net/project/fastdfs/FastDFS%20Server%20Source%20Code/FastDFS%20Server%20with%20PHP%20Extension%20Source%20Code%20V5.08/FastDFS_v5.08.tar.gz

tar xf FastDFS_v5.08.tar.gz

cd FastDFS
./make.sh 
./make.sh install

同样在执行./make.sh install之前需要加上sudo

3、 采用默认方式安装后的文件及目录:

ll /etc/init.d/ |grep fdfs

ll /etc/fdfs/

ll /usr/bin |grep fdfs

执行结果如下:
搭建FastDFS服务器详细步骤

配置跟踪服务器(tracker server)

1、拷贝tracker server和client端样例配置文件并重命名

cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf

cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf

注意:此处拷贝同样需要权限,操作完成后可以进行查看
搭建FastDFS服务器详细步骤
2、编辑tracker server配置文件tracker.conf,这里需要注意的是你的服务器磁盘挂载的目录空间
可以使用:df -h 命令查看,配置base_path路径应该是设置到大存储空间的路径里,这个是FastDFS文件存储的实际路径。
搭建FastDFS服务器详细步骤
该修改需要在root用户下完成
3、编辑client端的配置文件client.conf
搭建FastDFS服务器详细步骤
192.168.220.128通过ifconfig指令查看得来
4、创建tracker server数据目录,就是上面配置的base_path路径

mkdir -p /data/fastdfs/tracker

5、测试启动tracker server,查看22122端口是否监听,启动成功会自动在/data/fastdfs/tracker目录新建data和logs目录

/etc/init.d/fdfs_trackerd start
ss -lntup|grep 22122

搭建FastDFS服务器详细步骤
6、关闭tracker server

/etc/init.d/fdfs_trackerd stop

配置存储服务器(storage server)

1、拷贝storage server样例配置文件并重命名

cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf

2、编辑storage server配置文件storage.conf

disabled=false(默认为false,表示是否无效)
port=23000(默认为23000)
base_path=/data/fastdfs/storage
tracker_server=192.168.220.128:22122
store_path0=/data/fastdfs/storage
http.server_port=8888(默认为8888,nginx中配置的监听端口)

192.168.220.128通过ifconfig指令查看得来
3、创建storage server数据目录

mkdir -p /data/fastdfs/storage

4、测试启动storage server,查看23000端口是否已经监听,启动成功会自动在/data/fastdfs/tracker目录新建data和logs目录(启动storage server的前提是tracker server必须事先已启动)

/etc/init.d/fdfs_storaged start
ss -lntup|grep 23000

搭建FastDFS服务器详细步骤
5、文件上传测试:

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/wu/Pictures/1.jpg

/home/wu/Pictures/1.jpg是图片的绝对路径,返回文件ID即说明文件已经上传成功
搭建FastDFS服务器详细步骤

配置Nginx服务器

1、安装并配置nginx
更新nginx安装库:

rpm -ivh http://nginx.org/packages/centos/7/noarch/RPMS/nginx-release-centos-7-0.el7.ngx.noarch.rpm
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo
yum makecache
yum update

安装nginx:

yum info nginx
yum install nginx

下载fastdfs-nginx-moudule:

wget http://nchc.dl.sourceforge.net/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz

tar xf fastdfs-nginx-module_v1.16.tar.gz

cd fastdfs-nginx-module/src/

vim config

编辑config文件,执行如下命令进行批量替换并保存退出
:%s+/usr/local/+/usr/+g

2、拷贝fastdfs-nginx-module模块中配置文件到/etc/fdfs目录中并编辑

cp /home/oldcat/tools/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/
vi /etc/fdfs/mod_fastdfs.conf

修改内容如下:
connect_timeout=10
base_path=/tmp(默认为/tmp ,请使用这个默认路径,修改路径的话,有可能http预览文件失败)
tracker_server=192.168.1.72:22122
storage_server_port=23000(默认配置为23000)
url_have_group_name = true
store_path0=/opt/fastdfs/storage
group_name=group1(默认配置为group1)

3、nginx添加fastdfs-nginx-module模块

yum install -y pcre-devel openssl openssl-devel

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

tar -zvxf nginx-1.12.1.tar.gz

cd nginx-1.12.1

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

make && make install

4、拷贝FastDFS中的部分配置文件到/etc/fdfs目录中

cp /home/wu/FastDFS/conf/http.conf /etc/fdfs/
cp /home/wu/FastDFS/conf/mime.types /etc/fdfs/

5、配置nginx

vim /usr/local/nginx/conf/nginx.conf

配置以下内容:
user  root;    
    worker_processes  1;
    events {
       worker_connections  1024;
    }
    http {
        include       mime.types;
        default_type  application/octet-stream;
        sendfile        on;
        keepalive_timeout  65;
        server {
            listen       8888;
            server_name  localhost;
            location ~/group[0-9]/ {
                ngx_fastdfs_module;
            }
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
            root   html;
            }
        }
    }

6、启动Nginx,并查看8888端口是否已经监听:

cd /usr/local/nginx/sbin/

./nginx

ss -lntup|grep 8888

搭建FastDFS服务器详细步骤

测试文件是否上传成功

1、启动各个服务

启动tracker
/etc/init.d/fdfs_trackerd start

启动两个storage
/etc/init.d/fdfs_storaged start

2、测试文件上传
首先传一张图片到tracker 服务上的 home目录下,然后执行命令上传到FastDFS文件存储,该图片在/home/wu/Pictures目录中

/usr/bin/fdfs_upload_file /etc/fdfs/client.conf /home/wu/Pictures/1.jpg

存储会返回类似这样的文件路径:
group1/M00/00/00/wKjcgF0__CSAHjVJAAzn68-j3y4616.jpg

然后打开浏览器,输入
http://192.168.220.128:8888/group1/M00/00/00/wKjcgF0__CSAHjVJAAzn68-j3y4616.jpg
可查看到上传的图片:
搭建FastDFS服务器详细步骤
与上传图片相符,证明上传成功
搭建FastDFS服务器详细步骤

上一篇:fastdfs文件上传


下一篇:docker中使用fastDFS