Linux 配置 FastDFS

Posted wang-kai-1994

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Linux 配置 FastDFS相关的知识,希望对你有一定的参考价值。

一、配置 libfastcommon

  1、下载 libfastcommon

    wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz

  2、解压,进入目录

    tar -zxvf V1.0.7.tar.gz

    cd libfastcommon-1.0.7

  3、编译

    ./make.sh

    ./make.sh install

 

  

二、配置 FastDFS

  1、下载 FastDFS

    wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz

  2、解压,进入目录

    tar -zxvf V5.05.tar.gz

    cd fastdfs-5.05

  3、编译

     ./make.sh

    ./make.sh install

  4、设置软连接

    ln -s /usr/bin/fdfs_trackerd /usr/local/bin

    ln -s /usr/bin/fdfs_storaged /usr/local/bin

    ln -s /usr/bin/stop.sh /usr/local/bin

    ln -s /usr/bin/restart.sh /usr/local/bin

 

三、配置 FastDFS 跟踪器(tracker)

  1、拷贝文件

    cd /etc/fdfs

    cp tracker.conf.sample tracker.conf

  2、编辑文件

    vim tracker.conf

# Tracker 数据和日志目录地址
base_path=/home/fastdfs/tracker

# HTTP 服务端口
http.server_port=80

  3、创建对应目录

    mkdir -p /home/fastfds/tracker

  

  4、设置软连接

    ln -s /usr/bin/fdfs_trackerd /usr/local/bin

    ln -s /usr/bin/fdfs_storaged /usr/local/bin

    ln -s /usr/bin/stop.sh /usr/local/bin

    ln -s /usr/bin/restart.sh /usr/local/bin

  5、启动tracker

    service fdfs_trackerd start

  6、设置开机启动

    chkconfig —add  fdfs_trackerd

 

四、配置 FastDFS 存储(storage)

  1、拷贝文件

    cd /etc/fdfs

    cp storage.conf.sample storage.conf

  2、编辑文件

    vim storage.conf

# Tracker 数据和日志目录地址、
base_path=/home/fastfds/storage


store_path0=/home/fastfds/storage

# 有多个 tracker server 时,每个 tracker server 写一行
tracker_server=你的ip:22122

# HTTP 服务端口
http.server_port=80

  

  3、创建对应的目录

    mkdir -p /home/fastfds/storage

  4、启动服务

    service fdfs_storaged start

  5、设置开机启动

    chkconfig —add fdfs_storaged

  6、验证Storage和Tracker是否在通信:

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

     如果出现 ACTIVE 字段,表示通信成功

 

五、文件上传测试

  1、修改 Tracker 服务器中的客户端配置文件

    cd /etc/fdfs

    cp client.conf.sample client.conf

  2、修改配置文件

    vim client.conf

# Client 的数据和日志目
base_path=/home/fastfds/tracker

# Tracker端口
tracker_server=你的ip:22122

  3、上传文件

    wget 随便一张图片的链接

    /usr/bin/fdfs_upload_file /etc/fdfs/client.conf 图片的路径

    返回的字段如果是: group1/M00/00/00 开头的表示上传成功

 

六、安装nginx

  详情看 《安装nginx》

 

七、文件下载测试

  1、编辑 nginx 配置文件

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

    添加代码:

      location /group1/M00 {

        alias /home/tiantian/fastdfs/data;

      }

    技术图片

  

  2、重启nginx

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

  3、测试访问

    wget http://127.0.0.1/刚才上传成功的返回值

 

八、 FastDFS 配置 Nginx 模块  

  1、fastdfs-nginx-module 模块说明

    FastDFS 通过 Tracker 服务器,将文件放在 Storage 服务器存储, 但是同组存储服务器之间需要进行文件复制, 有同步延迟的问题。

    假设 Tracker 服务器将文件上传到了 192.168.51.128,上传成功后文件 ID已经返回给客户端。

    此时 FastDFS 存储集群机制会将这个文件同步到同组存储 192.168.51.129,在文件还没有复制完成的情况下,客户端如果用这个文件 ID 在 192.168.51.129 上取文 

      件,就会出现文件无法访问的错误。

    而 fastdfs-nginx-module 可以重定向文件链接到源服务器取文件,避免客户端由于复制延迟导致的文件无法访问错误。

  2、下载 fastdfs-nginx-module

    wget https://github.com/happyfish100/fastdfs-nginx-module/archive/5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip

  3、解压,重命名

    解压

      unzip 5e5f3566bbfa57418b5506aaefbe107a42c9fcb1.zip

    可能需要安装解压工具: yum install zip unzip

    重命名

      mv fastdfs-nginx-module-5e5f3566bbfa57418b5506aaefbe107a42c9fcb1 fastdfs-nginx-module-master

  4、配置nginx

    首先停掉 nginx 服务

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

    进入解压包目录

      cd /etc/fdfs/nginx-1.12.1

    重新配置 nginx

      ./configure --add-module=/home/fastfds_nginx/fastdfs-nginx-module-master/src

    重新编译、安装

      make && make install

  5、查看 nginx 模块

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

    出现以下字样,成功

      技术图片

    

  6、复制 fastdfs-nginx-module 源码中的配置文件到/etc/fdfs 目录

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

    

  7、编辑

    cd /etc/fdfs/

    vim mod_fastdfs.conf

    更新代码如下:

# 连接超时时间
connect_timeout=10

# Tracker Server
tracker_server=127.0.0.1:22122

# StorageServer 默认端口
storage_server_port=23000

# 如果文件ID的uri中包含/group**,则要设置为true
url_have_group_name = true

# Storage 配置的store_path0路径,必须和storage.conf中的一致
store_path0=/home/fastfds/storage

  8、配置部分文件

    cd /opt/fastdfs/conf

    cp anti-steal.jpg http.conf mime.types /etc/fdfs/

  9、配置nginx,修改nginx.conf

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

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

      ngx_fastdfs_module;

     }

    把原来配置的注释掉,换成上面的代码即可

  10、启动nginx

    /usr/local/nginx/sbin/nginx

  11、下载

    wget http://127.0.0.1/你上传文件返回的值

    下载成功了,即表示配置成功

    

    

          

  

    

以上是关于Linux 配置 FastDFS的主要内容,如果未能解决你的问题,请参考以下文章

如何在Linux系统中安装配置FastDFS软件

Linux 配置 FastDFS

FastDFS 配置 Nginx 模块-Linux

Linux下分布式文件系统FastDFS安装与配置

Linux CentOS7 下使用FastDFS的安装配置

Linux服务器开发,fastdfs架构分析和配置