千家信息网

分布式文件系统fastDFS部署

发表于:2024-11-17 作者:千家信息网编辑
千家信息网最后更新 2024年11月17日,一、部署环境:(CentOS 6.9)tracker server:10.10.1.105storage server:10.10.1.106 10.10.1.107client:10.10.1.10
千家信息网最后更新 2024年11月17日分布式文件系统fastDFS部署

一、部署环境:(CentOS 6.9)

tracker server:10.10.1.105

storage server:10.10.1.106 10.10.1.107

client:10.10.1.105


二、FastDFS: 开源的轻量级分布式文件系统;

三个角色:

tracker server :跟踪服务器,调度,在内存中记录所有存储组和存储服务器的状态信息; tracker.conf

storage server :存储服务器,文件(data)和文件属性(metadata),一组服务器; storage.conf

client :客户端,业务请求发起方,通过专用接口基于TCP协议与tracker以及storage server进行交互;client.conf

存储:

group_name/M##/&&/&&/file_name

group_name :存储组的组名;上传完成后,需要客户端自行保存;

M## :服务器配置的虚拟路径,与磁盘选项store_path#对应;

两级以两位16进制数字名字的目录;

文件名:与原文件名并不相同;由storage server根据特定信息生成,文件名包含:源存储服务器的IP地址、文件创建时间戳、文件大小、随机数和文件扩展名等;


三、安装

1、安装依赖包libfastcommon

2、安装fastDFS

3、需要关闭iptables、selinux

安装方式一:

# git clone https://github.com/happyfish200/fastdfs.git

# git clone https://github.com/happyfish200/libfastcommon.git

# git clone https://github.com/happyfish200/fastdfs-nginx-module.git


mv libfastcommon libfastcommon-1.0.36

tar zcf libfastcommon-1.0.36.tar.gz libfastcommon-1.0.36

mv fastdfs fastdfs-5.0.10

tar zcf fastdfs-5.0.10.tar.gz fastdfs-5.0.10


mkdir rpmbuild/{SOURCES,SPECS} -pv

cp /tools/libfastcommon-1.0.36.tar.gz rpmbuild/SOURCES/

cp /tools/fastdfs-5.0.10.tar.gz rpmbuild/SOURCES/


cp /tools/libfastcommon-1.0.36/libfastcommon.spec rpmbuild/SPECS/

cp /tools/fastdfs-5.0.10/fastdfs.spec rpmbuild/SPECS/


yum install rpm-build

rpmbuild -ba libfastcommon.spec

rpmbuild -ba fastdfs.spec

生成rpm包直接安装即可

安装方式二:

tar xzf libfastcommon_v1.23.tar.gz

cd libfastcommon

./make.sh

./make.sh install


tar xzf FastDFS_v5.08.tar.gz

cd FastDFS

./make.sh

./make.sh install


tracker和storage配置完成后测试上传:


# fdfs_upload_file ./client.conf /usr/share/backgrounds/centos_2048x1536_logoonly.jpg

group1/M00/00/00/CgoBalkG2PmAThTWAAD_7aV8rDY985.jpg


四、安装fastdfs-nginx-module模块,通过http协议访问文件

注:以下两个文件需要复制到storage的目录

cp fastdfs-5.0.10/conf/{http.conf,mime.types} /etc/fdfs/


安装此模块需要重新编译nginx

1、./configure --user=www --group=www --prefix=/usr/local/nginx --with-http_stub_status_module --with-http_ssl_module --with-http_gzip_static_module --with-http_sub_module --add-module=/root/soft/fastdfs-nginx-module/src


2、nginx.conf 文件加入以下配置

location ~ /group[0-9]+/M00 {

root /home/fastdfs/data;

ngx_fastdfs_module;

}

3、ln -s /home/fastdfs/data /home/fastdfs/data/M00


4、配置mod_fastdfs.conf文件

cp /root/soft/fastdfs-nginx-module/src/mod_fastdfs.conf /etc/fdfs/

mod_fastdfs.conf重点配置项:

tracker_server=10.10.1.105:22122

url_have_group_name = true ***开启组名访问

group_count = 1

[group1]

group_name=group1

storage_server_port=23000

store_path_count=1

store_path0=/home/fastdfs

5、重载nginx服务器

以组名访问时:

location ~ /group[0-9]+/M00 {

root /home/fastdfs/data;

ngx_fastdfs_module;

}

https://cache.yisu.com/upload/information/20200309/32/49826.jpg


文件 服务器 服务 存储 配置 文件名 信息 客户 客户端 方式 模块 目录 生成 分布式 系统 相同 三个 业务 两个 内存 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 上海久乐互联网科技有限公司 苏州交易软件开发哪家好 数据库查询 b 软件开发关键阶段的关键目标 南京华为鲲鹏服务器批发供应 网络安全知识微课笔记 幼儿园网络安全制度 怎么利用网络技术追回被骗的钱 网络安全和信息化专业学什么 图书检索数据库 网络安全阀门安装图 什么是代练服务器 数据库常见的问题 软件开发工程师目标分析 三维软件开发难度 数据库验证是否具有无损连接性 无法解释服务器dns 学习网络安全知识以后的感想 重庆潼南免费生鲜软件开发 胶州游戏软件开发推荐 设计用户管理权限数据库 闵行区微型软件开发服务是什么 局域网内如何访问共享服务器 网络监控需要无线网络技术 数据库er模型是什么工具 深圳出口外贸软件开发 图文识别 软件开发 各类数据库中的文献是一样的吗 淄川模具软件开发报价 软件开发和维护费用
0