作者:石头,发布日期:2016-03-18
阅读:1252;评论:0

本次搭建FastDFS使用的版本是V5.0.8

FastDFS是一个分布式文件系统,具体请参照百度百科

http://baike.baidu.com/link?url=d4wiXF7cddWWHE6-IwcuiZmm1U-_eORJ6PI198fKXBJ9yb4Yr-EcyP5XfZMPiOPe5H9anILv5W2YlDxyuyRpyK

下载地址:https://sourceforge.net/projects/fastdfs/files/

安装源码也仅仅只有几百KB而已,没错,只有几百KB。

安装可以参考压缩包内的INSTALL文件。


实验是需要搭建一个FastDFS环境


所用软件:

FastDFS_v5.08.tar.gz

libfastcommon-master.zip

 

另外还有nginx模块,本次实验不演示

fastdfs-nginx-module.tar.gz

nginx-1.6.2.tar.gz


特别注意:前两个步骤需在每个节点上都安装成功。

 123.png

步骤1

1、安装libfastcommon-master.zip

在每一台服务器节点(所有trackerstorage)上都解压并安装

解压之后进入libfastcommon-master目录

unzip  libfastcommon-master.zip

cd libfastcommon-master

./make.sh
./make.sh install

如果在执行的时候提示没权限,可以更改make.sh的执行权限。

chmod 777 make.sh

执行结果如下,可以看到libfastcommon.so文件

安装到了/usr/lib64/libfastcommon.so/usr/lib/libfastcommon.so

mkdir -p /usr/lib64

mkdir -p /usr/lib

install -m 755 libfastcommon.so /usr/lib64

install -m 755 libfastcommon.so /usr/lib

mkdir -p /usr/include/fastcommon

 

但是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 

 

 

步骤二

2.安装FastDFS主程序
这个版本似乎已经不需要libevent依赖
在每台服务器,解压缩FastDFS_v5.08.tar.gz,进入FastDFS目录,安装主程序。
执行

tar –zxvf  FastDFS_v5.08.tar.gz

cd FastDFS
./make.sh (
同上面相同,如果没有权限就改权限  chmod 777 make.sh)
./make.sh install
如果上步的软链接创建成功,就应该会非常顺利。

 

---------------以上两个步骤需在每个节点上都安装成功。

 

 

3. 配置Tracker1服务器(192.168.1.172)     

复制配置文件模板

cp /etc/fdfs/ tracker.conf.sample /etc/fdfs/ tracker.conf
vim /etc/fdfs/tracker.conf文件,修改如下内容
base_path=/tracker(
此目录如果不存在可能需手动建立mkdir /tracker)
然后执行命令开启此服务
fdfs_trackerd /etc/fdfs/tracker.conf start(
关闭服务用stop即可)

同上面步骤一样,配置Tracker2服务器(192.168.1.173)并开启服务。

 

 

配置Storage1服务器(192.168.1.172)

复制配置文件模

cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
vim /etc/fdfs/storage.conf
group_name=group1(
组名可以自己定义)
base_path=/storage(
此目录如果不存在可能需手动建立mkdir /storage)
store_path0=/storage
tracker_server=192.168.1.172:22122

tracker_server=192.168.1.173:22122

(如果有多个tracker,如上直接添加一行并写上ip即可)

然后执行命令开启此服务
fdfs_storaged /etc/fdfs/storage.conf start(
关闭服务用stop即可)

同上面步骤一样,配置Storage2服务器(192.168.1.173)并开启服务。

所有storage都需要配置。

注意:storage.conf里面group_name=group1,此配置字段的意思如下

如果组名相同,则一个文件会存储多份,分别放在组名相同的storage里面

如果组名不相同,则意思是增加storage节点以便增加存储空间。

另外还有store_path0=/storage字段,如果节点有多个硬盘,可以添加多个路径以便增加存储空间。以0开始,需增加只需增加一行store_path1=/storage,以此类推。

存储目录可以自己建立。

 

 

执行测试,修改Tracker1或者tracker2服务器的配置文件/etc/fdfs/client.conf
复制配置文件模板

cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
vim /etc/fdfs/client.conf

tracker_server=192.168.1.172:22122

tracker_server=192.168.1.173:22122

(如果有多个tracker,如上直接添加一行并写上ip即可)
执行命令上传文件
fdfs_upload_file /etc/fdfs/client.conf /FastDFS_v5.08.tar.gz 
返回结果如下,说明成功

group1/M00/00/00/wKgBHlQvrQGARrS6AAU9tcFAzok.tar.gz

下载文件:fdfs_dwonload_file /etc/fdfs/client.conf group1/M00/00/00/wKgBHlQvrQGARrS6AAU9tcFAzok.tar.gz

删除文件:fdfs_delete_file /etc/fdfs/client.conf group1/M00/00/00/wKgBHlQvrQGARrS6AAU9tcFAzok.tar.gz

另外还可以通过fdfs_monitor /etc/fdfs/client.conf 来查看整个集群的状态。



另外,如果要开启http支持,需修改/etc/fdfs/client.conf文件最后一行

vim /etc/fdfs/client.conf

最后一行内容如下

##include http.conf

去掉一个#号即可,即修改后的最后一行为(#include http.conf)

此外,还需要去安装目录conf目录复制http.conf/etc/fdfs/

cp /usr/local/src/FastDFS/conf/http.conf  /etc/fdfs/ http.conf

至此配置结束。


 

Tracker可以只有一个,为了避免压力过大,可以配2个或者多个,一个挂掉,另外的会立刻补上进入工作状态。

Storage也可以只有一个,但是为了数据的安全,建议多个并且同组名(组名相同代表备份)

storage节点空间不够用,可以增加硬盘,即增加store_path

加了硬盘空间还不够用,增加另外的物理机storage节点,组名不同即可。

Trackerstorage可以在同一台物理机,也可以在不同物理机。

更多配置内容请参照配置文件注释。


评论区

发表评论

必填

选填

选填

必填

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。