-------------------1、mogilefs服務初始化&建立tracker----------------------node
①數據庫受權數據庫
GRANT ALL PRIVILEGES ON *.* TO 'mogile' @'127.0.0.1' IDENTIFIED BY 'mogile' WITH GRANT OPTION;vim
②設定數據庫:瀏覽器
mogdbsetup --help網絡
mogdbsetup --dbhost=127.0.0.1 --dbpass=mogiledom
用戶名默認爲:mogileide
進入MySQL,看到數據庫mogilefs已經建立,表也存在,但爲空表,由於尚未開始設置。測試
【③添加運行用戶spa
useradd -r mogilefsblog
mkdir /var/run/mogilefsd/
chown -R mogilefs.mogilefs /var/run/mogilefsd #yum安裝的話已經完成】
能夠省略
④修改主配置文件:
vim /etc/mogilefs/mogilefsd.conf
db_user = mogile
db_pass = mogile
listen = 172.17.250.109:7001
⑤啓動服務 (tracker 服務爲 mogilefsd ) (storage服務爲mogstored)
/etc/init.d/mogstored start
⑥查看tracker:
[root@master bin]# mogadm --tracker=172.17.250.109:7001 check
Checking trackers...
172.17.250.109:7001 ... OK
Checking hosts...
No devices found on tracker(s).
-----------------------2、建立storage一、storage2---------------------
storage一、2均執行如下操做:
①mkdir /data/mogdata -p
② chown mogilefs.mogilefs mogdata/ -R
③vim /etc/mogilefs/mogstored.con
docroot =/data/mogdata
④/etc/init.d/mogstored start
-------------------------3、將tracker和storage一、2鏈接--------------------
基於實驗一實驗二
tracker執行操做:
一、MogileFS 中的存儲主機(節點)管理
加入「存儲節點」到 trackers 中.告訴註冊本身到 trackers.至關於爲每一個主機加入 MogileFS
(1)在tracker中添加node一、node2
①mogadm --tracker=172.17.250.109:7001 host add node1 --ip=172.17.250.11 --port=7500 --status=alive
②mogadm --tracker=172.17.250.109:7001 host add node2 --ip=172.17.250.127--port=7500 --status=alive
③測試是否成功鏈接:
語法:mogadm host list #檢查這個主機是否加入到 MogileFS 的系統中
方法一:
mogadm --tracker=172.17.250.109:7001 check
方法二:
vim /etc/mogilefs/mogilefs.conf
trackers=172.17.250.109:7001
mogadm check
方法三:
mogadm --tracker=172.17.250.109:7001 host list #查看各節點的狀態(更詳細)
storage執行操做:
建一個目錄 ( 而且須要 mount 一個硬盤給這個目錄 ) 給這個"設備" 使用,
storage1:
cd /data/mogdata/
mkdir dev1
chown mogilefs.mogilefs dev1/ -R
storage2:
cd /data/mogdata/
mkdir dev1
chown mogilefs.mogilefs dev1/ -R
tracker執行操做:
①給"設備"加入」存儲的節點「當中,至關於爲每一個設備加入 MogileFS 的存儲系統
mogadm --tracker=172.17.250.109:7001 device add node1 1
mogadm --tracker=172.17.250.109:7001 device add node2 2
②檢查:mogadm check
tracker登陸數據庫,查看mogilefs數據庫下的表,已經存在內容。
storage執行操做:
storage查看:
storage1:
cd /data/mogdata/dev1
ls
cd test-write/
storage2:同上
----------------------四:添加域---------------------------
①mogadm domain add img
② mogadm domain list
③ mogadm class add img m26 --mindevcount=3
------------------五:測試:上傳、下載文件-------------------------
測試上傳下載功能
tracker執行操做:
①從電腦上上傳圖片:rz ——1.jpg
②上傳文件:
mogupload --domain=img --key=test --file=1.jpg
③去storage1查看:dev1下只有原來的目錄,沒有新增。【有bug,不能添加】
去storage2查看:dev2下有新增目錄:0,查找到有文件:0000000002.fid
將0000000002.fid導出到電腦,sz,修改後綴名,而後查看,爲原圖。
④tracker查看數據庫,test和0000000002.fid
查看文件:mogfileinfo --domain=img --key=test
從中獲得該圖片文件的網絡IP,瀏覽器鏈接顯示原圖。
⑤刪除文件:mogdelete --domain=img --key=test
storage2的000下沒有文件0000000002.fid
※【刪除文件後,讀寫功能受影響,但老的請求還存在,不受影響,新的請求不能實現】以下所示:
A、從新上傳文件1.jpg:mogupload --domain=img --key=test --file=1.jpg
查看發現:storage2的000下沒有新增文件;
storage2的dev1下新增目錄0,
/data/mogdata/dev1/0/000/000下新增文件:0000000003.fid
瀏覽器查看到原圖。
B、能夠標記下限【能夠讀,不能寫】
mogadm host mark node1 down
mogfileinfo --domain=img --key=test
瀏覽器任然能夠訪問——能夠讀,節點存在。
C、再上傳一張圖片
mogupload --domain=img --key=test1 --file=2.jpg
查看storage1的0下,沒有新增文件——新的寫沒法寫入。
查看storage2的0下,有新增文件:0000000005.fid
D、取消下限
mogadm host mark node1 alive
上傳圖片:mogupload --domain=img --key=test --file=2.jpg
storage1下新增文件/dev1/0/000/000/0000000006.fid
瀏覽器訪問出現新文件圖片。