一、fastDFS概述
fastDFS可以很容易搭建一套高性能的文件服务器集群提供文件上传、下载等服务;其是用c语言编写的一款开源的分布式系统,为互联网量身定制,充分考虑了见冗余备份、负载均衡、线性扩容等机制,并注重高可用,高性能等标志;
-
fastDFS特点
- 应用层的文件系统
- 不能挂载和卸载,也就是不能进行mount操作
-
fastDFS框架中的三个角色
- 追踪器 – tracker
- 存储节点 – storage
- 客户端 – client
-
fastDFS三个角色之间的关系
- Client和Storage主动连接Tracker
- Storage主动向Tracker报告其状态信息
- 磁盘剩余空间
- 文件同步状况
- 文件上传下载次数
- Storage会启动一个单独的线程来完成对一台Tracker的连接和定时报告
- 一个组包含的Storage不是通过配置文件设定的,而是通过Tracker获取到的
二、什么是分布式文件系统
fat32、ntfs、ext3、ext4
三、fastDFS安装
-
下载
- FastDFS开源地址:https://github.com/happyfish100
- 需要下载libfastcommon
-
安装
- 先安装libfastcommon
- 再安装fastdfs
- 安装命令
./make
./make install
-
更改配置文件
cd /etc/fdfs
- 拷贝这三个文件
cp tracker.conf.sample tracker.conf
cp storage.conf.sample storage.con
cp client.conf.sample client.conf
- tracker.conf
- bind_addr = 主机IP
- port = 端口
- base_path = log目录
- client.conf
- base_path = log目录
- tracker_server = tracker服务器IP
- storage.conf
- group_name = 组名,存储节点可以分组
- bind_addr = 存储服务器IP
- base_path = log目录
- store_path_count = 存储目录个数
- store_path0 = 存储目录
- tracker_server = tracker服务器IP及端口
-
启动fastDFS
- 先启动tracker
fdfs_trackerd /etc/fdfs/tracker.conf
- 再启动storage
fdfs_storaged /etc/fdfs/storage.conf
- 最后启动客户端,要用monitor启动
fdfs_monitor /etc/fdfs/client.conf
- 查看启动状态,如下则启动成功
ps aux |grep "fdfs*"
- 先启动tracker
-
查看操作命令(其实就是fastDFS的二进制文件)
ls /usr/bin/fdfs*
- 例如上传文件操作
fdfs_upload_file /etc/fdfs/client.conf filename
- 成功上传后会在配置的相应存储节点生成一个带加密串命名的唯一文件