MogileFS 部署(测试)文档

本文大部分来自网络及该文章:http://www.admindigest.com/4/mogilefs%E5%AE%89%E8%A3%85%E4%B8%8E%E9%85%8D%E7%BD%AE/

 
 

如果有侵犯作者权益和版权,请通知,我会及时删除,再此表示歉意。

1,MogileFS 简介

2,MogileFS 部署

3,MogileFS 测试

4,MogileFS 总结

MogileFS是一种分布式文件存储系统。可支持文件自动备份的功能,提供高可用性和高可扩展性。MogileFS是用Perl语言写的,由于有依赖模块的问题,安装过程中需要其他库和模块的支持,安装不算容易。Mogilefs不支持对一个文件内部的随机或顺序读写,因此只适合做一部分应用,如图片服务,静态HTML服务等,这些应用在文件写入后基本上不需要对文件进行修改,但是可以生成一个新的文件覆盖原有文件。

Mogilefs分为如下几部分:

1、数据库部分数据库保存了Mogilefs的所有元数据,一般使用MySQL,可以单独拿数据库服务器来做,也可以跟其他程序跑在一起。可以用mogdbsetup程序来初始化数据库。数据库部分非常重要,因为一个MogileFS系统的所有Tracker都必须指向同一个数据库,因此如果数据库出现问题,那么整个MogileFS系统将处于不可用状态,因此数据库最好采用HA结构,如MySQL主从复制架构,这样可以降低数据库出现问题对MogileFS系统的影响。

2、跟踪器(Tracker)mogilefsd即trackers程序,类似mogilefs的wiki上介绍 的,trackers做了很多工作,主要有以下几个:Replication: 机器间复制文件Deletion:从命名空间删除是立即的,从文件系统删除是异步的QueryWorker: 响应客户端的请求Reaper:在磁盘失败后将文件复制请求重新放到队列中Monitor:监测主机和设配的健康度和状态Tracker是访问MogileFS的入口,所有系统管理相关的操作都要通过其中的某个trackers完成,应用系统的一些操作也要通过trackers,因此一个高业务量的MogileFS系统最好同时运行多个trackers来做负载均衡。

3、存储节点(Storage)mogstored程序的启动将使本机成为一个存储节点。mogstored启动后,便可以通过mogadm增加这台机器到系统中。一台机器可以只运行一个 mogstored作为存储节点即可,也可以同时运行其他程序。存储节点下面还需要定义设备(device),每个设备都有一个唯一的ID编号,设备也是用mogadm添加到MogileFS系统中的。

4、工具主要就是mogadm,mogtool这两个工具了,用来在命令行下控制整个mogilefs系统以及查看状态等等。5、客户端(Client)客户端通过接口访问mogilefs系统,对整个系统进行文件读写操作。这里的接口是MogileFS提供的接口。6,测试环境Tracker IP:192.168.0.247Storage IP:192.168.0.212,192.168.0.215MySQL IP:192.168.0.245

2 安装

2.1安装前准备Linux perl使用CPAN安装如下必要的Perl库,安装命令如下:

cpan -i Danga::Socket
cpan -i IO::AIO
cpan -i IO::WrapTie

2.2安装MogileFS
下载相关源码,地址:https://github.com/mogilefs

2.3 Tracker 安装

unzip MogileFS-Server-master.zip
cd MogileFS-Server-master
perl Makefile.PL 
make
make test
make install

unzip perl-MogileFS-Client-master.zip
perl Makefile.PL
make
make test
make install

unzip MogileFS-Utils-master
cd MogileFS-Utils-master
perl Makefile.PL
make
make test
make install
2.4Storge 安装
分别在192.168.0.212 192.168.0.215 上面安装如下的包
unzip MogileFS-Server-master.zip
cd MogileFS-Server-master
perl Makefile.PL 
make
make test
make install

unzip perl-MogileFS-Client-master.zip
perl Makefile.PL
make
make test
make install

unzip MogileFS-Utils-master
cd MogileFS-Utils-master
perl Makefile.PL
make
make test
make install
2.5 安装,设置Mysql

安装Mysql
设置Mysql

mysql -uroot -p
Enter password: 
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 4
Server version: 5.0.77 Source distribution

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> create database mogilefs;
Query OK, 1 row affected (0.11 sec)

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema | 
| foreman            | 
| mogilefs           | 
| mysql              | 
| test               | 
+--------------------+
5 rows in set (0.00 sec)

mysql> grant all on mogilefs.* to 'mogilefs'@'%';
Query OK, 0 rows affected (0.13 sec)

mysql> set password for 'mogilefs'@'%' = OLD_PASSWORD('mogile_db_password');
Query OK, 0 rows affected (0.04 sec)

mysql> flush pervileges;
然后在Tracker机器上执行数据库表结构的创建。

/usr/bin/mogdbsetup --dbhost=192.168.0.245 --dbname=mogilefs --dbuser=mogilefs --dbpass=mogile_db_password --dbrootpass=[passwd]
第一次使用mogdbsetup时,需要提供mysql的root密码
这里 Tracker上需要安装Mysql客户端 以及perl相关的Mysql rpm包。

2.6设置Tracker

mkdir -p /etc/mogilefs/
vi /etc/mogilefs/mogilefsd.conf
在配置文件中添加如下内容:

db_dsn = DBI:mysql:mogilefs:host=192.168.0.245;port=3306;mysql_connect_timeout=5
db_user = mogilefs
db_pass = mogile_db_password
conf_port = 7001
listener_jobs = 5
node_timeout = 5
rebalance_ignore_missing = 1
mogilefsd不能以root身份运行,必须用其他用户运行,为此需要建立新的用户:

useradd mogile
启动
su - mogile
mogilefsd -c /etc/mogilefs/mogilefsd.conf --daemon
2.7创建Storage配置文件并启动Storgae节点,分别在两太存储节点上执行。

mkdir /var/mogile_data/
vi /etc/mogilefs/mogstored.conf
添加如下内容:

httplisten=0.0.0.0:7500
mgmtlisten=0.0.0.0:7501
docroot=/data/mogile_data
启动Storage节点

mogstored --daemon
2.8 向Tracker 添加Storage节点

mogadm host add mog_storage_212 --ip=192.168.0.212 --port=7500 --status=alive
mogadm host add mog_storage_215 --ip=192.168.0.215 --port=7500 --status=alive
添加完成后,查看存储节点

mogadm host list
mog_storage_212 [1]: alive
  IP:       192.168.0.212:7500

mog_storage_215 [2]: alive
  IP:       192.168.0.215:7500

2.9 向Storage节点添加设备
首先要在Storage节点上添加设备,方式是在Storage节点的根存储目录下建立设备目录,设备目录以“dev”开头,后面跟一个数字序号,在MogileFS系统中,
要求每个设备的序号是唯一的。根存储目录所在磁盘直接建立设备空目录即可,对其他磁盘则需要挂载到设备目录上。如果其他硬盘已经挂载其他地方,
可以建立一个软链接来连接到挂载点上。

mkdir -p /data/mogile_data/dev21201
mogadm device add mog_storage_212 21201
mkdir -p /data/mogile_data/dev21501
mogadm device add mog_storage_215 21501
检查

mogadm check
Checking trackers...
  127.0.0.1:7001 ... OK

Checking hosts...
  [ 1] mog_storage_212 ... OK
  [ 2] mog_storage_215 ... OK

Checking devices...
  host device         size(G)    used(G)    free(G)   use%   ob state   I/O%
  ---- ------------ ---------- ---------- ---------- ------ ---------- -----
  [ 1] dev21201        225.225      0.183    225.042   0.08%  writeable   N/A
  [ 2] dev21501        225.225      0.183    225.042   0.08%  writeable   N/A
  ---- ------------ ---------- ---------- ---------- ------
             total:   450.450      0.366    450.083   0.08%
3.至此MogileFS 安装完成

暂时没有没有其他测试。
















你可能感兴趣的:(MogileFS 部署(测试)文档)