• fastDFS单节点部署(2台服务器)


    1、安装前说明
    本次安装全程在root用户下进行
    安装环境及相关软件版本如下:
    在这里插入图片描述
    PS:本次试验服务器在外网环境,如果是内网环境不能连接外网,需要在服务器配置本地yum源,并下载好相关软件

    libfastcommon下载地址:https://sourceforge.net/projects/libfastcommon/
    fastDFS下载地址:https://sourceforge.net/projects/fastdfs/
    nginx下载地址:http://nginx.org/download/
    fastdfs-nginx-module下载地址:https://sourceforge.net/projects/fastdfs/files/FastDFS%20Nginx%20Module%20Source%20Code/

    2、编译环境准备(tracker和storage服务器都执行)
    如果是内网环境,需要先配置本地yum源才能执行,否则报错

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

    3、磁盘目录
    所有安装包存储位置:/usr/local/src
    数据存储位置:/home/fastdfs

    #创建文件夹
    mkdir /home/fastdfs
    mkdir /home/fastdfs/tracker  #存放tracker数据和日志
    mkdir /home/fastdfs/storage  #存放storage数据和日志
    
    • 1
    • 2
    • 3
    • 4

    4、下载安装libfastcommon(tracker和storage服务器都执行)

    #进入安装包目录
    cd /usr/local/src
    #下载libfastcommon压缩包
    wget https://github.com/happyfish100/libfastcommon/archive/V1.0.7.tar.gz
    #重命名(此步可以跳过)
    mv V1.0.7 libfastcommon-1.0.7.tar.gz
    #解压
    tar -zxvf libfastcommon-1.0.7.tar.gz
    #进入解压后目录
    cd libfastcommon-1.0.7/
    #编译并且安装
    ./make.sh && ./make.sh install
    #libfastcommon安装好后会自动将库文件拷贝至/usr/lib64下,由于FastDFS程序引用usr/lib目录所以需要将/usr/lib64下的库文件拷贝至/usr/lib下
    cp /usr/lib64/libfastcommon.so /usr/lib/
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14

    5、下载安装fastDFS(tracker和storage服务器都执行)

    #进入安装包目录
    cd /usr/local/src
    #下载fastdfs压缩包
    wget https://github.com/happyfish100/fastdfs/archive/V5.05.tar.gz
    #重命名(此步可跳过)
    mv V5.05 FastDFS_v5.05.tar.gz
    #解压
    tar -zxvf FastDFS_v5.05.tar.gz 
    #进入解压后目录
    cd fastdfs-5.05/
    #编译安装
    ./make.sh && ./make.sh install #编译安装
    #拷贝配置文件
    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 #客户端文件,测试用
    cp /usr/local/src/fastdfs-5.05/conf/http.conf /etc/fdfs/  #供nginx访问使用
    cp /usr/local/src/fastdfs-5.05/conf/mime.types /etc/fdfs/ #供nginx访问使用
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18

    6、配置tracker服务器并启动服务

    #修改tracker.conf配置命令
    vim /etc/fdfs/tracker.conf
    #需修改内容如下
    port=22122  #tracker服务器端口(默认22122,一般不修改)
    base_path=/home/fastdfs/tracker  #tracker数据文件和日志存储根目录
    
    #拷贝相关文件,否则下面的启动命令报错
    cp /usr/bin/fdfs_trackerd /usr/local/bin/fdfs_trackerd
    cp /usr/bin/stop.sh /usr/local/bin/stop.sh
    cp /usr/bin/restart.sh /usr/local/bin/restart.sh
    #启动tracker
    service fdfs_trackerd start  #启动命令
    service fdfs_trackerd restart  #重启命令(不需要执行)
    service fdfs_trackerd stop  #停止命令(不需要执行)
    #查看fdfs进程是否成功启动
    ps -ahx|grep fdfs
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    7、配置storage服务器并启动服务

    #修改storage.conf配置命令
    vim /etc/fdfs/storage.conf
    #需要修改的内容如下
    port=23000  #storage服务端口(默认23000,一般不修改)
    base_path=/home/fastdfs/storage  #storage数据文件和日志存储根目录
    store_path0=/home/fastdfs/storage  #实际文件存储路径
    tracker_server=192.168.56.107:22122  #tracker服务器IP和端口
    http.server_port=8888  #http访问文件的端口(默认8888,看情况修改,和nginx中保持一致)
    
    #拷贝相关文件,否则下面的启动命令报错
    cp /usr/bin/fdfs_storaged /usr/local/bin/fdfs_storaged
    cp /usr/bin/stop.sh /usr/local/bin/stop.sh
    cp /usr/bin/restart.sh /usr/local/bin/restart.sh
    #启动storage
    service fdfs_storaged start #启动命令
    service fdfs_storaged restart #重启命令(不需要执行)
    service fdfs_storaged stop #停止命令(不需要执行)
    #查看fdfs进程是否成功启动
    ps -ahx|grep fdfs
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    8、client客户端测试(tracker服务上执行)

    #修改client.conf命令
    vim /etc/fdfs/client.conf
    #需要修改的内容如下
    base_path=/home/fastdfs/tracker  #tracker服务器文件路径
    tracker_server=192.168.56.107:22122   #tracker服务器IP和端口
    
    #生成一个文件
    echo asasasa > ~/test.txt
    #测试,返回ID表示成功 如:group1/M00/00/00/xx.txt
    fdfs_test /etc/fdfs/client.conf upload ~/test.txt
    #保存返回的地址,用于第12步的测试,如:http://192.168.56.108/group1/M00/00/00/wKgaaGNSDvSAQIUlAAAACE6c2W4470_big.txt
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11

    如果需要通过http请求访问已上传的文件,则需要继续进行下面的操作
    9、下载安装fastdfs-nginx-module(storage服务器执行)

    #进入安装包目录
    cd /usr/local/src
    #下载fastdfs-nginx-module压缩包
    wget http://jaist.dl.sourceforge.NET/project/fastdfs/FastDFS%20Nginx%20Module%20Source%20Code/fastdfs-nginx-module_v1.16.tar.gz
    #解压 
    tar -zxvf fastdfs-nginx-module_v1.16.tar.gz 
    #拷贝配置文件
    cp /usr/local/src/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    10、下载安装nginx(storage服务器执行)

    #进入安装包目录
    cd /usr/local/src
    #下载nginx压缩包
    wget http://nginx.org/download/nginx-1.11.8.tar.gz
    #解压nginx压缩包
    tar -zxvf nginx-1.11.8.tar.gz
    #进入解压后目录
    cd nginx-1.11.8/
    #添加fastdfs-nginx-module模块
    ./configure --add-module=/usr/local/src/fastdfs-nginx-module/src/
    #建立软连接
    ln -s /usr/include/fast* /usr/local/include/
    #编译安装
    make && make install
    #查看nginx编译模块情况,看是否有fastdfs-nginx-module模块,没有的话后面启动会报错
    ./nginx -V
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16

    11、配置nginx,可通过http访问

    #修改mod_fastdfs.conf配置命令
    vim /etc/fdfs/mod_fastdfs.conf
    #需要修改的内容如下
    tracker_server=192.168.56.107:22122  #tracker服务器IP以及端口号
    url_have_group_name=true             #http路径中有group名称
    store_path0=/home/fastdfs/storage   #服务器中建立的存储实际文件的存储路径
    
    #修改nginx.config配置命令
    vim /usr/local/nginx/conf/nginx.conf
    #修改内容如下
    #(1)将pid前面的#去掉,并将地址改成正确的
    pid     /usr/local/nginx/logs/nginx.pid;
    #(2)将sever内容修改如下
    server {
           listen       8888; #该端口与storage.conf中的http.server_port相同
           server_name  localhost;
           
           location /group1/M00 {
                root    /usr/local/fastdfs/storage/data;
        		ngx_fastdfs_module;
           }
           
           error_page   500 502 503 504  /50x.html;
           location = /50x.html {
           root   html;
           }
       }
       
    #查看/usr/local/nginx/logs/nginx.pid文件是否存在,如果不存在则新建一个
    touch /usr/local/nginx/logs/nginx.pid  #新建pid
    #建立M00至storage存储目录的符号连接
    ln -s /home/fastdfs/storage/data/ /home/fastdfs/storage/data/M00
    #启动nginx
    cd /usr/local/nginx/sbin  #进入目录 
    ./nginx            #启动命令
    ./nginx -s reload  #重启命令
    ./nginx -s stop    #停止命令
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38

    12、用浏览器访问刚才步骤8中测试上传的文件(记得加上端口号)

    http://192.168.56.108:8888/group1/M00/00/00/wKgaaGNSDvSAQIUlAAAACE6c2W4470_big.txt
    
    • 1
  • 相关阅读:
    我3年前写的博客,又被别人抄去发论文了,该论文整个正文部分几乎直接照抄我的博客
    A-Level经济例题解析及练习Analysis of trade
    地理信息系统原理重点整理
    js-array-数组-其他方法
    evm 代码分析
    大一学生网页课程作业 南京介绍网页设计 学生家乡网页设计作品静态 HTML网页模板源码 html我的家乡网页作业
    R语言绘制分组方框图三
    计算机毕业设计SSM电竞资讯网站【附源码数据库】
    Ubuntu24.04 LTS安装中文输入法
    R 语言 基于关联规则与聚类分析的消费行为统计
  • 原文地址:https://blog.csdn.net/cc_0101/article/details/127421211