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 安裝完成

暫時沒有沒有其他測試。
















發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章