FastDFS搭建图片服务器

FastDFS服务器

FastDFS

  1. FastDFS是以C语言开发的一项开源轻量级分布式文件系统,他对文件进行管理,主要功能有:文件存储,文件同步,文件访问(文件上传/下载),特别适合以文件为载体的在线服务,如图片网站,视频网站等

  2. FastDFS由三部分构成: Client -> Tracker Server -> Storage Server

  3. image-20200406133119040.png

搭建FastDFS服务器

  1. 首先搭建Linux虚拟机环境,以Centos7为例,搭建图片服务器

  2. 下载安装libevent包 yum -y install libevent 。

  3. 将下面三个tar.gz 解压包通过filezilla 传入到虚拟机
    image-20200406133551416.png

  4. 首先解压libfastcommon,然后进入,编译安装 make.sh ./make.sh ./make.sh install

    1. 安装完后,将/usr/lib64下的 libfastcommon.so复制一份到/usr/lib【32位环境】下
  5. 然后解压FastDFS 解压 编译安装同libfastcommon

    1. 安装后,bin文件在 /usr/bin下 命名为fdfs_xxx

    2. 配置文件在 /etc/fdfs目录下. 把解压后的fastDFS/conf下文件全部复制到/etc/fdfs下,然后进行相应修改。

    3. vi tracker.conf 修改base_path【存储日志】如换成:/fastdfs/tracker

    4. vi storage.conf 修改 base_path 【存储数据以及日志】、group_name【组织名,访问服务器要加上的前缀】、store_path0【实际图片存放路径】、tracker_server【修改为tracker服务器 IP地址,因为要向tracker服务器定时汇报】

    5. vi client.conf 修改base_path、tracker_server

    6. 启动 tracker storage服务: /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf

    7. 测试client 用/usr/bin下的fdfs_test服务。如:测试上传某图片.

      /usr/bin/fdfs_test /etc/fdfs/client.conf upload /home/logo.png
      
    8. 上传后 返回的信息中有路径: remote_filename = M00/00/00/xxxxxxxxxxxx.png ,访问的话要加上group_name

    9. fastdfs-nginx-module/ 解压目录下,修改 /src/config 文件 将里面的三个/local去掉【同前面fastdfs文件目录一致】。

    10. 需要将该目录下的mod_fastdfs.conf 文件拷贝到 /etc/fdfs目录下。在/etc/fdfs下修改该配置文件 修改base_path【/tmp --> /fastdfs/tmp /fastdfs下没有/tmp目录 需要自己去创建】、tracker_server、group_name、url_have_group_name =true【是否需要group_name做访问前缀】、store_path0【must same as storage.conf】 : /fastdfs/storage

Nginx

  1. 上面把fastdfs安装配置完毕,现在需要nginx来代理fastdfs服务器.

    1. 安装相应的库 gcc、pcre、pcre-devel、zlib、zlib-devel、openssl、openssl-devel yum install gcc-c++ /pcre pcre-devel /zlib .........

    2. 解压nginx 的tar.gz包 ,进入目录,对目录下的configure做相应配置【最后fastdfs-nginx-module为添加fastdfs模块 路径为对应安装位置的/src目录】
      image-20200406160557441.png

    3. 配置完后 然后在nginx目录下 对整体进行编译 安装 make make install

    4. 进入/usr/local/nginx/conf下修改nginx.conf 在里面另外添加一个服务器端口

      server{
      	listen    88;
      	server_name  服务器地址;
      	
      	# 配置nginx进行负载均衡的路径
      	location ~/group[0-9]/M00 {
      		ngx_fastdfs_module;
      	}
      }
      
    5. 关闭防火墙或者打开端口【访问不了的原因】。

      1. #centos7启动防火墙
        systemctl start firewalld.service
        #centos7停止防火墙/关闭防火墙
        systemctl stop firewalld.service
        #centos7重启防火墙
        systemctl restart firewalld.service
        
        
        #设置开机启用防火墙
        systemctl enable firewalld.service
        #设置开机不启动防火墙
        systemctl disable firewalld.service
        
    6. 然后打开nginx 配置里设置了前缀 可以直接用 nginx 开启nginx服务器

-------------------------------------------到此,图片服务器搭建完毕。------------------------------------------------------

posted @ 2020-04-16 09:10  HK_HUST  阅读(472)  评论(0编辑  收藏  举报