分布式存储——FASTDFS

分布式存储——FASTDFS

Scroll Down

分布式存储——FASTDFS

1.什么是fastdfs

fastDFS是一个开源的轻量级分布式文件系统,它对文件进行管理,功能包括:文件存储、文件同步、文件访问(文件上传、文件下载)等,解决了大容量存储和负载均衡的问题。特别适合以文件为载体的在线服务,如相册网站、视频网站等等。

2.fastdfs的架构图

image.png

3.fastdfs时序图(以上传为例)

image.png

4.fastdfs基于liunx的安装

1.下载

image.png
github地址:https://github.com/happyfish100

2.fastdfs在liunx安装

1.安装相关依赖

yum install -y gcc gcc-c++
yum -y install libevent

2.libfastcommon、fastdfs-6.04安装

1.解压
2.编译

在根目录: ./make.sh

3.安装

在根目录: ./make.sh install

4.拷贝fastdfs-6.04配置文件

进入fastdfs-6.04的conf目录
image.png

cp *  /etc/fdfs/
5.tracker的配置(tracker与storage存在心跳检测,应当先启动tracker)
cd /etc/fdfs/

vim  tracker.conf

主要修改:
image.png
启动:

/usr/bin/fdfs_trackerd /etc/fdfs/tracker.conf
5.storage的配置
cd /etc/fdfs/

vim  storage.conf

相关配置说明:
image.png
主要修改

gruop_name 组名
base_path 基本路径
store_path0 存储路径
traker_server tracker的地址

启动:

/usr/bin/fdfs_storaged /etc/fdfs/storage.conf

验证进程:

# 检查是否启动成功, 启动成功之后会看见
ps aux|grep tracker
ps aux|grep storage

image.png
本地测试验证:

cd /etc/fdfs/
vim  client.conf
base_path
traker_server

cd /usr/bin/
ls fdfs_*
/usr/bin/fdfs_test /etc/fdfs/client.conf upload 本地图片地址

上传成功:

image.png

3.使用Nginx访问fastdfs资源

安装nginx加入对应模块 注意要提前mkdir var/temp/nginx -p

 ./configure \--prefix=/usr/soft/nginx-1.16.1  \--pid-path=/var/run/nginx/nginx.pid \--lock-path=/var/lock/nginx.lock \--error-log-path=/var/log/nginx/erro.log \--http-log-path=/var/log/nginx/access.log \--with-http_gzip_static_module \--http-client-body-temp-path=/var/temp/nginx/client  \--http-proxy-temp-path=/var/temp/nginx/proxy \--http-fastcgi-temp-path=/var/temp/nginx/fastcgi \--http-uwsgi-temp-path=/var/temp/nginx/uwsgi \--http-scgi-temp-path=/var/temp/nginx/scgi \--add-module=/usr/local/fastdfs/fastdfs-nginx-module-1.22/src/

make && make install

配置fastdfs-nginx-module-1.22的src下的config,将local删除掉(Nginx释放的文件为/usr/include下):
image.png
配置Nginx:image.png
将fastdfs-nginx-module-1.22的src的mod_fastdfs.conf拷贝到 /etc/fdfs:

cp mod_fastdfs.conf /etc/fdfs

image.png
vim mod_fastdfs.conf
主要修改:

base_path
traker_server
gruop_name
url_have_groub_name
store_path0

image.png
image.png
启动Nginx:
image.png

5.总结

个人在Nginx安装模块的是出了问题,主要1.6x版本Nginx不支持热部署插件,还
是重新安装了一个出现了一堆配置的问题 主要是路径重复的问题,报统一路径的文件,见:
https://blog.csdn.net/weixin_39588754/article/details/87873612

祝君好梦!