分布式文件系统FastDFS 分布式安装实战

  • 安装环境: 

fastdfs 6.04 

nginx 1.16.1   

两台centos 7.6   没有装过nginx

云服务器安全组开放端口:23000、22122、8888、80、

  • 需要下载的资源官方下载地址:
  1. https://github.com/happyfish100/
  2. https://github.com/happyfish100/fastdfs/wiki
  3. https://www.cnblogs.com/leechenxiang/p/5406548.html
  4. https://www.cnblogs.com/leechenxiang/p/7089778.html
  • 自己下载的资源路径:
  1. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/fastdfs-6.04.tar.gz
  2. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/fastdfs-nginx-module-1.22.tar.gz
  3. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/libfastcommon-1.0.42.tar.gz
  4. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/nginx-1.16.1.tar.gz

配置FastDFS环境准备工作 

  • Centos7.x 两台 ,分别安装tracker(服务器26)与storage(服务器44) 
  • 首先两台都需要先安装基础环境  
  1. 安装 gcc 和  libevent  
    yum install -y gcc gcc-c++
    yum -y install libevent

     

  2. 进入安装包目录  ,解压  libfastcommon
    tar -zxvf libfastcommon-1.0.42.tar.gz

  3.  进入libfastcommon文件夹,编译并且安装

    ./make.sh
    ./make.sh install

  4. 回到安装包目录,解压  fastdfs 

    tar -zxvf fastdfs-6.04.tar.gz

  5. 进入到fastdfs目录,编译并且安装

    cd fastdfs-6.04/
    ./make.sh
    ./make.sh install    

     

  6. 进入  conf 目录 ,将该目录下所有资源  ,移动到   /etc/fdfs  目录下统一管理

    cd conf/
    cp * /etc/fdfs/
    cd /etc/fdfs/


配置tracker服务(服务器26)

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

  • tracker和storage都是同一个fastdfs的主程序的两个不同概念,配置不同的配置文件就可以设定为tracker或者storage
  • /etc/fdfs下都是一些配置文件,配置tracker即可
  1. 进入  fdfs 目录下  打开 tracker 配置文件 修改基础路径 .      此为tracker的工作目录,保存数据以及日志 
    cd /etc/fdfs/
    vim tracker.conf
    ------------------------------------
    base_path=/usr/local/fastdfs/tracker
    :wq

  2. 创建刚刚指定的基础路径目录

    mkdir /usr/local/fastdfs/tracker -p
    

     

  3.  启动  tracker 进程   ,指定刚刚配置的文件 。  然后查看进程是否启动

    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
    ps -ef |grep tracker


配置storage服务 (服务器44) 

  1. 打开 storage.conf 配置文件
    cd /etc/fdfs/
    ll
    vim storage.conf

  2.  

    修改该storage.cond配置文件 

    # 修改组名
    group_name=qiujian
    # 修改storage的工作空间
    base_path=/usr/local/fastdfs/storage
    # 修改storage的存储空间
    store_path0=/usr/local/fastdfs/storage
    # 修改tracker的地址和端口号,用于心跳
    tracker_server=你的trackerIP地址:22122
    
    -------------------------------------
    :wq

  3.  

     保存后,创建刚刚配置的目录  

    mkdir /usr/local/fastdfs/storage -p
    

     

  4.  启动  storage 服务 (前提要先打开 tracker ,不然无法发送心跳)

    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
    ps -ef|grep storage
    

  5. 修改的client配置文件  

    vim /etc/fdfs/client.conf
    
    base_path=/usr/local/fastdfs/client
    tracker_server=你的trackerIP地址:22122
    
    ---------------------------------------
    :wq

  6. 创建刚刚配置client 的路径

    mkdir /usr/local/fastdfs/client

     

  7. 测试上传文件  ,首先移动到安装包目录下  下载一张图片  然后执行上传命令  。下图为成功上传图

    cd 你的安装包目录
    
    wget https://www.baidu.com/img/pc_906bd0e6235b67bd693484209bb70b29.gif
    
    /usr/bin/fdfs_test /etc/fdfs/client.conf upload /刚刚下载图片的目录/pc_906bd0e6235b67bd693484209bb70b29.gif


配置 nginx fastdfs 实现文件服务器

  • fastdfs安装好以后是无法通过http访问的,这个时候就需要借助nginx了,所以需要安装fastdfs的第三方模块到nginx中,就能使用了。
  • 注:nginx需要和storage在同一个节点。
  1. 安装Nginx 插件  解压nginx的fastdfs压缩包
    tar -zxvf fastdfs-nginx-module-1.22.tar.gz
    

     

  2. 进入到 nginx module  的 conf 目录  复制配置文件到   /etc/fdfs  进行统一管理

    cd /qiujian/fastdfs-nginx-module-1.22/src/
    
    cp mod_fastdfs.conf /etc/fdfs

  3. 在当前目录下,修改   config文件,主要是修改路径,把local删除,因为fastdfs安装的时候我们没有修改路径,原路径是/usr

    vim config
    
    ngx_module_incs="/usr/include"
    
    CORE_INCS="$CORE_INCS /usr/include"
    
    -----------------------------------
    :wq

  4.  

    Nginx  普通安装,在这篇文章写的很清楚了

    https://blog.csdn.net/publicv/article/details/103751068

     

  5. 这边安装Nginx 只讲述和普通安装Nginx 的区别之处

    yum install gcc-c++
    yum install -y pcre pcre-devel
    yum install -y zlib zlib-devel
    yum install -y openssl openssl-devel
    tar -zxvf nginx-1.16.1.tar.gz
    mkdir /var/temp/nginx -p

  6. 移动到  fastdfs 插件的 src 目录 ,pwd 复制  。然后在返回到  解压 nginx 目录下 。 配置nginx 目录

    1:复制 刚刚安装nginx 插件的src 目录
    2:然后在返回到  解压好的  nginx 目录下
    ./configure \
    --prefix=/usr/local/nginx \
    --pid-path=/var/run/nginx/nginx.pid \
    --lock-path=/var/lock/nginx.lock \
    --error-log-path=/var/log/nginx/error.log \
    --http-log-path=/var/log/nginx/access.log \
    --with-http_gzip_static_module \
    --http-client-body-temp-path=/var/temp/nginx/client \
    --http-proxy-temp-path=/var/temp/nginx/proxy \
    --http-fastcgi-temp-path=/var/temp/nginx/fastcgi \
    --http-uwsgi-temp-path=/var/temp/nginx/uwsgi \
    --http-scgi-temp-path=/var/temp/nginx/scgi \
    --add-module=这边写的路径目录是刚刚安装nginx的fastdfs插件的 src目录

     

  7. 编译 安装

    make
    make install
  8. 修改 mod_fastdfs.conf 配置文件:

    cd /etc/fdfs/
    
    vim mod_fastdfs.conf
    
    base_path=/usr/local/fastdfs/tmp
    tracker_server=你的trackerIP地址:22122
    group_name=qiujian
    url_have_group_name = true
    store0_path=/usr/local/fastdfs/storage

  9. 将刚刚指定的  tmp 目录进行创建

    mkdir /usr/local/fastdfs/tmp

     

  10. 修改nginx.conf,添加如下虚拟主机:  这边是修改好的  ,整个nginx 配置文件  。新增了 8888 配置映射我们的图片

    /usr/local/nginx/conf
    vim nginx.conf
    
    worker_processes  1;
    
    events {
        worker_connections  1024;
    }
    
    
    http {
        include       mime.types;
        default_type  application/octet-stream;
    
        sendfile        on;
        keepalive_timeout  65;
        server {
            listen       80;
            server_name  localhost;
    
            #charset koi8-r;
    
            #access_log  logs/host.access.log  main;
    
            location / {
                root   html;
                index  index.html index.htm;
            }
            error_page   500 502 503 504  /50x.html;
            location = /50x.html {
                root   html;
            }
        }
        server {
    	    listen       8888;
    	    server_name  localhost;
    
    	    location /qiujian/M00 {
    		    ngx_fastdfs_module;
    	    }
    
        }
    
    
    }
    
  11. 启动nginx  ,然后移动到我们图片保存的目录下 。找一张图片进行查看  。 成功图如下

    /usr/local/nginx/sbin/nginx
    
    
    cd /usr/local/fastdfs/storage/data/00/00
    ll

    访问地址: 

    http://nginx下IP:8888/qiujian/M00/00/00/在00下的图片名

 

 

 

 

 

 

posted @ 2020-05-10 20:34  邱健  阅读(71)  评论(0编辑  收藏  举报