zoukankan      html  css  js  c++  java
  • 分布式文件系统FastDFS 分布式安装实战

    • 安装环境: 

    fastdfs 6.04 

    nginx 1.16.1   

    两台centos 7.6   没有装过nginx

    云服务器安全组开放端口:23000、22122、8888、80、

    • 需要下载的资源官方下载地址:
    1. https://github.com/happyfish100/
    2. https://github.com/happyfish100/fastdfs/wiki
    3. https://www.cnblogs.com/leechenxiang/p/5406548.html
    4. https://www.cnblogs.com/leechenxiang/p/7089778.html
    • 自己下载的资源路径:
    1. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/fastdfs-6.04.tar.gz
    2. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/fastdfs-nginx-module-1.22.tar.gz
    3. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/libfastcommon-1.0.42.tar.gz
    4. https://apk-1257934361.cos.ap-guangzhou.myqcloud.com/FastDFS/nginx-1.16.1.tar.gz

    配置FastDFS环境准备工作 

    • Centos7.x 两台 ,分别安装tracker(服务器26)与storage(服务器44) 
    • 首先两台都需要先安装基础环境  
    1. 安装 gcc 和  libevent  
      yum install -y gcc gcc-c++
      yum -y install libevent
    2. 进入安装包目录  ,解压  libfastcommon
      tar -zxvf libfastcommon-1.0.42.tar.gz

    3.  进入libfastcommon文件夹,编译并且安装

      ./make.sh
      ./make.sh install

    4. 回到安装包目录,解压  fastdfs 

      tar -zxvf fastdfs-6.04.tar.gz

    5. 进入到fastdfs目录,编译并且安装

      cd fastdfs-6.04/
      ./make.sh
      ./make.sh install    

    6. 进入  conf 目录 ,将该目录下所有资源  ,移动到   /etc/fdfs  目录下统一管理

      cd conf/
      cp * /etc/fdfs/
      cd /etc/fdfs/


    配置tracker服务(服务器26)

    • FastDFS服务端有两个角色:跟踪器(tracker)和存储节点(storage)。跟踪器主要做调度工作,在访问上起负载均衡的作用。

    • tracker和storage都是同一个fastdfs的主程序的两个不同概念,配置不同的配置文件就可以设定为tracker或者storage
    • /etc/fdfs下都是一些配置文件,配置tracker即可
    1. 进入  fdfs 目录下  打开 tracker 配置文件 修改基础路径 .      此为tracker的工作目录,保存数据以及日志 
      cd /etc/fdfs/
      vim tracker.conf
      ------------------------------------
      base_path=/usr/local/fastdfs/tracker
      :wq

    2. 创建刚刚指定的基础路径目录

      mkdir /usr/local/fastdfs/tracker -p
      
    3.  启动  tracker 进程   ,指定刚刚配置的文件 。  然后查看进程是否启动

      /usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
      ps -ef |grep tracker


    配置storage服务 (服务器44) 

    1. 打开 storage.conf 配置文件
      cd /etc/fdfs/
      ll
      vim storage.conf

    2. 修改该storage.cond配置文件 

      # 修改组名
      group_name=qiujian
      # 修改storage的工作空间
      base_path=/usr/local/fastdfs/storage
      # 修改storage的存储空间
      store_path0=/usr/local/fastdfs/storage
      # 修改tracker的地址和端口号,用于心跳
      tracker_server=你的trackerIP地址:22122
      
      -------------------------------------
      :wq

    3.  保存后,创建刚刚配置的目录  

      mkdir /usr/local/fastdfs/storage -p
      
    4.  启动  storage 服务 (前提要先打开 tracker ,不然无法发送心跳)

      /usr/bin/fdfs_storaged /etc/fdfs/storage.conf
      ps -ef|grep storage
      

    5. 修改的client配置文件  

      vim /etc/fdfs/client.conf
      
      base_path=/usr/local/fastdfs/client
      tracker_server=你的trackerIP地址:22122
      
      ---------------------------------------
      :wq

    6. 创建刚刚配置client 的路径

      mkdir /usr/local/fastdfs/client
    7. 测试上传文件  ,首先移动到安装包目录下  下载一张图片  然后执行上传命令  。下图为成功上传图

      cd 你的安装包目录
      
      wget https://www.baidu.com/img/pc_906bd0e6235b67bd693484209bb70b29.gif
      
      /usr/bin/fdfs_test /etc/fdfs/client.conf upload /刚刚下载图片的目录/pc_906bd0e6235b67bd693484209bb70b29.gif


    配置 nginx fastdfs 实现文件服务器

    • fastdfs安装好以后是无法通过http访问的,这个时候就需要借助nginx了,所以需要安装fastdfs的第三方模块到nginx中,就能使用了。
    • 注:nginx需要和storage在同一个节点。
    1. 安装Nginx 插件  解压nginx的fastdfs压缩包
      tar -zxvf fastdfs-nginx-module-1.22.tar.gz
      
    2. 进入到 nginx module  的 conf 目录  复制配置文件到   /etc/fdfs  进行统一管理

      cd /qiujian/fastdfs-nginx-module-1.22/src/
      
      cp mod_fastdfs.conf /etc/fdfs

    3. 在当前目录下,修改   config文件,主要是修改路径,把local删除,因为fastdfs安装的时候我们没有修改路径,原路径是/usr

      vim config
      
      ngx_module_incs="/usr/include"
      
      CORE_INCS="$CORE_INCS /usr/include"
      
      -----------------------------------
      :wq

    4. Nginx  普通安装,在这篇文章写的很清楚了

      https://blog.csdn.net/publicv/article/details/103751068
    5. 这边安装Nginx 只讲述和普通安装Nginx 的区别之处

      yum install gcc-c++
      yum install -y pcre pcre-devel
      yum install -y zlib zlib-devel
      yum install -y openssl openssl-devel
      tar -zxvf nginx-1.16.1.tar.gz
      mkdir /var/temp/nginx -p

    6. 移动到  fastdfs 插件的 src 目录 ,pwd 复制  。然后在返回到  解压 nginx 目录下 。 配置nginx 目录

      1:复制 刚刚安装nginx 插件的src 目录
      2:然后在返回到  解压好的  nginx 目录下
      ./configure 
      --prefix=/usr/local/nginx 
      --pid-path=/var/run/nginx/nginx.pid 
      --lock-path=/var/lock/nginx.lock 
      --error-log-path=/var/log/nginx/error.log 
      --http-log-path=/var/log/nginx/access.log 
      --with-http_gzip_static_module 
      --http-client-body-temp-path=/var/temp/nginx/client 
      --http-proxy-temp-path=/var/temp/nginx/proxy 
      --http-fastcgi-temp-path=/var/temp/nginx/fastcgi 
      --http-uwsgi-temp-path=/var/temp/nginx/uwsgi 
      --http-scgi-temp-path=/var/temp/nginx/scgi 
      --add-module=这边写的路径目录是刚刚安装nginx的fastdfs插件的 src目录

    7. 编译 安装

      make
      make install
    8. 修改 mod_fastdfs.conf 配置文件:

      cd /etc/fdfs/
      
      vim mod_fastdfs.conf
      
      base_path=/usr/local/fastdfs/tmp
      tracker_server=你的trackerIP地址:22122
      group_name=qiujian
      url_have_group_name = true
      store0_path=/usr/local/fastdfs/storage

    9. 将刚刚指定的  tmp 目录进行创建

      mkdir /usr/local/fastdfs/tmp
    10. 修改nginx.conf,添加如下虚拟主机:  这边是修改好的  ,整个nginx 配置文件  。新增了 8888 配置映射我们的图片

      /usr/local/nginx/conf
      vim nginx.conf
      
      worker_processes  1;
      
      events {
          worker_connections  1024;
      }
      
      
      http {
          include       mime.types;
          default_type  application/octet-stream;
      
          sendfile        on;
          keepalive_timeout  65;
          server {
              listen       80;
              server_name  localhost;
      
              #charset koi8-r;
      
              #access_log  logs/host.access.log  main;
      
              location / {
                  root   html;
                  index  index.html index.htm;
              }
              error_page   500 502 503 504  /50x.html;
              location = /50x.html {
                  root   html;
              }
          }
          server {
      	    listen       8888;
      	    server_name  localhost;
      
      	    location /qiujian/M00 {
      		    ngx_fastdfs_module;
      	    }
      
          }
      
      
      }
      
    11. 启动nginx  ,然后移动到我们图片保存的目录下 。找一张图片进行查看  。 成功图如下

      /usr/local/nginx/sbin/nginx
      
      
      cd /usr/local/fastdfs/storage/data/00/00
      ll

      访问地址: 

      http://nginx下IP:8888/qiujian/M00/00/00/在00下的图片名

     

  • 相关阅读:
    简单svg动画
    如何开发jQuery插件
    Nodejs的模块系统以及require的机制
    Nodejs的http模块
    DOM详解
    利用powershell进行远程服务器管理(命令行模式)
    关于storm群集容错概念的简单介绍
    powershell利用winform批量执行tsql语句
    nginx往后端转发时需要注意的两个问题
    解决hyerv的linux虚拟机网卡地址重启发生变化的问题
  • 原文地址:https://www.cnblogs.com/blogspring/p/14191747.html
Copyright © 2011-2022 走看看