FastDFS分布式文件系统
开源、轻量级、分布式文件系统、c语言编写。
功能:文件存储、文件同步、文件访问(上传,下载)
解决了:大容量存储、均衡负载、冗余备份、线性扩容问题
FastDFS架构包括Tracker server 和 Storage server。
Tracker:调度策略,管理集群
Storager:文件存储,分成多个组,每个组内不同存储器保存内容一样。(有同步线程)
文件上传流程:
文件ID由服务器返回给客户端,客户端保存该信息。
文件ID是访问文件的索引信息。文件名是由存储服务器根据特定信息生成。
特点信息包含:源存储服务器IP,文件创建时间戳,文件大小,秘钥,文件拓展名等。
在Dcoker中安装FastDFS
1 安装镜像
安装已有镜像压缩包:docker load -i 文件名.tar
下载注册中心镜像:docker image pull delron/fastdfs
2 运行tracker
开启tracker服务:
docker run -dti --network=host --name tracker -v /var/fdfs/tracker:/var/fdfs delron/fastdfs tracker
参数说明:
d后台运行、t在最后指定命令、i交互
–network=host:容器中的软件需要联网,使用当前主机的网络
–name tracker : 指定容器的名称
-v /var/fdfs/tracker:/var/fdfs:指定目录映射关系,格式为-v 本地目录:容器目录
delron/fastdfs:镜像名称
tracker:上面指定了t,在容器运行后执行此命令
当前为tracker,表示容器启动后,运行tracker命令,即启动软件tracker
2 运行storage
开启storage服务:
docker run -dti --network=host --name storage -e TRACKER_SERVER=本机ip:22122 -v /var/fdfs/storage:/var/fdfs delron/fastdfs storage
参数说明:
-e TRACKER_SERVER=本机ip:22122:指定环境变量,fastdfs不允许本机ip写为127.0.0.1;当前是指定tracker服务器的ip和端口;里面运行了nginx,监听8888端口