fastDFS
1. 组成(三部分)
> 1. application (客户端)
> 2. tackerServer (追踪器)
> 3. storageServer(存储节点)
> 4. 三者之间关系
1. tracker是被动连接,是整个系统的中心
2. storage主动连接tracker, 专门一个线程去连接,把文件写的信息,上传下载等信息对tracker进行汇报
3. client 主动连接tracker,访问追踪器,询问把文件上传到哪个存储结点已经从哪个存储连接下载
2. 集群
1. tacker集群(各个服务器位置相等,相互备份,内容一样)
2. storage集群
> 1. 分组,每组中的扩容是纵向扩容(一组内增加主机)
> 2. 每组中的各台主机内容一样(数据备份),访问数据时是轮询模式(组内容量最小的主机容量是本组最大容量)
> 3. 组数的增加为数据容量的扩容(横向扩容)
> 4. 组间不会通信,组内通信(用来备份)
3. fastDFS 下载
[网址][1]
公共库:
> 1. [libfastcommon1.0.36][2]
> 2. [libevent2.1.8-stable][3]
4. 安装fastDFS已经公共库
> 1. 把三个压缩文件解压
> 2. 先安装libfastcommon
1. cd 进入libfastcommon 文件夹,
2. 执行 ./make.sh && ./make.sh install 安装
> 3. 安装fastdfs
1. cd 进入fastdfs
2. 执行 ./make.sh && ./make.sh install 安装
> 4. 测试是否安装成功
* 命令: fdfs_test
如果打印出版本信息则说明安装成功
5. 配置fastdfs
> 1. 进入/etc/fdfs/
> 2. 修改各配置文件
1. 修改takcer(追踪器)配置文件tacker.conf(要备份)三处:
1. bind_addr=192.168.137.130(本机ip)
2. port=22122未被占用的端口
3. base_path=/home/zyl/fsdf/tracker(没有文件夹,需新建)
2. 修改client(客户端)配置文件client.conf两处
1. base_path=/base_path=/home/zyl/fdfs/client(log日志目录)
2. tracker_server=192.168.137.130:22122(ip 改为自己ip)
3. 修改storage(存储结点)配置文件storage.conf
1. group_name=group // 存储结点的所属组
2. 存储的结点绑定的ip: bind_addr=192.168.137.130
3. 绑定的端口: port=23000
4. 存储日志的目录:base_path=/home/zyl/fdfs/storage
5. 存储路径的个数:store_path_count=1
6. 存储路径: store_path0=/home/zyl/fdfs/storage
7. 链接的tracker(追踪器)的IP和Port: tracker_server=193.169.137.130
6. 启动/检测fasdfs
> 1. 启动tracker: fdfs_trackerd /etc/fdfs/tracker.conf(首先需要启动tracker,因为client 和 storage都需要连接至tracker)
> 2. 启动storage: fdfs_storage /etc/fdfs/storage.conf
> 3. 启动monitor: fdfs_monitor /etc/fdfs/client.conf (可以看到storage的信息)
* 看到信息有ACTIVE说明被激活,成功运行
7. 上传文件
命令:fdfs_upload_file /etc/fdfs/client.conf targetFile
会返回一个一个文件名以及路径字符串,如:group1/M00/00/00/wKiJgl0JHiaANG3wAAAAAAAAAAA8271088
其中:M00是一个虚拟文件目录,其指向:storage的base_path; 文件名是一个文件加密后的加密文件名
8. 下载文件
命令:fdfs_download_file /etc/fdfs/client.conf targetFile
其中:
1. target比如为:group1/M00/00/00/wKiJgl0JHiaANG3wAAAAAAAAAAA8271088
9. 至此fastdfs已经完成了安装、基本的配置以及可以上传下载,fastdfs分布式文件系统可以正常运行