码迷,mamicode.com
首页 > 其他好文 > 详细

分布式存储-FastDFS

时间:2018-02-09 17:34:34      阅读:253      评论:0      收藏:0      [点我收藏+]

标签:http   rem   /etc   ddr   oar   删除   3.1   路径   fdfs   

FastDFS基础:

  是一款开源分布式文件系统。用纯C语言实现

  功能包括:文件存储,文件同步,文件访问(上传,下载)

  解决了大容量存储和负载均衡的问题

服务端有两个角色:

跟踪器   做调度工作、启负载均衡作用   (192.168.4.70)

存储节点  存储、同步和提供存取接口,对文件的数据进行管理(192.168.4.71|72)

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~`

一、装包

fastdfs-nginx-module_v1.16.tar.gz 

FastDFS_v4.06.tar.gz               

libevent-devel-1.4.13-4.el6.x86_6 

libevent-doc-1.4.13-4.el6.noarch.

libevent-headers-1.4.13-4.el6.noa 

nginx-1.7.10.tar.gz    

      

1、配置主控服务器70

 [root@pc70 ~]#  yum -y install gcc gcc-c++

 [root@pc70 ~]# yum -y install libevent

 [root@pc70 ~]# yum -y install libevent-*

 libevent-headers-1.4.13-4.el6.noarch                                

 libevent-devel-1.4.13-4.el6.x86_64                                  

 libevent-doc-1.4.13-4.el6.noarch        

                          

 [root@pc70 ~]# tar -zxf FastDFS_v4.06.tar.gz            解压源码包

 [root@pc70 ~]# cd FastDFS

 [root@pc70 FastDFS]# ./make.sh

 [root@pc70 FastDFS]# ./make.sh install

 [root@pc70 FastDFS]# ls /usr/local/bin/      存放命令的文件

 [root@pc70 FastDFS]# ls /etc/fdfs/ 配置文件


二、

 1、修改配置文件

 [root@pc70 FastDFS]# vim /etc/fdfs/tracker.conf

 22 base_path=/data/fastdfs 指定日志文件目录

 36 store_lookup=0 轮询

 182 use_storage_id = true

 186 storage_ids_filename = storage_ids.conf      id号在这个文件指

[root@pc70 FastDFS]# mkdir -p /data/fastdfs


2、  创建 storage_ids.conf

 [root@pc70 FastDFS]# cp conf/storage_ids.conf /etc/fdfs/

 [root@pc70 FastDFS]# vim /etc/fdfs/storage_ids.conf     存储组和ip地址

 # <id>  <group_name>  <ip_or_hostname>

 100001   group1  192.168.4.71

 100002   group1  192.168.4.72


3、配置节点服务器(70、71)

 安装依赖包、FastDFS

 [root@pc71 ~]# yum -y install gcc gcc-c++ libevent

 [root@pc71 ~]# yum -y install libevent-*

 [root@pc71 FastDFS]# ./make.sh

 [root@pc71 FastDFS]# ./make.sh install

 [root@pc71 FastDFS]# vim /etc/fdfs/storage.conf 

 group_name=group1   指定的组

 37 base_path=/data/fastdfs        日志、数据文件存放目录

 96 store_path_count=1        存储数据路径个数

 85 sync_start_time=00:00   推送起始时间

 89 sync_end_time=23:59   推送结束时间

 100 store_path0=/data/fastdfs       存放数据目录

 109 tracker_server=192.168.4.70:22122           主控服务器ip和端口号

 140 file_distribute_path_mode=0       数据存储数据路径 

 145 file_distribute_rotate_count=100         当第一个文件达到100然后往下一个路径存


节点服务器72

 [root@pc72 ~]# yum -y install gcc gcc-c++ libevent libevent-*

 [root@pc72 ~]#  mkdir -p /data/fastdfs

 [root@pc72 ~]# mount /dev/vdb1 /data/fastdfs

 [root@pc72 ~]# df -h

 [root@pc72 ~]# tar -zxf FastDFS_v4.06.tar.gz

 [root@pc72 FastDFS]# cd FastDFS

 [root@pc72 FastDFS]# ./make.sh && ./make.sh install


修改配置文件

 [root@pc72 FastDFS]# vim /etc/fdfs/storage.conf

 group_name=group1   指定的组

 37 base_path=/data/fastdfs        日志、数据文件存放目录

 96 store_path_count=1        存储数据路径个数

 85 sync_start_time=00:00   推送起始时间

 89 sync_end_time=23:59   推送结束时间

 100 store_path0=/data/fastdfs       存放数据目录

 109 tracker_server=192.168.4.70:22122           主控服务器ip和端口号

 140 file_distribute_path_mode=0       数据存储数据路径 

 145 file_distribute_rotate_count=100          当第一个文件达到100然后往下一个路径存



三、启动服务

3.1   先启主控主机,后启存储节点

[root@pc70 FastDFS]# cp init.d/fdfs_trackerd /etc/init.d/  创建启动脚本

[root@pc70 FastDFS]# chmod +x /etc/init.d/fdfs_trackerd 

[root@pc70 FastDFS]# chkconfig --add fdfs_trackerd         添加系统命令

[root@pc70 FastDFS]# service fdfs_trackerd start         启动服务

[root@pc70 /]# netstat -pantu | grep :22122            查看端口号

tcp        0      0 0.0.0.0:22122               0.0.0.0:*                   LISTEN      3243/fdfs_trackerd  

tcp        0      0 192.168.4.70:22122          192.168.4.71:53060          ESTABLISHED 3243/fdfs_trackerd  

tcp        0      0 192.168.4.70:22122          192.168.4.72:40489          ESTABLISHED 3243/fdfs_trackerd  


【节点服务器 71】

[root@pc71 FastDFS]# cp init.d/fdfs_storaged /etc/init.d/

[root@pc71 FastDFS]# chmod +x /etc/init.d/fdfs_storaged 

[root@pc71 FastDFS]# /etc/init.d/fdfs_storaged start 生成文件

[root@pc71 FastDFS]# netstat -pantu | grep :23000

tcp        0      0 0.0.0.0:23000               0.0.0.0:*                   LISTEN      3198/fdfs_storaged  

tcp        0      0 192.168.4.71:49208          192.168.4.72:23000          ESTABLISHED 3198/fdfs_storaged  

tcp        0      0 192.168.4.71:23000          192.168.4.72:60515    

      

【节点服务器 72】

[root@pc72 FastDFS]# cp init.d/fdfs_storaged /etc/init.d/

[root@pc72 FastDFS]# chmod +x /etc/init.d/fdfs_storaged 

[root@pc72 FastDFS]# /etc/init.d/fdfs_storaged start

[root@pc72 FastDFS]# netstat -pantu | grep 23000

tcp        0      0 0.0.0.0:23000               0.0.0.0:*                   LISTEN      4364/fdfs_storaged  

tcp        0      0 192.168.4.72:60515          192.168.4.71:23000          ESTABLISHED 4364/fdfs_storaged  

tcp        0      0 192.168.4.72:23000          192.168.4.71:49208          ESTABLISHED 4364/fdfs_storaged  


四、客户端访问 主控服务器 验证配置

 1、提供访问命令:上传文件的命令,下载文件的命令

 [root@room1pc33 桌面]# mkdir /root/bin

 [root@pc70 /]# scp /usr/local/bin/fdfs_test 192.168.4.254:/root/bin/ 测试的命令

 [root@pc70 /]# scp /usr/local/bin/fdfs_upload_file 192.168.4.254:/root/bin/

 [root@pc70 /]# scp /usr/local/bin/fdfs_download_file 192.168.4.254:/root/bin/

 [root@pc70 /]# scp /usr/local/bin/fdfs_delete_file 192.168.4.254:/root/bin/

 fdfs_test 测试

 fdfs_upload_file 上传

 fdfs_download_file      下载

 fdfs_delete_file 删除

 [root@room1pc33 桌面]# ls /root/bin/

 fdfs_delete_file  fdfs_download_file  fdfs_test  fdfs_upload_file


2、连接主控节点主机的配置文件 client.conf

 [root@room1pc33 桌面]# mkdir /etc/fdfs

 [root@pc70 ~]# scp /etc/fdfs/client.conf 192.168.4.254:/etc/fdfs/

 [root@room1pc33 桌面]# vim /etc/fdfs/client.conf

  10 base_path=/data/fastdfs

  14 tracker_server=192.168.4.70:22122

 [root@room1pc33 桌面]# mkdir -p /data/fastdfs


3、上传文件

#fdfs_test /etc/fdfs/client.conf upload install.log

[root@room1pc33 桌面]# head -3 /etc/passwd > /root/user.txt

[root@room1pc33 桌面]# fdfs_test /etc/fdfs/client.conf upload /root/user.txt


显示放在72主机上的名字

group_name=group1, ip_addr=192.168.4.72, port=23000

storage_upload_by_filename

group_name=group1, remote_filename=M00/00/00/wKgESFpdK6aATl9fAAAAaejzMko523.txt

file timestamp=2018-01-16 06:31:02

file size=105

file crc32=3908252234

file url:

http://192.168.4.70:8080/group1/M00/00/00/wKgESFpdK6aATl9

在节点服务器上查看

[root@pc72 00]# cat /data/fastdfs/data/00/00/wKgESFpdK6aATl9fAAAAaejzMko523.txt

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin


[root@pc71 FastDFS]# cat /data/fastdfs/data/00/00/wKgESFpdK6aATl9fAAAAaejzMko523.txt

root:x:0:0:root:/root:/bin/bash

bin:x:1:1:bin:/bin:/sbin/nologin

daemon:x:2:2:daemon:/sbin:/sbin/nologin


上传图片                                           

[root@room1pc33 桌面]# fdfs_upload_file /etc/fdfs/client.conf  /root/tedu.jpg

group1/M00/00/00/wKgER1pdLwOAdJYjAACwEV-ILDc279.jpg

查看

[root@pc71 FastDFS]#ls /data/fastdfs/data/00/00/wKgER1pdLwOAdJYjAACwEV-ILDc279.jpg 

/data/fastdfs/data/00/00/wKgER1pdLwOAdJYjAACwEV-ILDc279.jpg


[root@pc72 FastDFS]#ls /data/fastdfs/data/00/00/wKgER1pdLwOAdJYjAACwEV-ILDc279.jpg 

/data/fastdfs/data/00/00/wKgER1pdLwOAdJYjAACwEV-ILDc279.jpg


分布式存储-FastDFS

标签:http   rem   /etc   ddr   oar   删除   3.1   路径   fdfs   

原文地址:http://blog.51cto.com/13560729/2070667

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!