主页 > 软件开发  > 

记录一次FastDFS内部文件迁移过程

记录一次FastDFS内部文件迁移过程

场景:dockr部署下的一个DFS环境,切换环境将原DFS内的所有文件全部迁移走,老版本的镜像包现不可使用,所以重新搭建并迁移外挂包下的所有文件

一、定位存储路径及备份

​确定容器内存储路径​ 根据使用的Docker镜像不同,默认存储路径可能为:

/var/fdfs(常见于morunchang/fastdfs镜像) /var/local/fdfs(部分自定义镜像映射到宿主机路径如~/fastdfs) 通过docker run命令的-v参数可查看宿主机映射路径,例如:-v /data/fastdfs/storage:/var/fdfs ​备份文件​ 使用docker cp命令将容器内文件复制到宿主机本地,或直接备份映射的宿主机目录:

bash docker cp <容器ID>:/var/fdfs/data /本地备份路径 # 备份数据文件 cp -r /宿主机映射路径/* /备份目录 # 直接复制宿主机映射目录

二、迁移部署与配置调整

​新环境部署FastDFS​ 参考Docker部署流程:

拉取镜像(如delron/fastdfs或morunchang/fastdfs) 启动Tracker服务: bash docker run -d --name tracker --net=host -v /新存储路径/tracker:/var/fdfs delron/fastdfs tracker 启动Storage服务并关联Tracker: bash docker run -d --name storage --net=host -e TRACKER_SERVER=新IP:22122 -v /新存储路径/storage:/var/fdfs delron/fastdfs storage ​配置文件同步​

修改Storage的storage.conf:更新tracker_server为新环境IP,例如: ini tracker_server = 新IP:22122 同步client.conf中的Tracker地址,确保客户端指向正确节点。 ​数据迁移与恢复​

将备份的data目录复制到新容器的映射路径(如/新存储路径/storage/data) 若涉及IP变更,需修改sync目录下的.mark文件(如将旧IP标记替换为新IP)

三、服务验证与测试

​重启服务​

bash docker restart tracker storage systemctl restart docker # 确保Docker服务正常 ​功能测试​

​上传测试:进入容器执行上传命令验证存储功能: bash docker exec -it storage /usr/bin/fdfs_upload_file /etc/fdfs/client.conf /tmp/test.txt ​访问测试:通过Nginx代理访问文件URL(如http://新IP:8888/group1/M00/…) ​日志检查​ 查看Tracker和Storage日志,排查路径或网络问题:

bash docker logs tracker # 检查调度服务状态 docker logs storage # 查看存储节点同步情况

标签:

记录一次FastDFS内部文件迁移过程由讯客互联软件开发栏目发布,感谢您对讯客互联的认可,以及对我们原创作品以及文章的青睐,非常欢迎各位朋友分享到个人网站或者朋友圈,但转载请说明文章出处“记录一次FastDFS内部文件迁移过程