新聞中心
一、分布式存儲(chǔ)系統(tǒng)簡(jiǎn)介
隨著信息技術(shù)不斷的發(fā)展,給我們帶來便利的同時(shí),不斷增加的數(shù)據(jù)量級(jí)、信息之間的連接關(guān)聯(lián)越來越復(fù)雜、數(shù)據(jù)訪問的并發(fā)量日益增加對(duì)I/O的要求越來越高、數(shù)據(jù)類型越來越復(fù)雜等難題也成為信息技術(shù)繼續(xù)高速發(fā)展亟需解決的難題。分布式存儲(chǔ)系統(tǒng)的出現(xiàn)在很大程度上解決了以上大部分難題。
分布式存儲(chǔ)系統(tǒng),是將數(shù)據(jù)分散存儲(chǔ)在多臺(tái)獨(dú)立的設(shè)備上。傳統(tǒng)的網(wǎng)絡(luò)存儲(chǔ)系統(tǒng)采用集中的存儲(chǔ)服務(wù)器存放所有數(shù)據(jù),存儲(chǔ)服務(wù)器成為系統(tǒng)性能的瓶頸,也是可靠性和安全性的焦點(diǎn),不能滿足大規(guī)模存儲(chǔ)應(yīng)用的需要。分布式存儲(chǔ)系統(tǒng)采用可擴(kuò)展的系統(tǒng)結(jié)構(gòu),利用多臺(tái)存儲(chǔ)服務(wù)器分擔(dān)存儲(chǔ)負(fù)荷,利用位置服務(wù)器定位存儲(chǔ)信息,它不但提高了系統(tǒng)的可靠性、可用性和存取效率,還易于擴(kuò)展。
分布式存儲(chǔ)系統(tǒng)在接口類型上可分為通用分布式儲(chǔ)存和專用分布式儲(chǔ)存。通用分布式儲(chǔ)存是指沒有文件系統(tǒng)接口,需要通過API接口進(jìn)行訪問;專用分布式儲(chǔ)存也稱為分布式文件系統(tǒng),它們一般都會(huì)有文件系統(tǒng)接口,可以直接掛載。通用分布式儲(chǔ)存有mogilefs、fastdfs等,專用分布式儲(chǔ)存系統(tǒng)有moosefs等。
二、Mogilefs
MogileFS是一個(gè)開源的分布式文件存儲(chǔ)系統(tǒng),MogileFS適用于存儲(chǔ)海量小文件的工作場(chǎng)景,由LiveJournal旗下的Danga Interactive公司開發(fā),該團(tuán)隊(duì)開發(fā)了包括 Memcached、MogileFS、Perlbal 等多個(gè)知名的開源項(xiàng)目。
1.Mogilefs架構(gòu)圖:
2.組成Mogliefs的組件:
1.Trackers(mogilefsd):Mogliefs的核心組件,主要功能是(Replication)節(jié)點(diǎn)文件復(fù)制、(Deletion)文件刪除、(Query)元數(shù)據(jù)查詢、(Monitor)健康監(jiān)測(cè)、(Reaper)儲(chǔ)存失敗重置等等。它通常稱為元數(shù)據(jù)服務(wù)器,但它不會(huì)去儲(chǔ)存元數(shù)據(jù),而是將元數(shù)據(jù)儲(chǔ)存在如MySQL這一類的數(shù)據(jù)庫中。為保證架構(gòu)的可靠性,Trackers一般有多個(gè)。Trackers可看作是一個(gè)旁掛式代理,只負(fù)責(zé)處理元數(shù)據(jù)信息。
2.數(shù)據(jù)庫:數(shù)據(jù)庫用來存放Mogliefs的元數(shù)據(jù),而由Trackers來管理數(shù)據(jù)。因此通常建議做HA。
3.mogstored(儲(chǔ)存節(jié)點(diǎn)):實(shí)際文件存放的地方。通常會(huì)將實(shí)際文件保存至少兩份副本。
3.示例演示拓?fù)鋱D
在三個(gè)節(jié)點(diǎn)同時(shí)安裝Trackers和mogstored,選擇其中一個(gè)節(jié)點(diǎn)安裝MySQL。在生產(chǎn)環(huán)境最好是能單獨(dú)將MySQL部署并且做主從復(fù)制。Trackers和mogstored也可以分開部署在不同節(jié)點(diǎn)上,這些都需要根據(jù)實(shí)際的生產(chǎn)環(huán)境來決定。這里主要是演示mogilefs,不做MySQL主從復(fù)制演示。若想要Mogilefs能掛載,可以用FUSE來實(shí)現(xiàn)。
需要注意的是:mogilefs存儲(chǔ)的文件URL很特殊(后面會(huì)解釋mogilefs文件名生產(chǎn)的過程),如存儲(chǔ)一張圖片時(shí)文件URL可能會(huì)是類似6060/0000/0000/0000/00000021.jpg這樣的格式,對(duì)用戶來講就不太友好,用戶可能需要直觀的類似image.hello.com/21.jpg這樣的URL。所以通常會(huì)使用Nginx來反代Mogilefs。
4.系統(tǒng)環(huán)境與安裝
Mogilefs是一個(gè)相對(duì)較年代較久但成熟的分布式儲(chǔ)存,考慮到可能在Centos7上會(huì)出現(xiàn)兼容問題,這里Centos6來演示。
操作系統(tǒng):CentOS release 6.6
Mogilefs:2.46
nginx:1.10
mysql:5.1
IP分配:
n1:192.168.29.111,n2:192.168.29.112,n3:192.168.29.113,n4:192.168.29.114
結(jié)構(gòu)如上圖所示。
1.在n1節(jié)點(diǎn)上安裝MySQL、mogilefsd、mogstored,并將n1配置為Trackers、Storage Node
MySQL直接用yum安裝。
~]# yum install -y mysql mysql-server
當(dāng)前標(biāo)題:Nginx反代Mogilefs分布式儲(chǔ)存示例詳解-創(chuàng)新互聯(lián)
本文鏈接:http://www.dlmjj.cn/article/ccpdii.html