FastDFS分布式文件系统集群
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了FastDFS分布式文件系统集群相关的知识,希望对你有一定的参考价值。
4.1 架构图
4.2环境搭建步骤
搭建一个FastDFS分布式文件系统集群,推荐至少部署6个服务器节点
4.2.1配置两个tracker server服务器
为了方便操作,我们再启动一次Xshell,一个Xshell操作Tracker,另一个操作Storage,
将Tracker和Storage分开
Ø 把/etc/fdfs目录下的配置文件.sample后缀都去掉
Ø 修改两个tracker服务器的配置文件:
tracker.conf: 参照1.2.2
4.2.2配置四个storage server服务器
每两个storage server为一组,共两个组(group1 和 group2),一个组内有两个storage server
(1) 第一组group1的两个storage server(修改storage.conf配置文件
base_path=/opt/fastdfs/storage #storage存储数据目录
group_name=group1 #设置组名称
tracker_server=192.168.235.128:22122
tracker_server=192.168.235.129:22122#注册当前存储节点的跟踪器地址,多个tracker就配置多行
(2)第二组的两个storage也按照相同的步骤操作;唯一的区别是group_name=group2
可以在桌面上对第一个组的storage文件进行修改,将组名修改为group2,然后上传覆盖
至此,一个FastDFS的分布式文件系统集群就搭建好了。
(3)注意:配置文件中不要出现中文,另外别忘了创建配置文件中指定的目录
(4)启动两个tracker,再启动四个storage
(5)关闭6个Linux防火墙
4.2.3部署Http访问FastDFS上的文件
(1)先完成4个storage server的Nginx访问
这4个Nginx需要去fastDFS找对应的文件,所以需要安装FastDFS的Nginx扩展模块
参照3.3进行安装
A、配置带有FastDFS扩展模块的Nginx
1、在四个storage server上安装nginx,并且加入FastDFS扩展模块;
2、修改两组4个storage的nginx扩展模块配置文件 mod_fastdfs.conf
base_path=/opt/fastdfs/nginx_mod #保存日志目录(需提前创建)
tracker_server=192.168.230.129:22122 #tracker服务器的IP地址以及端口号
tracker_server=192.168.230.130:22122
group_name=group1 #当前服务器的group名,第二组应配置为group2
url_have_group_name=true #文件url中是否有group名
store_path_count=1 #存储路径个数,需要和store_path个数匹配(一般不用改)
store_path0=/opt/fastdfs/storage/files #存储路径
B、第一组的第二台和上面的配置一样
A、 第二组的两台只需要把group_name=group2即可
B、 至此,mod_fastdfs.conf就配置好了。
(2) 配置两组4个storage的nginx拦截请求路径:
修改/usr/local/nginx_fdfs/conf/nginx.conf配置文件。
location ~ /group[1-9]/M0[0-9]
ngx_fastdfs_module;
至此4个storage服务器上的Nginx就搭建配置OK了,
然后可以进行测试:
重启storage,启动Nginx
http://192.168.119.128:80/group1/M00/00/00/wKh3jVx6FUCARyK2AAAANaS4cxw338.txt http://192.168.92.132:80/group1/M00/00/00/wKhchFv7xQeAQbrBAAAALDPVPvc081.txt
http://192.168.92.133:80/group1/M00/00/00/wKhchFv7xQeAQbrBAAAALDPVPvc081.txt
http://192.168.92.134:80/group1/M00/00/00/wKhchFv7xQeAQbrBAAAALDPVPvc081.txt
注意:每一台都可以访问到,就算是当前组中没有改文件,因为向浏览器中发送请求的时候
Ø 交给Nginx进行location匹配
Ø 匹配上之后调用FastDFS的扩展模块
Ø 扩展模块会读取扩展模块配置文件mod_fast.conf
Ø 通过扩展模块配置文件,找到对应的Tracker,从而找到对应的文件
(3)在两个tracker server安装Nginx
这两个Nginx只需要做负载均衡,不要找文件,所以不需要安装扩展模块
上传安装包到/opt/software 目录下。
cd /opt/software;
cd /opt/software/nginx-1.15.10;
./configure –prefix=/usr/local/nginx_fdfs;
make;
make install;
(4)配置两个tracker server服务器上的Nginx访问
修改/usr/local/nginx_fdfs/conf/nginx.conf配置文件。
部署配置nginx负载均衡:
upstream fastdfs_storage_server
server 192.168.92.131:80;
server 192.168.92.132:80;
server 192.168.92.133:80;
server 192.168.92.134:80;
#nginx拦截请求路径:
location ~ /group[1-9]/M0[0-9]
proxy_pass http://fastdfs_storage_server;
至此,两个tracker服务器的Nginx就搭建配置OK了。
启动两个tracker服务器的Nginx进行测试。
http://192.168.92.129:80/group1/M00/00/00/wKhchFv7xQeAQbrBAAAALDPVPvc081.txt
http://192.168.92.130:80/group1/M00/00/00/wKhchFv7xQeAQbrBAAAALDPVPvc081.txt
(5)署前端用户访问入口服务器,该Nginx负载均衡到后端2个tracker server(暂时不需要部署)
这个Nginx也只需要做负载均衡,不要找文件,所以不需要安装扩展模块
可以对Windows上的的Nginx进行配置
部署配置nginx负载均衡:
upstream fastdfs_tracker_server
server 192.168.92.129:80;
server 192.168.92.130:80;
#nginx拦截请求路径:
location ~ /group[1-9]/M0[0-9]
proxy_pass http://fastdfs_tracker_server;
访问:http://127.0.0.1:80/group1/M00/00/00/wKhchFv7xQeAQbrBAAAALDPVPvc081.txt
至此,一个三层结构的Nginx访问架构就搭建配置OK了。为了保证高可用性,一般在入口出,会添加一个备用Nginx上,中间通过一个keepAlive软件连接。
**最后,为了让服务能正常连接tracker,请关闭所有机器的防火墙:**
systemctl status firewalld
systemctl disable firewalld
systemctl stop firewalld
以上是关于FastDFS分布式文件系统集群的主要内容,如果未能解决你的问题,请参考以下文章