Docker - 部署 FastDFS(分布式文件系统)
简介
FastDFS 是一个开源的高性能分布式文件系统(DFS)。 它的主要功能包括:文件存储,文件同步和文件访问,以及高容量和负载平衡。主要解决了海量数据存储问题,特别适合以中小文件(建议范围:4KB < file_size <500MB)为载体的在线服务。
FastDFS开源地址: https://hub.docker.com/r/season/fastdfs/
FastDFS 系统有三个角色:跟踪服务器(Tracker Server)、存储服务器(Storage Server)和客户端(Client)。
Tracker Server:跟踪服务器,主要做调度工作,起到均衡的作用;负责管理所有的 storage server和 group,每个 storage 在启动后会连接 Tracker,告知自己所属 group 等信息,并保持周期性心跳。
判断有哪些存储服务器(注册中心)
判断哪个存储服务器的空间较大
判断资源所在的存储服务器(路由)
Storage Server:存储服务器,主要提供容量和备份服务;以 group 为单位,每个 group 内可以有多台 storage server,数据互为备份。
Client:客户端,上传下载数据的服务器,也就是我们自己的项目所部署在的服务器。
1. 下载 fastdfs 镜像
docker pull season/fastdfs
2. 查看fastdfs的端口是否被占用
netstat -aon | grep 22122
3. 关闭防火墙
systemctl stop firewalld
关闭centos 7新防火墙 如下图
find / -name selinux
vim /etc/sysconfig/selinux
4. 执行reboot重启系统
5. 创建tracker服务器的容器
docker run -ti -d --name trakcer -v ~/fastdfs/tracker_data:/fastdfs/tracker/data --net=host season/fastdfs tracker
进入容器,查看tracker地址
docker exec -it trakcer bash
cat /fdfs_conf/storage.conf
6. 创建storage存储服务器
- 指定tracker服务器的地址(通过环境变量)
- storage文件位置 /store_path
docker run -tid --name storage -v ~/fastdfs/storage_data:/fastdfs/storage/data -v ~/fastdfs/store_path:/fastdfs/store_path --net=host -e TRACKER_SERVER:192.168.209.121:22122 season/fastdfs storage
进入storage容器下,将fdfs_conf目录下的storage.conf文件拷贝到root目录下
docker cp storage:/fdfs_conf/storage.conf ~/
编辑storage.conf文件,将地址指上
vim storage.conf
将编辑好的文件再拷贝回去
docker cp ~/storage.conf storage:/fdfs_conf/
重启容器
7. 启动fastdfs客户端
将storage服务器的配置文件拷贝到客户端 fdfs_sh:/fdfs_conf/
docker run -ti -d --name fdfs_sh --net=host season/fastdfs sh
docker cp ~/storage.conf fdfs_sh:/fdfs_conf/
重启容器
8.
- 这时storage存储服务器已注册到trakcer服务器上,开启8888端口,接下来我们就可以实现上传下载文件
引用:https://blog.csdn.net/weixin_43683052/article/details/84792338