没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
高可用架构篇
FastDFS 集群的安装、配置、使用
1.FastDFS 介绍
(参考:http://www.oschina.net/p/fastdfs)
FastDFS 是一个开源的分布式文件系统,它对文件进行管理,功能包括:文件存储、
文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的
问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。
FastDFS 服务端有两个角色:跟踪器(tracker)和存储节点(storage)。
跟踪器主要做调度工作,在访问上起负载均衡的作用。存储节点存储文件,完
成文件管理的所有功能:存储、同步和提供存取接口,FastDFS 同时对文件的 meta data
进行管理。所谓文件的 meta data 就是文件的相关属性,以键值对(key value pair)
方式表示,如:width=1024,其中的 key 为 width,value 为 1024。文件 meta data 是
文件属性列表,可以包含多个键值对。
FastDFS 系统结构如下图所示:
跟踪器和存储节点都可以由一台多台服务器构成。跟踪器和存储节点中的服务
器均可以随时增加或下线而不会影响线上服务。其中跟踪器中的所有服务器都是对
等的,可以根据服务器的压力情况随时增加或减少。
为了支持大容量,存储节点(服务器)采用了分卷(或分组)的组织方式。存
储系统由一个或多个卷组成,卷与卷之间的文件是相互独立的,所有卷的文件容量
累加就是整个存储系统中的文件容量。一个卷可以由一台或多台存储服务器组成,
一个卷下的存储服务器中的文件都是相同的,卷中的多台存储服务器起到了冗余备
份和负载均衡的作用。在卷中增加服务器时,同步已有的文件由系统自动完成,同
步完成后,系统自动将新增服务器切换到线上提供服务。当存储空间不足或即将耗
尽时,可以动态添加卷。只需要增加一台或多台服务器,并将它们配置为一个新的
卷,这样就扩大了存储系统的容量。FastDFS 中的文件标识
1.FastDFS 上传文件交互过程:
1. client 询问 tracker 上传到的 storage,不需要附加参数;
2. tracker 返回一台可用的 storage;
3. client 直接和 storage 通讯完成文件上传。
客户端 client 发起对 FastDFS 的文件传输动作,是通过连接到某一台 Tracker Server
的指定端口来实现的,Tracker Server 根据目前已掌握的信息,来决定选择哪一台
Storage Server ,然后将这个 Storage Server 的地址等信息返回给 client,然后 client
再通过这些信息连接到这台 Storage Server,将要上传的文件传送到给 Storage Server
上。
2.FastDFS 下载文件交互过程:
1. client 询问 tracker 下载文件的 storage,参数为文件标识(卷名和文件名);
2. tracker 返回一台可用的 storage;
3. client 直接和 storage 通讯完成文件下载。
FastDFS 集群规划:
跟踪服务器 1:192.168.1.131 du-dfs-tracker-1
跟踪服务器 2:192.168.1.132 du-dfs-tracker-2
存储服务器 1:192.168.1.135 du-dfs-storage-group1-1
存储服务器 2:192.168.1.136 du-dfs-storage-group1-2
存储服务器 3:192.168.1.137 du-dfs-storage-group2-1
存储服务器 4:192.168.1.138 du-dfs-storage-group2-2
环境:CentOS6.6
用户:root
数据目录:/fastdfs(注:数据目录按你的数据盘挂载路径而定)
安装包:
FastDFS v5.05
libfastcommon-master.zip(是从 FastDFS 和 FastDHT 中提取出来的公共 C 函数库)
fastdfs-nginx-module_v1.16.tar.gz
nginx-1.6.2.tar.gz
fastdfs_client_java._v1.25.tar.gz
源码地址:https://github.com/happyfish100/
下载地址:http://sourceforge.net/projects/fastdfs/files/
官方论坛:http://bbs.chinaunix.net/forum-240-1.html
FastDFS 集群
VIP
一级:
Proxy 1 ( Keepalived + Nginx )
Proxy 2 ( Keepalived + Nginx )
二级:
Tracker 1 ( FastDFS + Nginx )
Tracker 2 ( FastDFS + Nginx )
三级:
Group 1
Storage 1 ( FastDFS + Nginx )
Storage 2 ( FastDFS + Nginx )
Group 2
Storage 3 ( FastDFS + Nginx )
Storage 4 ( FastDFS + Nginx )
一、FastDFS 的安装
(所有跟踪服务器和存储服务器均执行如下操作)
1、编译和安装所需的依赖包:
yum install make cmake gcc gcc-c++
2、安装 libfastcommon
(https://github.com/happyfish100/libfastcommon)
(1)上传或下载 libfastcommon-master.zip 到/usr/local/src 目录,解压
cd /usr/local/src/
unzip libfastcommon-master.zip
cd libfastcommon-master
(2)编译、安装
./make.sh
./make.sh install
libfastcommon 默认安装到了
/usr/lib64/libfastcommon.so
/usr/lib64/libfdfsclient.so
(3)因为 FastDFS 主程序设置的 lib 目录是/usr/local/lib,所以需要创建软链
接.
ln -s /usr/lib64/libfastcommon.so /usr/local/lib/libfastcommon.so
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
(https://github.com/happyfish100/fastdfs/releases)
(1)上传或下载 FastDFS 源码包(FastDFS_v5.05.tar.gz)到/usr/local/src 目
录,解压
cd /usr/local/src/
tar -zxvf FastDFS_v5.05.tar.gz
cd FastDFS
(3)编译、安装(编译前要确保已经成功安装了 libfastcommon)
./make.sh
./make.sh install
采用默认安装的方式安装,安装后的相应文件与目录:
A、服务脚本在:
/etc/init.d/fdfs_storaged
剩余20页未读,继续阅读
资源评论
shandongwill
- 粉丝: 3378
- 资源: 395
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功