2.0.FastDFS单机模式综合版

 Centos610系列配置

1.什么是FastDFS?

FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

FastDFS服务端有两个角色:跟踪器(tracker)存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。

存储节点存储文件,完成文件管理的所有功能:存储、同步和提供存取接口,FastDFS同时对文件的meta data进行管理。所谓文件的meta data就是文件的相关属性,以键值对(key value pair)方式表示,如:width=1024,其中的key为width,value为1024。文件meta data是文件属性列表,可以包含多个键值对。

FastDFS系统结构如下图所示:

2.本文目标

本文的目标是在CentOS上,单机安装FastDFS,包括Tracker和Storage,并结合Nginx的配置,最终完成文件的上传,并通过Nginx的路径来完成静态文件内容的展示

3.安装准备

  3.1.1安装依赖库

     在安装FastDFS和Nginx之前,需确保gcc、gcc-c++、 libstdc++-devel、make等依赖库和工具已经安装。

    

 yum -y install gcc gcc-c++ libstdc++-devel
 yum -y groupinstall 'Development Tools' 
 yum -y install wget 
 yum -y install make

     Nginx安装需要依赖pcre库以及zlib库,

     yum -y install pcre-devel

     yum install -y zlib-devel

     yum -y install libxml2 libxml2-dev

     yum -y install libxslt-devel

     yum -y install gd-devel

     yum -y install pcre pcre-devel

     yum -y install zlib zlib-devel

     yum -y install openssl openssl-devel

 

 3.1.2安装libfastcommon类库

   安装FastDFS必须先安装libfastcommon类库,否则会导致报错,安装直接根据如下几个步骤即可~

  

 wget https://github.com/happyfish100/libfastcommon/archive/master.zip
 unzip master.zip
或者从 https://github.com/happyfish100/libfastcommon/archive/V1.0.39.tar.gz下载指定版本 cd libfastcommon-master ./make.sh ./make.sh install

    安装结束。

 3.1.3安装FastDFS

 

 wget https://github.com/happyfish100/fastdfs/archive/master.tar.gz
 tar -zxvf master.tar.gz  
 cd fastdfs-master/
 ./make.sh
 ./make.sh install

     安装结束。

     安装好之后,在/usr/bin目录下,可以看fdfs开头的命令工具~

    

     FastDFS安装完成之后,所有配置文件在/etc/fdfs目录下,tracker需要tracker.conf配置文件,storage需要storage.conf配置文件。

 3.1.4配置tracker.conf

 

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

   mkdir /opt/fastdfs/tracker

vi tracker.conf

   设置base_path=/opt/fastdfs/tracker

   保存退出。

启动FastDFS -Tracker
/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf start

查看端口22122是否开始监听,确认启动是否成功

   查看运行情况

   

  查看日志是否启动成功

   cat /srv/fastdfs/tracker/logs/trackerd.log

 


  tracker配置完成

 

 3.1.5配置storaged.conf

   添加storage工作目录 mkdir /opt/fastdfs/storage

   添加storage存储目录 mkdir /opt/fastdfs/data

   复制storage.conf.sample为storage.conf

   cp storage.conf.sample storage.conf

   

      store_path0修改为storage存储目录路径

  

      store_path修改为storage工作目录路径

    

 3.1.6配置http.conf

  

 conf目录中的http.conf  /etc/fdfs/http.conf 

  

    conf目录中的mime.types 拷贝至 /etc/fdfs/mime.types

  

   conf目录中的anti-steal.jpg 拷贝至/etc/fdfs/anti-steal.jpg

  

   修改http.conf

   vi http.conf

  

     启动存储节点配置

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

 

3.1.7配置预览

    3.1.7.1FastDFS-nginx-module安装

     a.下载安装包

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

        unzip master.zip

    3.1.7.2Nginx下载

         wget https://nginx.org/download/nginx-1.9.9.tar.gz

        

   3.1.7.3编译

    cd nginx-1.9.9

   ./configure --add-module=../fastdfs-nginx-module-master/src/ --with-http_ssl_module

    安装成功,查看版本信息

   

  3.1.7.4查看ningx安装目录

  

 3.1.7.5配置fastdfs-nginx-module

   a.进入fastdfs-nginx-module/src目录

      将mod_fastdfs.conf配置文件拷贝到/etc/fdfs/目录中

     

      进入/etc/fdfs目录

     

     vi mod_fastdfs.conf

 

         store_path0设置为storage存储目录 /opt/fastdfs/data

         tracker_server设置为 192.168.125.139:22122

    url_have_group_name设置为true

 

3.1.8nginx配置

    建议先在不添加任何模块时默认安装,新模块在再安装替换。

   nginx初始安装,参照 https://www.cnblogs.com/oumi/p/10217057.html

    现在假定是已安装了nginx,本文用到1.9.9版

    本文用到的fastdfs-nginx-module版本未1.20

  

   cd nginx-1.9.9

   编译

  

   make

   make install (由于本次nginx已经安装过了,此处不再执行)。

   替换编译后的nginx文件

    a.先备份原先安装

       cp /usr/local/nginx/sbin/nginx /usr/local/nginx/sbin/nginx_v0

    b.替换新编译文件

     从nginx-1.9.9/objs/目录复制nginx文件至 /usr/local/nginx/sbin/

     cd objs

     cp nginx /usr/local/nginx/sbin/

    c.重启nginx

      service nginx restart

 3.1.9FastDFS资源http协议访问支持

  在nginx配置中 添加如下配置

server
{
    listen       9100;
  server_name  localhost;
  location ~/group[0-9]/ {
    ngx_fastdfs_module;
   }
  error_page   500 502 503 504  /50x.html;
  location = /50x.html {
    root   html;
  }
 }

 

 

3.2 开机自启动

 3.2.1设置开机启动

   chkconfig --add fdfs_trackerd

   chkconfig --add fdfs_storaged

   chkconfig fdfs_trackerd on

   chkconfig fdfs_storaged on

 3.2.2启动命令参考

    service fdfs_trackerd start

    service fdfs_storaged start

    service fdfs_trackerd stop

   service fdfs_storaged stop

     

 

  

 

 

   

 

 

 

 

 

 

      

 

posted @ 2019-07-12 14:22  李文学  阅读(340)  评论(0编辑  收藏  举报