• FastDFS集群搭建


    一、架构

      共有2台机器:

      机器A:192.168.126.134  角色:tracker/storage

      机器B:192.168.126.135  角色:tracker/storage

    二、安装步骤:

      1、环境准备(需要什么命令就下载什么,全部下载比较费时间)(在2台机器分别操作)

        yum install -y make cmake gcc gcc-c++ openssl openssl-devel pcre-devel zlib zlib-devel  

        如果出现以下错误:

         先执行下面这3个命令,

          sed -i "s|enabled=1|enabled=0|g" /etc/yum/pluginconf.d/fastestmirror.conf
          mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.bak
             curl -o /etc/yum.repos.d/CentOS-Base.repo https://www.xmpan.com/Centos-6-Vault-Aliyun.repo
        然后重新执行 

          yum install make cmake gcc gcc-c++ perl

        注意:如果是离线安装,请执行以下操作:   

          安装zlib库安装
            tar -zxvf zlib-1.2.5.tar.gz
            cd zlib-1.2.5
            ./configure
            make
            makeinstall

          安装pcre库安装
            tar –zxvf pcre-8.21.tar.gz,解压目录为:pcre-8.21
            cd pcre-8.21
            ./configure或./config
            make
            make install

        2、安装libfastcommon(在2台机器分别操作)

          准备一个目录,将需要的安装包放到该目录下,我习惯放在 /home/soft

            

          先解压 libfastcommon

            tar -zxvf libfastcommon-1.0.38.tar.gz

          然后进入 libcommon

            cd libfastcommon-1.0.38

          编译

            ./make.sh

          安装

            ./make.sh install

         3、安装FastDFS(2台机器都要执行)

          先解压 fastdfs

            tar -zxvf fastdfs-5.11.tar.gz

          进入fastdfs

            cd fastdfs-5.11

          编译

            ./make.sh

          安装

            ./make.sh install

          将 tracker、storage、client 的配置文件后缀名去掉    

            cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf     #tracker节点

            cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf   #storage节点  

            cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf     #客户端文件,测试用

          把 http.conf 和 mime.types 拷贝到/etc/fdfs目录下

            cp /home/soft/fastdfs-5.11/conf/http.conf /etc/fdfs/     #供nginx访问使用

            cp /home/soft/fastdfs-5.11/conf/mime.types /etc/fdfs/   #供nginx访问使用

          tracker server配置:

            vi /etc/fdfs/tracker.conf

          需要修改的内容:

            base_path=/home/fastdfs/tracker  # 存储日志和数据的根目录

          启动服务前先手动创建刚才配置文件指定的目录

            mkdir -p /home/fastdfs/tracker

          启动 tracker 服务

            fdfs_trackerd /etc/fdfs/tracker.conf       

          查看 tracker 服务

            ps -ef | grep fdfs

        

           storage server配置:

            vim /etc/fdfs/storage.conf    

            需要修改的内容如下

              port=23000 # storage服务端口(默认23000,一般不修改)

              base_path=/home/fastdfs/storage # 数据和日志文件存储根目录

              store_path0=/data/fastdfs/files # 第一个存储目录

              tracker_server=192.168.126.134:22122 # tracker服务器IP和端口

              tracker_server=192.168.126.135:22122 # tracker服务器IP和端口

              http.server_port=8888 # http访问文件的端口(默认8888,看情况修改,和nginx中保持一致)

            服务启动前先收到创建storage配置文件中指定得目录,且需要关闭防火墙

              mkdir -p /home/fastdfs/storage

              mkdir -p /home/fastdfs/files

              service iptables stop  #关闭防火墙

            启动storage服务

              fdfs_storaged /etc/fdfs/storage.conf

            查看服务:    

              netstat - tulnp  

            如果服务没起来,去目录 /home/fastdfs/storage/logs 下查看日志,一般都是忘了创建目录或者防火墙没关:

        查看集群状态(状态为ACTIVE):

          fdfs_monitor /etc/fdfs/storage.conf list  

         client 配置修改:

          vim /etc/fdfs/client.conf

        需要修改的内容如下

          base_path=/home/fastdfs/client

          tracker_server=192.168.126.134:22122   # tracker服务器IP和端口

          tracker_server=192.168.126.135:22122   # tracker服务器IP和端口

        创建 client 配置文件中指定的目录:

          mkdir -p /home/fastdfs/client

        至此,fastdfs集群已完成,我们来上传个图片测试一下...(注意:这里要在图片所在目录下才能上传成功,否则会报错!)

          fdfs_test /etc/fdfs/client.conf upload dog.jfif  

           去服务器上打开存储目录看一下(同一个组的文件会自动同步):   

         可以看到,图片已经上传成功,但是我们想通过浏览器打开访问图片,因此接下来继续安装nginx(2台机器都要执行):

       4、安装nginx和fastdfs-nginx-module(在2台机器上分别操作)

        先解压 nginx-module

          cd /home/soft

          tar -zxvf fastdfs-nginx-module-1.20.tar.gz

        编辑 nginx-module 的 config 文件:

          cd /home/soft/fastdfs-nginx-module-1.20/src

        修改以下内容:

          ngx_module_incs="/usr/include/fastdfs /usr/include/fastcommon/"
          CORE_INCS="$CORE_INCS /usr/include/fastdfs /usr/include/fastcommon/"

        配置nginx:

          cd /home/soft/nginx-1.15.2

          ./configure --prefix=/usr/local/nginx_fdfs --add-module=/home/soft/fastdfs-nginx-module-1.20/src

        编译

          make

        安装

          make install

        看到/usr/local下有nginx_fdfs表示安装成功!

        切换到 /home/soft/fastdfs-nginx-module-1.20/src 修改文件 mod_fastdfs.conf

          cd /home/soft/fastdfs-nginx-module-1.20/src

          vi mod_fastdfs.conf

          修改以下内容:    

            base_path=/home/fastdfs/files
            url_have_group_name = true
            tracker_server=192.168.126.134:22122

            tracker_server=192.168.126.135:22122
            store_path0=/home/fastdfs/files

        将mod_fastdfs.conf 复制到/etc/fdfs下:

          cp mod_fastdfs.conf /etc/fdfs/

        修改文件nginx.conf配置:

          cd /usr/local/nginx_fdfs/conf

          vi nginx.conf

          增加以下内容:  

            location ~ /group[0-9]/M0[0-9] {
              ngx_fastdfs_module;
            }

        修改访问 root 权限:

          cd /usr/local/nginx_fdfs/conf

          vi nginx.config 需改为root访问

            #user nobody;

            user root;

        重要:记得修改nginx 监听端口(默认是80),避免与tomcat冲突,我这里修改为 81

          listen  81;

          现在可以启动 nginx:

          /usr/local/nginx_fdfs/sbin/nginx -c /usr/local/nginx_fdfs/conf/nginx.conf -t

          /usr/local/nginx_fdfs/sbin/nginx -c /usr/local/nginx_fdfs/conf/nginx.conf

        查看nginx(启动成功会有2个进程,没有worker 进程就是启动失败,具体去看日志 /usr/local/nginx_fdfs/logs,一般也是路径不存在报错):

          ps -ef | grep nginx

         浏览器访问测试: 

  • 相关阅读:
    选择排序--简单(c语言)
    冒泡排序--简单(c++)
    冒泡排序--简单(c语言)
    直接插入排序--简单(c++)
    Microsoft Azure File 服务简介
    【 D3.js 选择集与数据详解 — 1 】 使用datum()绑定数据
    物联网操作系统HelloX V1.77(beta)版本发布
    对XX证券报关于物联网操作系统的几个问题的答复
    使用 Azure Site Recovery 将内部部署虚拟化工作负荷迁移至 Azure
    使用 Azure Site Recovery 灾难恢复至 Azure 的功能现已正式发布
  • 原文地址:https://www.cnblogs.com/bug-baba/p/15093768.html
Copyright © 2020-2023  润新知