最终效果

初始化为6个节点

在/usr/local/software 目录下上传需要用到tar包,分别在各个节点上传

使用scp 将本地software目录复制到其他节点上

73、74为 tracker集群,其他为storage集群

其中13对应15,16

其中14对应17,18

------------------------------------------------------------------------------------------------------

一、安装软件部分,6台机器同时进行安装

  1.安装 gccyum install make cmake gcc gcc-c 

  2.安装libfastcommon 包

    上传libfastcommon-master.zip到/usr/local/software下

    unzip libfastcommon-master.zip -d /usr/local/fast/

    cd /usr/local/fast/libfastcomon-master/ 进行安装编译

    ./make.sh

    ./make.sh install

    

    FastDFS主程序设置的目录为/usr/local/lib/,所以我们需要创建/usr/lib64/下的一些核心执行程序的软连接文件。

    mkdir /usr/local/lib

    ln -s /usr/lib64/libfastcommon.so /usr/lib/libfastcommon.so

    ln -s /usr/lib64/libfdfsclient.so /usr/local/lib/libfdfsclient.so

    ln -s /usr/lib64/libfdfsclient.so /usr/lib/libfdfsclient.so

  3.安装FastDFS系统

    cd /usr/local/software 解压 FastDFS_v5.05.tar.gz 文件

    cd /usr/local/software

    tar -zxvf FastDFS_v5.05.tar.gz  -C /usr/local/fast

    解压后进行安装编译

    cd /usr/local/fast/FastDFS

    ./make.sh

    ./make.sh install

    

      fastDFS的配置文件在 /etc/fdfs/ 目录下 其中有三个文件 客户端,storaged以及tracker文件

    因为FastDFS服务脚本设置的bin目录为 /usr/local/bin下,实际安装如上图在 /usr/bin下,所以修改

    FastDFS配置文件中的路径,需要修改两个配置文件 /etc/init.d/fdfs_storaged 和 fdfs_trackerd文件

    vim打开两个配置文件 执行 %s+/usr/local/bin+/usr/bin,其中所有节点都进行此项操作

    

    

二、进行两个 tracker 的配置 两个tracker服务器同时进行

  1.进入到etc目录下的fastdfs配置文件夹中,共有三个文件

    cd /etc/fdfs 

    

  2.修改tracker配置文件,修改conf文件

    cp tracker.conf.sample tracker.conf

    vim tracker.conf

      修改属性 base_path=/fastdfs/tracker

      store_lookup = 0

       0 轮询上传文件

       1 固定上传1个group 为 store_group 指定group

       2 负载均衡上传,谁空闲大上传谁

   3.启动跟踪器

    mkdier -p /fastdfs/tracker 对应上面配置的 base_path

    cd /fastdfs/tracker/ && ll

      没有文件 total 0

    /etc/init.d/fdfs_trackerd start 启动命令 / stop 停止命令

    /etc/init.d/fdfs_tracker

    查看进程

      ps -ef | grep fdfs / netstat -tunp | grep fdfs

    查看log后100行数据

      tail -f n 100 /fastdfs/tracker/logs/trackerd.log

三、四台机器分别配置存储节点storaged

  1.修改storage.conf文件

    cd /etc/fdfs

    cp storage.conf.sample storage.conf

    vim storage.conf

    115,116为1组 group1, 117和118为1组 group2 编辑文件内容如下:

      disabled=false  启用配置文件

      group_name=group1  组名 第一组group1 第二组group2

      Port=23000  storage 端口号 同一个storage端口号必须相同

      base_path=/fastdfs/storage  设置log存储路径

      store_path_count=1  设置存储路径个数

      store_path0=/fastdfs/storage  设置存储路径

      tracker_server=tracker1IP:22122  tracker服务器ip地址和端口号

      tracker_server=tracker2IP:22122  多个tracker直接添加多个配置

      Http.server_port=8888  设置端口号 -》 nginx.conf 设置 listen 8888 对应

      同步文件到其余3个storage服务器中

      其中117,118服务器storage.cnf 修改group_name,其余不用修改

        group_name=group2

  2.创建storage存放数据目录

    mkdir -p /fastdfs/storage

  3.启动storage服务

    启动服务: /etc/init.d/fdfs_storaged start

    查看日志: tail -f /fastdfs/storage/logs/storaged.log

    注意:启动服务时候先启动 173 174 tracker 跟踪器节点,然后分别启动第一组存储节点(175,176)节点,通过日志可以知道谁是leader节点,如下图:175节点log, tracker leader 是174节点,最后一句 75成功连接 76 服务同为 group1组

    

  4.如果174 leader 节点down了,则服务自动切换成 173 为leader 节点

  5.在usr/bin 下有好多命令,通过fdfs_monitor 命令监控当前storage存储状态

    

    /usr/binfdfs_monitor /etc/fdfs/storage.conf 会显示集群所有节点信息

  6.进行服务测试,通过client 服务测试

    cd /etc/fastdfs/  进行测试

    cp client.conf.sample client.conf

    vim client.conf   修改测试客户信息

      base_path=/fastdfs/tracker

      tracker_server=trackerIP1:22122

      tracker_server=trackerIP2:22122

    cd /usr/local

    长传文件到storage上

      /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxx.file

      返回 group1/M00/00/00/xxxxxxxxx.file

      查看75,76文件data,都有上传文件,77,78没有文件

      /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/ssss.file

      返回 group2/M00/00/00/ssss.file

      查看75,76 没有文件, 77 ,78 data目录下有文件

      (在 store_lookup=0 设置 轮询上传)

------------------------------------------------------fastdfs集群部署完成--------------------------------------------------------

四.fastdfs配置ngnix

  (在storage节点上安装)

  1.添加 fastdfs-nginx-modue模块, 

    cd /usr/local/software

    tar -zxvf fastdfs-nginx-module_v1.16.tar.gz -C /usr/local/fast

  2.安装fastdfs-nginx-modue之前,对配置文件进行修改

    cd fastdfs-nginx-module/src/

    vim config

    去除local文件层次 四个节点同时操作

    

  3.四个存储节点安装nginx依赖包,安装nginx,添加fastdfs和nginx的整合模块

    (1).安装nginx依赖包

      yum install pcre

      yum install pcre-devel

      yum install zlib

      yum install zlib-devel

    (2).安装nginx,加入fastdfs-nginx-module

      cd /usr/local/software

      tar -zxvf nginx-1.6.2.tar.gz -C /usr/local

      cd /usr/local/nginx-1.6.2/

      ./configure --add-module=/usr/local/fast/fastdfs-nginx-module/src

      make && make install

    (3).复制fastdfs-nginx-module中的配置文件到 /etc/fdfs 目录下

      cd /usr/local/fast/fastdfs-nginx-module/src

      cp mod_fastdfs.conf /etc/fdfs/

      vim /etc/fdfs/mod_fastdfs.conf 修改连接超时时间。追踪器路径,url的group配置等

        第一组 175 176 和 第二组 177 178 节点修改内容 只有组名称不同

        [115]

        connect_timeout=10

        tracker_server=trackerIP1:22122

        tracker_server=trackerIP2:22122

        storage_server_port=23000

        url_have_group_name=true

        store_path0=/fastdfs/storage

        group_name=group1 / group2  第一组(115 116)为group1 第二组(117 118)为 group2

        group_count=2

    (4).复制FastDFS中的 2 个文件到 /etc/fdfs 目录中 所有节点

      cd /usr/local/fast/FastDFS/conf

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

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

              源文件                          连接文件   M00 指向 data

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

    (6).配置 nginx 配置文件

      cd /usr/local/nginx/conf

      vim nginx.conf  

        访问 group [0-9] ,直接访问 M00软连接,执行 ngx_fastdfs_module模块

        listen 8888为 storage http.server_port=8888 配置对应

        

    (7).检查防火墙,启动 nginx

      /usr/local/nginx/sbin/nginx  启动服务

      /usr/local/nginx/sbin/nginx stop  停止服务

      /usr/local/nginx/sbin/nginx -s stop  重启服务

    (8).可以通过 tracler 节点 client 上传文件 然后使用http url访问图片了

      /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxxx.file

      http://ClientIP:8888/group1/M00/00/00/xxxxxx.file  -》ClientID 75 76 77 78

      其中 75 76 数据相同  77 78 数据相同 不能跨域访问

------------------------------------------------------nginx fastdfs 整合完成--------------------------------------------------------

 五.追踪器上提那家nginx,提供反向代理服务(使用一个ip向外部提供服务)

  1.上传ngx_cache_purge-2.3.tar.gz 文件到 /usr/local/software 目录下

  2.上传tar -zxvf ngx_cache_purge-2.3.tar.gz -C /usr/local/fast 并且进行解压

  3.cd /usr/local/fast/ ll  查看目录下文件 新增缓存模块

    

  4.配置nginx,添加nginx依赖包等

    yum install pcre

    yum install pcre-devel

    yum install zlib

    yum install zlib-devel

  5.解压nginx 并且加入 ngx_cache_pureg (缓存模块)

    cd /usr/local/software

    tar -zxvf nginx-1.6.2.tar.gz -C /usr/local

    cd /usr/local/nginx-1.6.2

    添加ngx_cache_pureg模块,之前加入 fastdfs 模块

      ./configure --add-module=/usr/local/fast/ngx_catch_purge-2.3

    make && make install

  6.配置nginx 负载均衡和缓存 (173 174 节点配置一致)   /usr/local/nginx/conf/nginx.conf

    (1).设置缓存信息

      

    (2).负载均衡 fdfs_group1 两个服务对应 tracker 173,fdfs_group2 对应 tracker174

      

    (3).设定服务,对外提供统一端口 8000 ,其中 173 174 服务配置参数完全相同

      服务访问 /group1/M00 则对应访问 fdfs_group1 服务 对应上面图片中 fdfs_group1 集群服务

      服务访问 /group2/M00 则对应访问 fdfs_group2 服务 对应上面图片中 fdfs_group2 集群服务

      

      

      

    (4).添加创建缓存的使用文件夹 上面 3 中配置缓存路径

      mkdir -p /fastdfs/cache/nginx/proxy_cache

      mkdir -p /fastdfs/cache/nginx/proxy_cache/tmp

    (5).开放8000 端口, 修改 /etc/sysconfig/iptables 文件 添加 8000端口号

      service iptables restart

    (6).client 上传文件 通过 8000端口进行访问  

      73 上传文件  /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxx.file

      通过 tracker ip:8000 访问文件

      http://192.168.1.173:8000/group1/M00/00/00/xxxxxx.file

        73 代理 75 76 storage 

      73 上传文件  /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /usr/local/software/xxxxx.file

      http://192.168.1.174:8000/group2/M00/00/00/xxxxxx.file

        74 代理 77 78 storage

    

  7.在 tracker (73 74) 安装nginx后,可以对 group1 和 group2 进行访问(反向代理),最后虚拟一个keepalived,虚拟出一个VIP对两台tracker做高可用配置

    nginx + keepalived ???学习

    

    

    修改后需要把 nginx.conf 配置文件传送到 带有 keepalived 的节点上 (114 115)

    114,115 两节点代理 73 74 两节点  修改配置文件后需要重启 nginx,

      /usr/local/nginx/sbin/nginx -s reload

    在 73 上传文件 通过 110 (115 114 代理)进行访问

    192.168.1.110/fastdfs/group1/M00/00/00/xxxx.file   fastdfs 对应 上面配置 location

    (可以将 173 174 结合keepalived 做出高可用 虚拟IP访问)

   8.关闭集群步骤

    

fastdfs集群安装过程_学习笔记的更多相关文章

  1. hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解

    hadoop1.2.1+zk-3.4.5+hbase-0.94.1集群安装过程详解 一,环境: 1,主机规划: 集群中包括3个节点:hadoop01为Master,其余为Salve,节点之间局域网连接 ...

  2. Kubernetes全栈架构师(二进制高可用安装k8s集群扩展篇)--学习笔记

    目录 二进制Metrics&Dashboard安装 二进制高可用集群可用性验证 生产环境k8s集群关键性配置 Bootstrapping: Kubelet启动过程 Bootstrapping: ...

  3. FastDFS 集群 安装 配置

    这篇文章介绍如何搭建FastDFS 集群 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的 ...

  4. FastDFS集群安装

    集群安装1.FastDFS安装 Tracker,nginx 192.168.56.113       192.168.56.114 storage group1      192.168.56.115 ...

  5. Kubernetes全栈架构师(二进制高可用安装k8s集群部署篇)--学习笔记

    目录 二进制高可用基本配置 二进制系统和内核升级 二进制基本组件安装 二进制生成证书详解 二进制高可用及etcd配置 二进制K8s组件配置 二进制使用Bootstrapping自动颁发证书 二进制No ...

  6. FastDFS集群-安装说明

    一.简介 FastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为载体的在线 ...

  7. Hadoop之——分布式集群安装过程简化版

    转载请注明出处:http://blog.csdn.net/l1028386804/article/details/46352315 1.hadoop的分布式安装过程 1.1 分布结构 主节点(1个,是 ...

  8. RabbitMQ 集群安装过程详解

    一.安装Erlang 1.rabbitMQ是基于erlang的,所以首先必须配置erlang环境. 从erlang官网下载 otp 18.3.下载链接:http://erlang.org/downlo ...

  9. ALSA声卡07_分析调用过程_学习笔记

    1.编译新的strace工具分析aplay和amixer应用程序对声卡的调用过程 (1)因为旧的strace工具不能识别不能识别alsa声卡驱动程序里面的ioctrl. (2)编译过程参考http:/ ...

随机推荐

  1. 34. Find First and Last Position of Element in Sorted Array (JAVA)

    Given an array of integers nums sorted in ascending order, find the starting and ending position of ...

  2. mkpasswd - 为用户产生新口令

    总览 SYNOPSIS mkpasswd [ args ] [ user ] 介绍 INTRODUCTION mkpasswd 为用户产生口令并自动应用.它是基于O'Reilly的书<Explo ...

  3. JavaEE高级-Spring学习笔记

    *Spring是什么? - Spring是一个开源框架 - Spring为简化企业级应用开发而生.使用Spring可以使简单的JavaBean实现以前只有EJB才能实现的功能 - Spring是一个I ...

  4. 95-基于FMC接口的2路CameraLink Base输出子卡模块

    基于FMC接口的2路CameraLink Base输出子卡模块 1.板卡概述 FMC连接器是一种高速多pin的互连器件,广泛应用于板卡对接的设备中,特别是在xilinx公司的所有开发板中都使用.该Ca ...

  5. CSS初识

    CSS:层叠样式表,控制网页数据样式显示,使得数据的表现和内容分离 CSS的引入方式 使用元素内嵌样式表:例<a style=”font-size:40px”></a>表示在a ...

  6. pandas的数据统计函数

    # 1汇总类统计 # 2唯一去重和按值计数 # 3 相关系数和协方差 import pandas as pd # 0 读取csv数据 df = pd.read_csv("beijing_ti ...

  7. C#基础知识之SharpZipLib压缩解压的使用

    项目中使用 Velocity 将模板和生成的动态内容(HTML.XML等)合并保存到redis数据库中,考虑到压缩的文件容量会比较小,方便传输而且存储所使用的空间也会比较小,所以要压缩一下,读取的时候 ...

  8. postman(三):详解postman动态变量使用

    参考: Variables Dynamic variables

  9. Vscode添加谷歌Debug插件

    1. 2.安装好 Debugger for Chrome之后,找到要进行Debug的文件 3. 4.进入到launch.json文件中进行相应的配置 配置文件内容如下: { "version ...

  10. mac下安装 rabbitMq

    1.安装HomeBrew,如果已经安装这一步跳过. 2.用brew install rabbitmq指令即可进行rabbitmq服务的自动安装. 3.安装完成之后会出现一下提示:   rabbit安装 ...