FastDFS 架构
FastDFS 架构包括 Tracker server 和 Storage server。客户端请求 Tracker server 进行文 件上传、下载,通过 Tracker server 调度最终由 Storage server 完成文件上传和下载。
Tracker server 作用是负载均衡和调度,通过 Tracker server 在文件上传时可以根据一些 策略找到 Storage server 提供文件上传服务。可以将 tracker 称为追踪服务器或调度服务 器。
Storage server 作用是文件存储,客户端上传的文件最终存储在 Storage 服务器上, Storageserver 没有实现自己的文件系统而是利用操作系统 的文件系统来管理文件。可以将 storage 称为存储服务器。
FastDFS的安装
安装所需的文件:https://github.com/Lincoln77/fdfs-with-nginx
1 安装fastdfs依赖包
- 解压缩libfastcommon-master.zip
- 进入到libfastcommon-master的目录中
- 执行
./make.sh
- 执行
sudo ./make.sh install
2 安装fastdfs
- 解压缩fastdfs-master.zip
- 进入到 fastdfs-master目录中
- 执行
./make.sh
- 执行
sudo ./make.sh install
3 配置跟踪服务器tracker
sudo cp /etc/fdfs/tracker.conf.sample /etc/fdfs/tracker.conf
- 在/home/python/目录中创建目录 fastdfs/tracker
sudo mkdir –p /home/python/fastdfs/tracker
- 编辑/etc/fdfs/tracker.conf配置文件
sudo vim /etc/fdfs/tracker.conf
修改配置项
base_path=/home/python/fastdfs/tracker
4 配置存储服务器storage
sudo cp /etc/fdfs/storage.conf.sample /etc/fdfs/storage.conf
- 在/home/python/fastdfs/ 目录中创建目录 storage
sudo mkdir –p /home/python/fastdfs/storage
- 编辑/etc/fdfs/storage.conf配置文件
sudo vim /etc/fdfs/storage.conf
修改内容:
base_path=/home/python/fastdfs/storage
store_path0=/home/python/fastdfs/storage
tracker_server=自己虚拟机的ip地址:22122
5.启动tracker 和 storage
sudo service fdfs_trackerd start
sudo service fdfs_storaged start
测试是否安装成功:
1.配置fdfs客户端:
sudo cp /etc/fdfs/client.conf.sample /etc/fdfs/client.conf
- 编辑/etc/fdfs/client.conf配置文件
sudo vim /etc/fdfs/client.conf
修改内容:
base_path=/home/python/fastdfs/tracker
tracker_server=自己虚拟机的ip地址:22122
- 上传文件测试:
fdfs_upload_file /etc/fdfs/client.conf 要上传的图片文件路径
如果返回类似
group1/M00/00/00/rBIK6VcaP0aARXXvAAHrUgHEviQ394.jpg
的文件id则说明文件上传成功