• CentOS7 安装FastDFS分布式文件系统


    CentOS7 安装FastDFS分布式文件系统

    最近要用到fastDFS,所以自己研究了一下,在搭建FastDFS的过程中遇到过很多的问题,为了能帮忙到以后搭建FastDFS的同学,少走弯路,与大家分享一下。FastDFS的作者淘宝资深架构余庆,这个优秀的轻量及的分布式文件系统的开源没多久,立马就火了。

    FastDFS是为互联网应用量身定做的一套分布式文件存储系统,非常适合用来存储用户图片、视频、文档等文件

    版本介绍

    系统:centos7.4

    fastdfs-6.06.tar.gz

    libfastcommon-1.0.43.tar.gz 

    fastdfs-nginx-module-1.22.tar.gz

    nginx-1.17.7.tar.gz

    一.FastDFS搭建工具下载

    作者的GitHub地址:https://github.com/happyfish100

    下载地址:

    nginx地址

    二:使用 wget 命令下载压缩包,如果没有 wget 命令使用 yum 命令安装

    yum install wget

    三:下载 fastdfs

    wget -c "https://github.com/happyfish100/fastdfs/archive/V6.06.tar.gz" 
    -O fastdfs-6.06.tar.gz

    四:下载 libfastcommon

    wget -c "https://github.com/happyfish100/libfastcommon/archive/V1.0.43.tar.gz" 
    -O libfastcommon-1.0.43.tar.gz

    五:下载 fastdfs-nginx-module

    wget -c "https://github.com/happyfish100/fastdfs-nginx-module/archive/V1.22.tar.gz" 
    -O fastdfs-nginx-module-1.22.tar.gz

    六:下载 nginx

    wget -c http://nginx.org/download/nginx-1.17.7.tar.gz

    七:安装编译工具及库文件

    yum -y install make zlib zlib-devel gcc-c++ libtool  openssl openssl-devel

    八:测试环境关闭防火墙

    systemctl stop firewalld.service

    九:开机禁用防火墙

    systemctl disable firewalld.service

    十:查看防火墙状态

    firewall-cmd --state

    十一:解压下载好的包

    tar -zxvf fastdfs-6.06.tar.gz
    tar -zxvf fastdfs-nginx-module-1.22.tar.gz
    tar -zxvf libfastcommon-1.0.43.tar.gz
    tar -zxvf nginx-1.17.7.tar.gz

    十二:编译安装 libfastcommon

    1、进入解压后的目录

    # cd /opt/softwares/libfastcommon-1.0.43

    2、编译安装

    # ./make.sh && ./make.sh install

    3、检查

    ls /usr/lib64|grep libfastcommon
    ls /usr/lib|grep libfastcommon

    出现libfastcommon.so即成功

    十三:编译安装 fastdfs

    1、进入解压后的目录

    # cd /opt/softwares/fastdfs-6.06

    2、编译安装

    # ./make.sh && ./make.sh install

    3、检查

    # ls /usr/bin|grep fdfs

    4、启用配置文件

    cd /etc/fdfs/
    cp storage.conf.sample storage.conf
    cp client.conf.sample client.conf
    cp tracker.conf.sample tracker.conf
    mkdir -p /fastdfs/tracker

    5、修改 tracker.conf 文件

    vim /etc/fdfs/tracker.conf
    base_path = /fastdfs/tracker

    6、启动 tracker 服务

    /etc/init.d/fdfs_trackerd start

    7、检查服务是否启动

    ps -ef|grep fdfs

    8、修改 storage.conf 文件

    vim /etc/fdfs/storage.conf
    base_path = /fastdfs/storage
    store_path0 = /fastdfs/storage
    tracker_server = 192.168.0.179:22122
    http.server_port = 80

    9、创建目录

    mkdir -p /fastdfs/storage

    10、启动 storage 服务

    /etc/init.d/fdfs_storaged start

    11、设置开机启动

    vim /etc/rc.d/rc.local

    加入配置

    /etc/init.d/fdfs_trackerd start
    /etc/init.d/fdfs_storaged start

    12、编辑 client.conf 文件

    vim /etc/fdfs/client.conf

    修改

    base_path = /fastdfs/tracker
    tracker_server=192.168.0.179:22122

    十四:安装 nginx 和 fastdfs-nginx-module

    1、安装pcre

    yum -y install pcre pcre-devel

    2、进入解压目录

    cd /opt/softwares/nginx-1.17.7

    3、添加 http_stub_status_module 模块

    ./configure --prefix=/usr/local/nginx --with-http_stub_status_module

    4、进入 /opt/softwares/fastdfs-nginx-module-1.22/src/

    cd /opt/softwares/fastdfs-nginx-module-1.22/src

    5、编辑配置文件

    vim config

    6、将config文件中的/usr/local替换成/usr

    :%s+/usr/local+/usr

    7、进入 nginx 解压目录

    cd /opt/softwares/nginx-1.17.7

    8、添加fastdfs-nginx-module

    ./configure --add-module=/opt/softwares/fastdfs-nginx-module-1.22/src/

    9、编译安装

    make && make install

    10、复制并修改fastdfs-ngin-module中的配置文件

    cp /opt/softwares/fastdfs-nginx-module-1.22/src/mod_fastdfs.conf /etc/fdfs/
    vim /etc/fdfs/mod_fastdfs.conf

    修改配置

    connect_timeout=10
    tracker_server=192.168.0.179:22122
    url_have_group_name = true
    store_path0=/fastdfs/storage

    11、进入fastdfd源码conf目录

    cd /opt/softwares/fastdfs-6.06/conf

    12、将http.conf,mime.types两个文件拷贝到/etc/fdfs/目录下

    cp http.conf mime.types /etc/fdfs/

    13、创建一个软连接,在/fastdfs/storage文件存储目录下创建软连接,将其链接到实际存放数据 的目录

    ln -s /fastdfs/storage/data/ /fastdfs/storage/data/M00

    14、编辑 nginx 配置

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

    修改配置

    server {
        listen       80;
        server_name  192.168.0.179;
        location ~/group([0-9])/M00 {
                root  /fastdfs/storage/data;
                ngx_fastdfs_module;
        }
    }

    15、启动 nginx

    /usr/local/nginx/sbin/nginx

    测试

    1、下载测试图片到本地

    wget -c "https://t.ki4.cn/2019/10/zau26v.jpg" -O springboot.jpg

    2、上传测试图片

    /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /opt/softwares/fastdfs-6.06/conf/springboot.jpg

    得到返回文件名

    group1/M00/00/00/wKgAs17MHPaAa5inAACumtGPxf4201.jpg

    与ip拼接:http://192.168.0.179/group1/M00/00/00/wKgAs17MHPaAa5inAACumtGPxf4201.jpg

    原文地址:https://developer.aliyun.com/article/745317

    =======================================================================================

    微信公众号:

  • 相关阅读:
    数据库主从同步相关问题
    前端使用node.js的http-server开启一个本地服务器
    css中height 100vh的应用场景,动态高度百分比布局,浏览器视区大小单位
    通过浏览器F12开发工具快速获取别的网站前端代码的方法
    vue打包app嵌入h5,区分app进入和android,ios显示不同的下载链接
    vue实现验证码倒计时60秒的具体代码
    vue用hbuilderX打包app嵌入h5方式云打包和遇到的问题
    Cookie写不进去问题深入调查 https Secure Cookie
    vue配置手机通过IP访问电脑开发环境
    区块链名词解析:ICO、IFO、IEO和IMO,分别是什么呢?
  • 原文地址:https://www.cnblogs.com/lr393993507/p/10309164.html
Copyright © 2020-2023  润新知