Linux之使用MogileFS分布式文件系统并使用nginx实现反向代理
MogileFS是一套高效的文件自动备份组件,由Six Apart开发,广泛应用在包括LiveJournal等web2.0站点上。
MogileFS的特性:
工作在应用层,无单点,自动文件复制(复制的最小单位是class,而不是文件),传输中立且使用nfs或者http协议进行传输。
MogileFS的结构组成:
tracker:是mogilefs的核心,是一个调度器,通过数据库来保存元信息,包括daemon,class,host等信息,主要职责:监控后端mogstore节点,并指示store节点完成数据的添加,删除,查询,及节点之间的复制.
mogstore:实际数据的存储位置,通常伪一个http服务器.
database:用来保存节点的全局信息.
1.安装MogileFS
a.下载MogileFS
MogileFS-Server:https://github.com/mogilefs/MogileFS-Server
MogileFS-Utils:https://github.com/mogilefs/MogileFS-Utils
perl-MogileFS-Client:https://github.com/mogilefs/perl-MogileFS-Client
b.安装:
将文件解压并进入文件内
[root@clone3 nginx-1.11.12]# make Makefile.PL
[root@clone3 nginx-1.11.12]# make && make install
[root@clone3 nginx-1.11.12]# yum install perl-IO-AIO123123
2.配置文件讲解
参数解答: 总用量 8
3.启动并测试
1.创建/var/run/mogilefsd目录并修改属组属主
[root@Master mogilefs]# mkdir -p /var/run/mogilefsd
[root@Master mogilefs]# chown -R mogilefs.mogilefs /var/run/mogilefsd/
2.创建/mog/mogdata目录并修改属组属主
[root@Master mogilefs]# mkdir -p /mog/mogdata
[root@Master mogilefs]# chown -R mogilefs.mogilefs /mog/mogdata/
3.启动mogilefsd进程和mogstored进程
[root@Master mogilefs]# service mogilefsd start
Starting mogilefsd
[root@Master mogilefs]# service mogstored start
Starting mogstored
**此处的启动脚本是使用rpm包安装,并且自带的,一般使用make安装的没有服务脚本**
4.使用管理工具配置mogstord节点主机
**文件实际访问位置**
5.使用浏览器访问
这样一个mogilefs分布式存储就设置好了,只是mogilefsd进程和mogstored进程在统一主机上。
6.负载均衡设计结构
7.使用nginx实,现反向代理
使用nginx反向代理mogilefs时,要用到第三方模块在能使实现代理,nginx身不支持mogilefs的代理,下载模块快为nginx_mogilefs_module,下载地址:http://www.grid.net.ru/nginx/download/nginx_mogilefs_module-1.0.4.tar.gz
**详细参数请参考官方文档:http://www.grid.net.ru/nginx/mogilefs.en.html**
8.配置两台mogilefs主机
在配置两台主机是,mogilefsd进程会在数据库中读取mogstord节点的信息,在配置时按照上述阐述仅可以配置,建议在一个mogilefsd节点上配置,另一个节点可以在数据库中读到。
9.测试结果