(转)分布式文件存储FastDFS(六)FastDFS多节点配置
http://blog.csdn.net/xingjiarong/article/details/50759918
前面几篇关于FastDFS的博客中介绍了如何在一台机器上搭建一个简易的FastDFS系统,当然在实际的应用中是不可能将所有的节点都搭建在一台机器上的,昨天用一下午的时间搭建了一个三个节点的FastDFS的系统,这里记录一下搭建的过程。
一、系统结构
我这里有三台机器:
| 机器 | 系统 | IP |
|---|---|---|
| PC1 | CentOS6.5 | 192.168.1.31 |
| PC2 | Ubuntu14.04 | 192.168.1.32 |
| PC3 | Ubuntu14.04 | 192.168.1.33 |
我将PC1当做tracker服务器,PC2和PC3作为group1中的两台Storage服务器,所以他们的结构是这样的:

二、安装
1、安装libevent
三台机器都要安装libevent,在libevent安装之前要确保你的机器上有C的编译器,我的Centos上竟然没有gcc,所以我先安装了一个gcc,然后其他的步骤都是按照之前的博客中介绍的那样进行安装即可。http://blog.csdn.net/xingjiarong/article/details/50559761
2、安装FastDFS
接着按照博客中的步骤安装FastDFS,其中两台Ubuntu系统的机器需要按照博客中的步骤更改配置文件,但是CentOS不需要修改,直接make就行了。
三、配置
1、配置tracker
编辑PC1上的tracker.conf,详细的修改过程按照这篇博客:http://blog.csdn.net/xingjiarong/article/details/50559768,配置完成后进行启动。
我在启动时出现了如下的错误:
fdfs_trackerd: error while loading shared libraries:
libevent-2.0.so.5: cannot open shared object file: No such file or directory
经过谷歌,通过下面的方法顺利解决:
ln -s /usr/lib/libevent-2.0.so.5 /usr/lib64/libevent-2.0.so.5
你还可以通过下面的方法来判断是否启动成功:
netstat -anp |grep 22122
如果出现类似的信息则说明启动成功了。
tcp 0 0 0.0.0.0:22122 0.0.0.0:* LISTEN 13092/fdfs_trackerd
2、配置storage.conf
对PC2和PC3上的storage.conf进行修改,方法按照配置tracker的那篇博客,需要注意的是,tracker_server要写成PC1的ip地址:
tracker_server=192.168.1.31:22122
在我配置完成后启动storage的时候,执行命令就会卡住,我去看了一下log文件中,发现有这个错误:
ERROR - file: storage_ip_changed_dealer.c, line: 180, connect to tracker server
192.168.1.31:22122 fail, errno: 113, error info: No route to host
我检查了我的tracker_server地址,发现是对的,但是我记得我对PC1配置过防火墙,所以关掉防火墙之后就可以了。
四、测试
测试方法按照这篇博客:http://blog.csdn.net/xingjiarong/article/details/50560605,注意要写对tracker_server的地址,一般你的服务都启动了之后是不会有什么问题,可以试一下。
五、关于Web Server
FastDFS可以使用的Web服务器有apache和nginx两种,网上说nginx比较轻量级,但是我还没找到一篇比较好的博客,等我搞好了一定给大家分享,之前是装过apache的,就在刚刚测试的那篇博客里,但是这次我按照那篇博客,对PC2和PC3两台机器进行了配置,配置成功后输入PC2和PC3的IP地址是可以访问到apache主页的,但是却提示找不到FastDFS中M00下的文件,有知道的还请留言告诉一声,谢谢!
(转)分布式文件存储FastDFS(六)FastDFS多节点配置的更多相关文章
- 分布式文件存储:FastDFS简单使用与原理分析
引言 FastDFS 属于分布式存储范畴,分布式文件系统 FastDFS 非常适合中小型项目,在我接手维护公司图片服务的时候开始接触到它,本篇文章目的是总结一下 FastDFS 的知识点. 用了 2 ...
- .Net平台下,分布式文件存储的实现
遇到的问题 对于Web程序,使用一台服务器的时候,客户端上传的文件一般也都是存储在这台服务器上.但在集群环境中就行不通了,如果每个服务器都存储自己接受到的文件,就乱套了,数据库中明明有这个附件的记录, ...
- 【网络爬虫入门05】分布式文件存储数据库MongoDB的基本操作与爬虫应用
[网络爬虫入门05]分布式文件存储数据库MongoDB的基本操作与爬虫应用 广东职业技术学院 欧浩源 1.引言 网络爬虫往往需要将大量的数据存储到数据库中,常用的有MySQL.MongoDB和Red ...
- 分布式文件存储数据库 MongoDB
MongoDB 简介 Mongo 并非芒果(Mango)的意思,而是源于 Humongous(巨大的:庞大的)一词. MongoDB 是一个基于分布式文件存储的 NoSQL 数据库.由 C++ 语言编 ...
- (转) 分布式文件存储FastDFS(一)初识FastDFS
http://blog.csdn.net/xingjiarong/article/details/50559849 一.FastDFS简介 FastDFS是一款开源的.分布式文件系统(Distribu ...
- 分布式文件存储FastDFS(一)初识FastDFS
一.FastDFS简单介绍 FastDFS是一款开源的.分布式文件系统(Distributed File System),由淘宝开发平台部资深架构师余庆开发.作为一个分布式文件系统,它对文件进行管理. ...
- Centos7部署分布式文件存储(Fastdfs)
目录 FastDFS介绍 楼主目标:前可H5撩妹,后可Linux搞运维 环境:Centos7 软件: 软件链接: 安装前所有准备,上传软件到Centos7上的/opt的目录下 安装依赖软件和类库(安装 ...
- 1Nginx+fastdfs分布式文件存储
准备,将所需的软件传到服务器上,服务器的列表如下: fastdfs-nginx-module_v1.15.tar.gz FastDFS_v4.06.tar.gz libevent-2.0.21- ...
- 分布式文件存储FastDFS(七)FastDFS配置文件具体解释
配置FastDFS时.改动配置文件是非常重要的一个步骤,理解配置文件里每一项的意义更加重要,所以我參考了大神的帖子,整理了配置文件的解释.原帖例如以下:http://bbs.chinaunix.net ...
- (转) 分布式文件存储FastDFS(七)FastDFS配置文件详解
http://blog.csdn.net/xingjiarong/article/details/50752586 配置FastDFS时,修改配置文件是很重要的一个步骤,理解配置文件中每一项的意义更加 ...
随机推荐
- WPS for Linux字体配置(Ubuntu 16.04)
错误提示: 解决方法: 从http://bbs.wps.cn/thread-22355435-1-1.html下载字体库,离线版本:(链接: https://pan.baidu.com/s/1i5dz ...
- Angularjs中添加HighCharts
一. 添加基本配置 1. 添加指令 angular.module('newApp') .directive('dpHighchart', ['$rootScope', function($rootSc ...
- MySQL: Create Master - Slave Servers
http://www.unixmen.com/setup-mariadb-master-slave-replication-in-centos-7/ and http://www.rackspace. ...
- Weka算法Classifier-meta-AdaBoostM1源代码分析(一)
多分类器组合算法简单的来讲经常使用的有voting,bagging和boosting,当中就效果来说Boosting略占优势,而AdaBoostM1算法又相当于Boosting算法的"经典款 ...
- wordpress 配置(ubuntu)---修改 linux hostname
使用阿里云服务器的 ubuntu 系统时的 hostname 太扭曲,而且有些命令会受 hostname 的影响不能正常使用,所以,一定要改掉它! 永久修改 hostname: 使用 nano 命令: ...
- 异步POST请求解析JSON
异步POST请求解析JSON 一.创建URL NSURL *url = [NSURL URLWithString:@"http://localhost:8080/MJServer/order ...
- Python猜年龄
题目:Python实现猜年龄 步骤一:实现最简单的猜年龄 # 事先定义 dark_knight_age = 28 user_age = input('Please guess my age:') us ...
- 详细介绍idea实现javaweb项目登入注册(华东交通大学教务处信息管理系统)、模糊查询
详细介绍idea实现javaweb项目登入注册(华东交通大学教务处信息管理系统).模糊查询 1,创建数据库,我的用户名:root 密码:root,数据库名称:lianwei,表名:login 2,效果 ...
- $P5240 Derivation$
神仙题. 第一场月赛的题目我到第二场月赛完了才写[由此可见我是真的菜 题目就是个大模拟加乘显然,幂的话需要将原函数.导函数的函数值用扩展欧拉定理展开 \(log\) 层.时间复杂度 \(O(T |S| ...
- 《Typecript 入门教程》 1、类
类 使用class + 类名 即可定义一个类,一个类中通常有3个成员:属性.构造函数.方法: 在类内部引用属性或方法事使用this调用,它表示我们访问的是类的成员. 我们使用new构造了Greeter ...