环境:

CentOS 7

FastDFS 5.05

Nginx 1.10

fastdfs-nginx-module_v1.16

libfastcommon-1.0.7

libevent-2.0.21-stable

pcre-8.35.tar.gz

单机启动一个Tracker和三个Storage

安装支持模块:

yum install openssl openssl-devel

安装libevent-2.0.21-stable

tar zxvf libevent-2.0.21-stable.tar.gz
./configure
make && make install

安装libfastcommon-1.0.7.tar.gz

tar zxvf libfastcommon-1.0.7.tar.gz
./make.sh
./make.sh install

安装FastDFS

tar zxvf FastDFS_v5.05.tar.gz
./make.sh
./make.sh install

配置文件目录:/etc/fdfs/

配置tracker和storage

tracker:

vim /etc/fdfs/tracker.conf

base_path=/data/local/fdfs_data/tracker #确保目录存在

storage:

vim /etc/fdfs/storage.conf

group_name=group1
http.server_port=8123
base_path=/data/local/fdfs_data/storage #确保目录存在

store_path0=/data/local/fdfs_data/storage/images/data #确保目录存在,存放图片目录

tracker_server=192.168.153.10:22122  #tracker服务地址,这里就是本机地址

由于要启动三个storage,所以复制storage.conf二份,三份配置文件分别为:storage.conf、storage1.conf、storage2.conf

修改storage1.conf和storage2.conf:

storage1.conf:

group_name=group2

http.server_port=8123
base_path=/data/local/fdfs_data/storage1 #确保目录存在 store_path0=/data/local/fdfs_data/storage1/images/data #确保目录存在,存放图片目录 tracker_server=192.168.153.10:22122 #tracker服务地址,这里就是本机地址

storage2.conf:

group_name=group2
http.server_port=8123
base_path=/data/local/fdfs_data/storage2 #确保目录存在

store_path0=/data/local/fdfs_data/storage2/images/data #确保目录存在,存放图片目录  

tracker_server=192.168.153.10:22122 #tracker服务地址,这里就是本机地址

启动tracker:

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf

启动三个storage:

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf
/usr/bin/fdfs_storaged /etc/fdfs/storage1.conf
/usr/bin/fdfs_storaged /etc/fdfs/storage2.conf

初次启动storage时会稍慢。

配置client

vim /etc/fdfs/client.conf:

base_path=/data/local/fdfs_data/client #确保目录存在

tracker_server=192.168.153.10:22122
http.server_port=8123

拷贝mime.types、http.conf

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

修改fastdfs-nginx-module/src/config,去掉local:

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

否在在安装nginx时会报错:

 致命错误:fdfs_define.h:没有那个文件或目录
#include "fdfs_define.h"

安装nginx:

tar zxvf nginx-1.10.3.tar.gz
./configure --prefix=/data/local/nginx --with-http_gzip_static_module --with-http_ssl_module --with-http_stub_status_module --add-module=/data/package/fastdfs-nginx-module/src/ --with-pcre=/data/package/pcre-8.35
make
make install

拷贝模块文件:

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

修改mod_fastdfs.conf:


tracker_server=tracker:22122
改为:
tracker_server=192.168.0.9:22122 #tracker的实际地址

nginx.conf

listen 8123

location /group1/M00 {
root /data/local/fdfs_data/storage/images;
ngx_fastdfs_module;
}

启动nginx...

设置伪集群:

vim mod_fastdfs.conf:

base_path=/data/local/fdfs_data/fdfs-nginx-module

tracker_server=192.168.153.9:22122

group_name=group1/group2/group3

store_path0=/data/local/fdfs_data/storage/images/data

group_count = 3

[group1]
group_name=group1
storage_server_port=23000
store_path_count=1
store_path0=/data/local/fdfs_data/storage/images [group2]
group_name=group2
storage_server_port=23001
store_path_count=1
store_path0=/data/local/fdfs_data/storage1/images [group3]
group_name=group3
storage_server_port=23002
store_path_count=1
store_path0=/data/local/fdfs_data/storage3/images

重启服务:

/usr/bin/fdfs_trackered /etc/fdfs/tracker.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage1.conf restart
/usr/bin/fdfs_storaged /etc/fdfs/storage2.conf restart /data/local/nginx/sbin/nginx -s reload

上传图片测试:

/usr/bin/fdfs_test /etc/fdfs/client.conf upload /data/package/111.jpg

通过结果:

This is FastDFS client test program v5.05

Copyright (C) 2008, Happy Fish / YuQing

FastDFS may be copied only under the terms of the GNU General
Public License V3, which may be found in the FastDFS source kit.
Please visit the FastDFS Home Page http://www.csource.org/
for more detail. [2017-04-21 17:58:52] DEBUG - base_path=/data/local/fdfs_data/client, connect_timeout=30, network_timeout=60, tracker_server_count=1, anti_steal_token=0, anti_steal_secret_key length=0, use_connection_pool=0, g_connection_pool_max_idle_time=3600s, use_storage_id=0, storage server id count: 0 tracker_query_storage_store_list_without_group:
server 1. group_name=, ip_addr=192.168.153.9, port=23000 group_name=group1, ip_addr=192.168.153.9, port=23000
storage_upload_by_filename
group_name=group1, remote_filename=M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000.jpg
source ip address: 192.168.153.9
file timestamp=2017-04-21 17:58:52
file size=16324
file crc32=1490376119
example file url: http://192.168.153.9:8123/group1/M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000.jpg
storage_upload_slave_by_filename
group_name=group1, remote_filename=M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000_big.jpg
source ip address: 192.168.153.9
file timestamp=2017-04-21 17:58:52
file size=16324
file crc32=1490376119
example file url: http://192.168.153.9:8123/group1/M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000_big.jpg

其中 'http://192.168.153.9:8123/group1/M00/00/00/wKiZCVj519yAMVOkAAA_xFjVVbc000_big.jpg'就是改图片通过nginx的访问地址。

PS:同一个group中的storage之间是平等的,相互备份。

查看FastDFS集群状态:

 /usr/bin/fdfs_monitor /etc/fdfs/client.conf

删除storage节点,重新加入:

/usr/bin/fdfs_monitor /etc/fdfs/client.conf delete group1 192.168.153.9

删除一个组:

/usr/bin/fdfs_monitor /etc/fdfs/client.conf delete group2

删除完之后,重启tracker和storage





FastDFS部署的更多相关文章

  1. FastDFS部署安装全过程

    你好!欢迎阅读我的博文,你可以跳转到我的个人博客网站,会有更好的排版效果和功能. 此外,本篇博文为本人Pushy原创,如需转载请注明出处:https://pushy.site/posts/153205 ...

  2. Fastdfs 部署干货

    tracker server and client:192.168.1.42 storage server:192.168.1.46 storage server:192.168.1.53 安装: 安 ...

  3. FastDFS的配置、部署与API使用解读(7)Nginx的FastDFS模块(转)

    1.Nginx的FastDFS模块什么作用? 我们在使用FastDFS部署一个分布式文件系统的时候,通过FastDFS的客户端API来进行文件的上传.下载.删除等操作.同时通过 FastDFS的HTT ...

  4. FastDFS为什么要结合Nginx

    FastDFS为什么要结合Nginx? 我们在使用FastDFS部署一个分布式文件系统的时候,通过FastDFS的客户端API来进行文件的上传.下载.删除等操作.同时通过FastDFS的HTTP服务器 ...

  5. FastDFS分布式存储实战

    <FastDFS分布式存储实战> 技术选型 FastDFS相关组件及原理 FastDFS介绍 FastDFS架构 FastDFS工作流程 上传 同步机制 下载 文件合并原理 实验环境说明 ...

  6. linux上安装fastdfs+nginx+ngin-module实践并解决多个异常篇

    为什么选择Nginx Nginx 是一个很牛的高性能Web和反向代理服务器, 它具有有很多非常优越的特性: 在高连接并发的情况下,Nginx是Apache服务器不错的替代品:Nginx在美国是做虚拟主 ...

  7. CentOS7搭建FastDFS V5.11分布式文件系统-第三篇

    1.测试 前面两篇博文已对FastDFS的安装和配置,做了比较详细的讲解.FastDFS的基础模块都搭好了,现在开始测试下载. 1.1 配置客户端 同样的,需要修改客户端的配置文件: /etc/fdf ...

  8. fastdfs+nginx+image_filter安装与生成缩略图

    fastdfs简介 类似google FS的一个轻量级分布式文件系统,纯C实现,支持linux.FreeBSD等UNIX系统: 只能通过API访问,不支持POXIS: 文件不分块存储,上传的文件和OS ...

  9. fastdfs5.11+centos7.2 按照部署(三)【转载】

    1.测试 前面两篇博文已对FastDFS的安装和配置,做了比较详细的讲解.FastDFS的基础模块都搭好了,现在开始测试下载. 1.1 配置客户端 同样的,需要修改客户端的配置文件: vim /etc ...

随机推荐

  1. +new Date()的用法

    var s=+newDate();   var s=+newDate(); 解释如下:=+是不存在的; +new Date()是一个东西; +相当于.valueOf(); 看到回复补充一下.getTi ...

  2. 11.16 Daily Scrum

    由于今天是工作小周期的最后一天,今天的主要任务是解决了一周留下的技术方面的难题.一些类似于悬浮窗和进度条的bug修复全部在今天得到了解决,修复了数据库的内存泄露bug,软件的搜索功能的完善也接近尾声. ...

  3. 10.29 scrum meeting newbe软件团队工作分配

    这次会议,我们主要讨论了目前阶段的主要任务与任务分配问题. 首先,通读代码,理解程序的运行方式是必不可少的环节.所以我们要求团队的所有成员通读代码.并且对于开发人员和测试人员,要求写出我们分配的各自模 ...

  4. Java程序设计第四次实验报告

    北京电子科技学院(BESTI) 实     验    报     告 课程:java程序设计 班级:1352  姓名:何伟钦  学号:20135223 成绩:            指导教师:娄嘉鹏 ...

  5. CentOS中Intel i350T4驱动安装

    2015.3.31 在linux*中直接按解决方法中安装i350驱动即可 *************************************************************** ...

  6. 路由器配置及IP设置及ping命令使用

    OSI的七层协议体系结构: 物理层.数据链路层.网络层.运输层.会话层.表示层.应用层 TCP/IP是一个四层的体系结构: 网络接口层.网际层(互联网层)(IP或ARP或ICMP).运输层(TCP或U ...

  7. jQuery ajax - get() 方法

    AJAX = Asynchronous javaScript and XML.  AJAX 是一种创建快速动态网页的技术. AJAX 通过在后台与服务器交换少量数据的方式,允许网页进行异步更新.这意味 ...

  8. 软工网络15团队作业8——Beta阶段敏捷冲刺(day1)

    第 1 篇 Scrum 冲刺博客 1. 介绍小组新加入的成员,Ta担任的角色 --给出让ta担当此角色的理由 小组新加入的成员:3085叶金蕾 担任的角色:测试/用户体验/开发 理由:根据小组讨论以及 ...

  9. HDU 2103 Family planning

    http://acm.hdu.edu.cn/showproblem.php?pid=2103 Problem Description As far as we known,there are so m ...

  10. [学习]Windows server 使用控制台时容易卡死的解决方法

    公司使用Windows server 下面的 cmd 命令行 控制台打开某一个 bat 文件的方式 进行后台使用.. 但是经常发现在winserver 2016 时 遇到卡死的情况, 今天中午我再进行 ...