分布式文件存储系统FastDFS手把手教你怎么做

本文详细介绍了如何安装和配置FastDFS,包括在线和离线安装libfastcommon、fastdfs、fastdfs-nginx-module及nginx。还涵盖了单机和集群部署的步骤,以及Java整合FastDFS的教程,包括上传下载图片和生成缩略图的功能。
摘要由CSDN通过智能技术生成

6.FastDFS安装和使用

6.1 安装总体介绍

    1. 首先安装libfastcommon (fastdfs依赖的函数库)
    1. 接着安装fastdfs(其实就是把client , tracker ,storage安装完成了)
    1. 接下来安装fastdfs-nginx-module (fastdfs提供对nginx的依赖模块)
    1. 最后安装nginx(如果此前安装好了,可以不用重新安装)

    注意: 安装分为在线安装(要求提供良好的网络)或者离线安装(将相关的软件包下载下来后离线安装,安装资料在资料\fastdfs\安装包)

    1. 安装之前,创建两个目录

      /usr/local/soft: 安装包所在的目录,执行命令: mkdir -p /usr/local/soft

      /data/fastdfs: 数据所在的目录(fastdfs上传文件和日志所在的目录) 执行命令: mkdir -p /data/fastdfs

6.2 安装libfastcommon (安装方式二选一)

  • 在线安装

    步骤一:   git clone https://github.com/happyfish100/libfastcommon.git --depth 1
    步骤二:   cd libfastcommon/
    步骤三:#编译安装
    ./make.sh && ./make.sh install
    
  • 离线安装

    步骤一:   unzip libfastcommon-master.zip
    步骤二:   cd libfastcommon-master
    步骤三:   ./make.sh && ./make.sh install
    

6.3 安装fastdfs (安装方式二选一)

  • 在线安装

    cd ../ 															#返回上一级目录 ,回到soft所在的目录
    git clone https://github.com/happyfish100/fastdfs.git --depth 1 #下载fastdfs.git
    cd fastdfs/ 													#进入fastdfs
    ./make.sh && ./make.sh install 									#编译安装
    #供nginx访问使用
    cp /usr/local/soft/fastdfs/conf/http.conf /etc/fdfs/			
    cp /usr/local/soft/fastdfs/conf/mime.types /etc/fdfs/
    
  • 离线安装

    步骤一:  unzip fastdfs-master.zip  #首先切换到soft目录
    步骤二:  cd fastdfs-master
    步骤三:  ./make.sh && ./make.sh install
    
    #供nginx访问使用
    cp /usr/local/soft/fastdfs-master/conf/http.conf /etc/fdfs/			
    cp /usr/local/soft/fastdfs-master/conf/mime.types /etc/fdfs/
    

6.4 安装fastdfs-nginx-module (安装方式二选一)

  • 在线安装

    cd ../ #返回上一级目录
    git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
    cp /usr/local/soft/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs
    
  • 离线安装

    步骤一:   unzip fastdfs-nginx-module-master.zip 
    步骤二:   cp /usr/local/soft/fastdfs-nginx-module-master/src/mod_fastdfs.conf  /etc/fdfs
    

6.5 安装nginx (安装方式二选一)

  • 在线安装

    wget http://nginx.org/download/nginx-1.15.4.tar.gz #下载nginx压缩包
    tar -zxvf nginx-1.15.4.tar.gz #解压
    cd nginx-1.15.4/
    #添加fastdfs-nginx-module模块
    ./configure --add-module=/usr/local/soft/fastdfs-nginx-module/src/
    make && make install #编译安装
    
  • 离线安装

    步骤一: tar -zxvf nginx-1.8.1.tar.gz   #切换到/usr/local/soft目录下面
    步骤二: 安装nginx依赖
    		sudo apt-get install openssl libssl-dev
    		sudo apt-get install libpcre3 libpcre3-dev
    		sudo apt-get install zlib1g-dev
    步骤三: 切换进入nginx目录
    		cd /usr/local/soft/nginx-1.8.1
    步骤四: 将fastdfs提供的nginx依赖配置到nginx里面
    
    		sudo ./configure --prefix=/usr/local/nginx/ --add-module=fastdfs-nginx-module-master/src(对应的绝对路径)
    步骤五:  make &&make install
    
    如果执行步骤五错,那么首先删除nginx-1.8.1/objs/Makefile这个文件,
    命令为: rm -rf /usr/local/soft/nginx-1.8.1/objs/Makefile
    然后再次执行步骤五
    
    

7.单机部署fastdfs

  • 注意注意!!!

    由于离线安装和在线安装,生成的配置文件名称不一致,

    如果是离线安装,那么需要修改配置文件名称

    #执行如下命令
    cd /etc/fdfs
    mv  tracker.conf.sample  tracker.conf
    mv  storage.conf.sample  storage.conf
    mv  client.conf.sample  client.conf
    
    
  • 步骤一: 配置虚拟主机

    比如:
    编辑虚拟机的host文件:  vim  /etc/hosts
    添加这段内容:  192.168.200.13 fastdfs.com
    注意: ip写自己主机的ip, fastdfs.com域名 可以随意起.
    
    如果通过windows浏览器访问虚拟机的fastdfs,同时需要配置C:\Windows\System32\drivers\etc\hosts文件
    添加这段内容:  192.168.200.131 www.fastdfs.com
    
    
  • 步骤二: 配置tracker

    vim /etc/fdfs/tracker.conf
    #需要修改的内容如下
    port=22122 # tracker服务器端口(默认22122,一般不修改)
    base_path=/data/fastdfs # 存储日志和数据的根目录
    

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ACym2O3p-1644893557649)(images/image-20210813114423920-1634240524033.png)]

  • 步骤三: 配置storage

    vim /etc/fdfs/storage.conf
    #需要修改的内容如下
    port=23000 # storage服务端口(默认23000,一般不修改)
    base_path=/data/fastdfs # 数据和日志文件存储根目录
    store_path0=/data/fastdfs # 第一个存储目录
    tracker_server=fastdfs.com:22122 # tracker服务器IP和端口
    http.server_port=80 # http访问文件的端口(默认8888,看情况修改,和nginx的端口中保持一致)
    
  • 步骤四: 启动服务测试

    1. 先启动服务
    # 永久关闭防火墙
    systemctl disable firewalld.service
    #启动tracker
    /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
    #启动storage
    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
    # 重启storage
    /usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
    
    1. client测试

      vim /etc/fdfs/client.conf
      #需要修改的内容如下
      base_path=/data/fastdfs
      tracker_server=fastdfs.com:22122 #tracker服务器IP和端口
      #保存后测试,返回ID表示成功 如:group1/M00/00/00/wKgDDWDtRu6AMPhBARBlpcz7xUs146.jpg
      # 上传文件
      fdfs_upload_file /etc/fdfs/client.conf /usr/local/soft/fox.jpg
      # 删除文件
      fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKgDCmD1LHaADXrMAAW3EDO1WQ106.jpg
      
      

      [外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-1U64B95N-1644893557650)(images/image-20210813115618007-1634240524033.png)]:上传成功!

  • 步骤五: 配置nginx访问(client)

    vim /etc/fdfs/mod_fastdfs.conf
            #需要修改的内容如下
            tracker_server=fastdfs.com:22122 #tracker服务器IP和端口
            url_have_group_name=true
            store_path0=/data/fastdfs
    #配置nginx.config
    		vim /usr/local/nginx/conf/nginx.conf
    #添加如下配置
    server {
        listen 80; ## 该端口为storage.conf中的http.server_port相同
        server_name localhost;
        location ~/group[0-9]/ {
        		ngx_fastdfs_module;
        } 
        error_page 500 502 503 504 /50x.html;
        location = /50x.html {
       	 root html;
        }
    }
    

    Nginx测试:

    1.启动服务

    /usr/local/nginx/sbin/nginx #启动nginx
    /usr/local/nginx/sbin/nginx -s reload #重启nginx
    /usr/local/nginx/sbin/nginx -s stop #停止nginx
    

    2.测试,如果能看到图片表示成功**(后面的图片是自己的图片名称)**

    http://fastdfs.com:8888/group1/M00/00/00/wKgDDWDtRu6AMPhBARBlpcz7xUs146.jpg

8.集群部署fastdfs

  • 声明: 集群部署fastdfs时,

    服务器规划:

    ​ 跟踪服务器1【主机】(Tracker Server):192.168.200.131

    ​ 跟踪服务器2【备机】(Tracker Server):192.100.200.132

    ​ 存储服务器1(Storage Server):192.168.200.x1

​ 存储服务器2(Storage Server):192.168.200.x2

​ 存储服务器3(Storage Server):192.168.200.x3

​ 存储服务器4(Storage Server):192.168.200.x4

最好: 保证 tracker 和 storage安装在不同ip的主机上, 避免报错.

​ 具体流程如:

[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-kIkPzhLT-1644893557651)(images/image-20210813133125040-1634240524033.png)]

  • 步骤一: 准备3台服务器(至少2台)

    * 
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值