ICode9

精准搜索请尝试: 精确搜索
首页 > 系统相关> 文章详细

基于centos7.9安装FastDFS分布式文件系统

2021-06-04 16:04:59  阅读:276  来源: 互联网

标签:nginx fastdfs etc FastDFS centos7.9 tracker conf 分布式文件系统 fdfs


参考文档:
FastDFS 分布式文件系统详解
FASTDFS简书
FASTDFS官方文档

编译环境准备

yum install git gcc gcc-c++ make automake autoconf libtool pcre pcre-devel zlib zlib-devel openssl-devel wget vim -y

在这里插入图片描述

磁盘目录准备以及安装

mkdir /home/dfs #创建数据存储目录
cd /usr/local/src #切换到安装目录准备下载安装包

  • 安装libfastcommon
    git clone https://github.com/happyfish100/libfastcommon.git --depth 1
    cd libfastcommon/
    ./make.sh && ./make.sh install #编译安装

github克隆太慢怎么办???

  • 安装FastDFS
    cd /usr/local/src
    git clone https://github.com/happyfish100/fastdfs.git --depth 1
    cd fastdfs/
    ./make.sh && ./make.sh install #编译安装
    #配置文件准备
    cp /usr/local/src/fastdfs/conf/http.conf /etc/fdfs/ #供nginx访问使用
    cp /usr/local/src/fastdfs/conf/mime.types /etc/fdfs/ #供nginx访问使用
    #tracker.conf storage.conf client.conf 默认已经有,没有的话执行下面三个命令
    cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
    cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
    cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf #客户端文件,测试用

  • 安装fastdfs-nginx-module
    cd /usr/local/src
    git clone https://github.com/happyfish100/fastdfs-nginx-module.git --depth 1
    #不用make
    cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs

  • 安装nginx
    cd /usr/local/src
    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/src/fastdfs-nginx-module/src/
    make && make install #编译安装

因为我使用宝塔系统,已经安装了nginx,没有执行安装nginx这一步,可以在安装完fastdfs-nginx-module之后,使用宝塔把nginx卸载掉(有重要配置请备份),重新安装一次,安装时选择编译安装添加
--add-module=/usr/local/src/fastdfs-nginx-module/src/
在这里插入图片描述

单机部署配置

根据命令 ifconfig 获取本机ip

在这里插入图片描述

  • tracker配置
    #服务器ip为 上图inet,文章用 192.168.1.1做示例
    vim /etc/fdfs/tracker.conf
    #需要修改的内容如下
    port=22122 # tracker服务器端口(默认22122,一般不修改)
    base_path=/home/dfs # 存储日志和数据的根目录

  • storage配置

  • vim /etc/fdfs/storage.conf
    #需要修改的内容如下
    port=23000 # storage服务端口(默认23000,一般不修改)
    base_path=/home/dfs # 数据和日志文件存储根目录
    store_path0=/home/dfs # 第一个存储目录
    tracker_server=192.168.1.1:22122 # tracker服务器IP和端口,有多个添加多个
    http.server_port=82 # http访问文件的端口(默认8888,看情况修改,和nginx中保持一致。注意,宝塔系统的端口也为8888,所以改为82)

  • client测试
    #启动程序trackerd和storaged
    fdfs_trackerd /etc/fdfs/tracker.conf restart
    fdfs_storaged /etc/fdfs/storage.conf restart
    vim /etc/fdfs/client.conf
    #需要修改的内容如下
    base_path=/home/dfs
    tracker_server=192.168.1.1:22122 #tracker服务器IP和端口
    #保存后测试,上传预先准备的文件,返回ID表示成功 如:group1/M00/00/00/xxx.jpg
    fdfs_upload_file /etc/fdfs/client.conf /usr/local/src/test.jpg
    在这里插入图片描述

  • 配置nginx访问

vim /etc/fdfs/mod_fastdfs.conf
#需要修改的内容如下
tracker_server=192.168.1.1:22122 #tracker服务器IP和端口
url_have_group_name=true
store_path0=/home/dfs
#配置nginx.config,以下是我本地路径
vim /usr/local/nginx/conf/nginx.conf
#添加如下配置

server {
    listen       82;    ## 该端口为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;
    }
}

#测试下载,用外部浏览器访问刚才已传过的test图片,能显示图片表示部署成功(注意在防火墙已开通端口)

在这里插入图片描述

分布式部署

分布式部署,主要修改每台服务的其中两个配置
假设有192.168.1.1,192.168.1.2,192.168.1.3,且都完成了单机部署

  • storage配置
    vim /etc/fdfs/storage.conf
    #需要修改的内容如下
    tracker_server=192.168.1.1:22122 # 服务器1
    tracker_server=192.168.1.2:22122 # 服务器2
    tracker_server=192.168.1.3:22122 # 服务器3
    `
  • nginx配置
    vim /etc/fdfs/mod_fastdfs.conf
    #需要修改的内容如下
    tracker_server=192.168.52.2:22122 # 服务器1
    tracker_server=192.168.52.3:22122 # 服务器2
    tracker_server=192.168.52.4:22122 # 服务器3
    url_have_group_name=true
    store_path0=/home/dfs
    #配置nginx.config
    vim /usr/local/nginx/conf/nginx.conf
    #添加如下配置
server {
    listen       82;    ## 该端口为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,fastdfs,etc,FastDFS,centos7.9,tracker,conf,分布式文件系统,fdfs
来源: https://blog.csdn.net/qq_35141640/article/details/117550831

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有