FastDFS的实现

环境

  1. centos7.1节点提供trackerstorage服务
  2. centos7.2centos7.3只提供storage服务

FastDFS的实现

  1. fastdfs-5.0.11-1.el7.centos.x86_64.rpm #主程序
  2. fastdfs-debuginfo-5.0.11-1.el7.centos.x86_64.rpm #debug先关的包
  3. fastdfs-server-5.0.11-1.el7.centos.x86_64.rpm #提供tracker和storage节点的服务
  4. fastdfs-tool-5.0.11-1.el7.centos.x86_64.rpm #工具包
  5. libfastcommon-1.0.36-1.el7.centos.x86_64.rpm #下面四个是依赖的包
  6. libfastcommon-devel-1.0.36-1.el7.centos.x86_64.rpm
  7. libfdfsclient-5.0.11-1.el7.centos.x86_64.rpm
  8. libfdfsclient-devel-5.0.11-1.el7.centos.x86_64.rpm
  9. nginx-1.10.2-1.el7.centos.x86_64.rpm #使用nginx做为web界面需要用到的包
  10. nginx-all-modules-1.10.2-1.el7.centos.noarch.rpm
  11. nginx-filesystem-1.10.2-1.el7.centos.noarch.rpm
  12. nginx-mod-http-geoip-1.10.2-1.el7.centos.x86_64.rpm
  13. nginx-mod-http-image-filter-1.10.2-1.el7.centos.x86_64.rpm
  14. nginx-mod-http-perl-1.10.2-1.el7.centos.x86_64.rpm
  15. nginx-mod-http-xslt-filter-1.10.2-1.el7.centos.x86_64.rpm
  16. nginx-mod-mail-1.10.2-1.el7.centos.x86_64.rpm
  17. nginx-mod-stream-1.10.2-1.el7.centos.x86_64.rpm
  18. 1》安装
  19. yum localinstall ./* #安装软件
  20. cd /etc/fdfs/ ;ls #发现有很多示例
  21. anti-steal.jpg client.conf.sample http.conf mime.types storage.conf.sample storage_ids.conf.sample tracker.conf.sample
  22. 2》在centos7.1节点上配置tracker节点
  23. cd /etc/fdfs/
  24. cp tracker.conf.sample tracker.conf.sample.bak
  25. mv tracker.conf.sample tracker.conf
  26. vim tracker.conf
  27. base_path=/app/fastdfs/tracker #设置tracker的存储路径
  28. store_group=shen #设置一个存储组,注意不能带任何符号,不然会出现端口启用不了
  29. mkdir -pv /app/fastdfs/tracker #在centos7.1节点上创建tracker的数据目录
  30. mkdir /app/fastdfs/storage #创建storage的存储目录
  31. 3》在centos7.2和7.3节点上只创建storage的存储目录
  32. mkdir /app/fastdfs/storage -pv
  33. 4》在三个节点上对storage进行配置
  34. cd /etc/fdfs/
  35. cp storage.conf.sample storage.conf.sample.bak
  36. mv storage.conf.sample storage.conf
  37. vim storage.conf
  38. group_name=shen
  39. base_path=/app/fastdfs/storage #storage的基础路径,用于存储日志等
  40. store_path0=/app/fastdfs/storage #storage的存储路径,这个必须设置,可以和上面的在同一个目录下
  41. tracker_server=192.168.213.251:22122 #指明tracker主机
  42. 在centos7.1节点上启动tracker和storage服务
  43. systemctl start fdfs_trackerd
  44. systemctl start fdfs_storaged
  45. ss -nltp #发现tracker监听的端口是22122,storage监听的端口是23000
  46. 在centos7.2和7.3节点上启动storage服务
  47. systemctl start fdfs_storaged
  48. ss -nlt #发现23000端口已经打开
  49. 5》配置客户端的配置文件,在centos7.1节点设置
  50. cd /etc/fdfs/ ;ls
  51. anti-steal.jpg http.conf storage.conf storage_ids.conf.sample tracker.conf.sample.bak
  52. client.conf.sample mime.types storage.conf.sample.bak tracker.conf
  53. cp client.conf.sample client.conf.bak
  54. mv client.conf.bak client.conf
  55. vim client.conf
  56. base_path=/app/fastdfs/tracker
  57. tracker_server=192.168.213.251:22122
  58. fdfs_monitor /etc/fdfs/client.conf #可以查看存储节点的状态信息
  59. 6》文件的上传和查看操作
  60. cd /etc/fdfs/ ;ls
  61. anti-steal.jpg client.conf.sample mime.types storage.conf.sample.bak tracker.conf
  62. client.conf http.conf storage.conf storage_ids.conf.sample tracker.conf.sample.bak
  63. fdfs_upload_file /etc/fdfs/client.conf /app/flower.jpg #注意上传时要指明客户端的配置文件
  64. shen/M00/00/00/wKjV-1o01sOAHG17AAAN9EUC0YY902.jpg
  65. cd /app/fastdfs/storage/data/00/00/ ;ls #每个节点的此目录下都有这个文件,说明同步成功
  66. wKjV-1o01sOAHG17AAAN9EUC0YY902.jpg
  67. fdfs_file_info /etc/fdfs/client.conf shen/M00/00/00/wKjV-1o01sOAHG17AAAN9EUC0YY902.jpg #查看文件
  68. source storage id: 0
  69. source ip address: 192.168.213.251
  70. file create timestamp: 2017-12-16 16:18:11
  71. file size: 3572
  72. file crc32: 1157812614 (0x4502D186)
  73. fdfs_test /etc/fdfs/client.conf upload /root/anaconda-ks.cfg #上传测试
  74. fdfs_upload_file /etc/fdfs/client.conf /root/anaconda-ks.cfg #上传文件
  75. magedu/M00/00/00/rBIVB1oylFSADeGrAAAHXGXWizs514.cfg
  76. fdfs_download_file /etc/fdfs/client.conf magedu/M00/00/00/rBIVB1oylFSADeGrAAAHXGXWizs514.cfg #下载文件到当前目录

FastDFS实现nginx代理

  1. 1》在centos7.1节点安装nginx的相关包,注意要安装nginx-1.10版本,不然可能没有ngx_fastdfs_module模块,如果之前已经安装nginx及相应的依赖包,最好先卸载了
  2. cd /app
  3. ls #将nginx-1.10.2版本的nginx及相应的依赖包下载到本地
  4. nginx-1.10.2-1.el7.centos.x86_64.rpm #注意版本要统一都是1.10.2的版本
  5. nginx-all-modules-1.10.2-1.el7.centos.noarch.rpm #下面这些都是nginx的依赖包
  6. nginx-filesystem-1.10.2-1.el7.centos.noarch.rpm
  7. nginx-mod-http-geoip-1.10.2-1.el7.centos.x86_64.rpm
  8. nginx-mod-http-image-filter-1.10.2-1.el7.centos.x86_64.rpm
  9. nginx-mod-http-perl-1.10.2-1.el7.centos.x86_64.rpm
  10. nginx-mod-http-xslt-filter-1.10.2-1.el7.centos.x86_64.rpm
  11. nginx-mod-mail-1.10.2-1.el7.centos.x86_64.rpm
  12. nginx-mod-stream-1.10.2-1.el7.centos.x86_64.rpm
  13. yum install ./nginx*
  14. 2》修改nginx的配置文件
  15. vim /etc/nginx/nginx.conf
  16. location /magedu/M00 { #表示匹配以 /magdu/M00开头的uri
  17. root /app/fastdfs/storage; #指明数据存储的目录
  18. ngx_fastdfs_module;
  19. }
  20. nginx
  21. ngx_http_fastdfs_set pid=14594
  22. ss -nlt
  23. 3》修改fastdfs_module配置文件的设置
  24. vim /etc/fdfs/mod_fastdfs.conf
  25. url_have_group_name = true #是否允许访问的url中包含组名
  26. store_path0=/app/fastdfs/storage #指明storage节点存储数据的目录
  27. tracker_server=172.18.21.107:22122 #指明tracker节点
  28. group_name=magedu #指明组名
  29. 4》测试
  30. fdfs_upload_file /etc/fdfs/client.conf /app/sunset.jpg #上传一个文件
  31. magedu/M00/00/00/rBIVa1ozvNWAJLHkAAAKwLGLsZc035.jpg
  32. 访问如下网站就可以看到存储的图片
  33. http://172.18.21.107/magedu/M00/00/00/rBIVa1ozvNWAJLHkAAAKwLGLsZc035.jpg

FastDFS的实现的更多相关文章

  1. 【架构设计】分布式文件系统 FastDFS的原理和安装使用

    本文地址 分享提纲: 1.概述 2. 原理 3. 安装 4. 使用 5. 参考文档 1. 概述 1.1)[常见文件系统] Google了一下,流行的开源分布式文件系统有很多,介绍如下:   -- mo ...

  2. FASTDFS调研报告(V1.0)

    之前的文章,现在放出来,以供参阅. 一.fastdfs简介 FastDFS是一个轻量级的开源分布式文件系统 FastDFS主要解决了大容量的文件存储和高并发访问的问题,文件存取时实现了负载均衡 Fas ...

  3. 网站文件系统发展&&分布式文件系统fastDFS

    网站文件系统发展 1.单机时代的图片服务器架构 初创时期由于时间紧迫,开发人员水平也很有限等原因.所以通常就直接在website文件所在的目录下,建立1个upload子目录,用于保存用户上传的图片文件 ...

  4. FastDFS 安装及使用

    FastDFS 安装及使用 2012-11-17 13:10:31|  分类: Linux|举报|字号 订阅     Google了一下,流行的开源分布式文件系统有很多,介绍如下:   mogileF ...

  5. 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署

    少啰嗦,直接装 看过上一篇分布式文件系统 - FastDFS 简单了解一下的朋友应该知道,本次安装是使用目前余庆老师开源的最新 V5.05 版本,是余庆老师放在 Github 上的,和目前你能在网络上 ...

  6. 分布式文件系统 - FastDFS 简单了解一下

    别问我在哪里 也许我早已不是我自己,别问我在哪里,我一直在这里. 突然不知道说些什么了... 初识 FastDFS 记得那是我刚毕业后进入的第一家公司,一个技术小白进入到当时的项目组后,在开发中上传用 ...

  7. 分布式文件系统 - FastDFS 配置 Nginx 模块及上传测试

    也不说废话,直接干 上一篇 分布式文件系统 - FastDFS 在 CentOS 下配置安装部署 中安装了 FastDFS 后,并配置启动了 Tracker 和 Storage 服务,已经可以上传文件 ...

  8. centos 系统下安装FastDFS+nginx+fastdfs-nginx-module安装配置

    前言: 以前的项目上传的文件都是保存到本地或者是局域网内的共享文件夹下,由于数据量,服务器的负载均衡(分机的某些图片无法访问的问题处理)等因素的情况下,就想到用fastdfs来文件管理,花了几天时间硬 ...

  9. FastDFS+Nginx(单点部署)事例

    FastDFS是由淘宝的余庆先生所开发,是一个轻量级.高性能的开源分布式文件系统,用纯C语言开发,包括文件存储.文件同步.文件访问(上传.下载).存取负载均衡.在线扩容.相同内容只存储一份等功能,适合 ...

  10. 在虚拟机中配置FastDFS+Nginx模块

    先上部署图 提示一下, ip 192.168.72.138 上面部署了两个group, 分别为 group1和g2. 另外, 同组之内的 port 要保持一致. 一.安装准备 1. #每台机器都添加两 ...

随机推荐

  1. Cadence中画原理图的时候器件标号与黄色的参数不同的解决办法

    方法是Accessories->Transfer Occ. Prop to Instance->Push Occ. Prop into Instance 将黄色的参数同样应用到源参数. 版 ...

  2. 创建Javaweb项目及MyEclipse视图的配置

    在myEclipse里--右键new--Web Project 视图的配置--Window--Show View-Other在里面输入要找的视图例如(servers)或者直接 Window--rese ...

  3. table 设置自动宽度后 td 的固定宽度 在 谷歌浏览器自动拉伸

    table   设置自动宽度后   td 的固定宽度  在 谷歌浏览器自动拉伸 解决方案 <table style="table-layout:fixed;">

  4. MTK平台添加防止误触代码

    ltr559_old: #include <linux/interrupt.h> #include <linux/i2c.h> #include <linux/slab. ...

  5. input range音乐进度条

    <!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8" ...

  6. POJ 2456_Aggressive cows

    题意: 给定N个位置,把C头牛分别放入,求相邻两头牛的最大距离. 分析: 即为求两头牛之间最小距离的最大值.二分搜索答案. 代码: #include<iostream> #include& ...

  7. operamasks—omMessageTip的使用

    <!DOCTYPE html> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <m ...

  8. Ubuntu 16.04安装WebStorm

    前提:必须正确安装JDK. 下载: http://confluence.jetbrains.com/display/WI/WebStorm+EAP 或者下载历史版本:https://www.jetbr ...

  9. linux 硬件中断调节

    什么是中断 中断interrupts是指硬件主动的来告诉CPU去做某些事情.比如网卡收到数据后可能主动的告诉CPU来处理自己接受到的数据,键盘有了按键输入后会主动告知CPU来读取输入. 硬件主动的打扰 ...

  10. java IO流之三 使用缓冲流来读写文件

    原文:http://blog.csdn.net/haluoluo211/article/details/52183219 一.通过BufferedReader和BufferedWriter来读写文件 ...