欧美三区_成人在线免费观看视频_欧美极品少妇xxxxⅹ免费视频_a级毛片免费播放_鲁一鲁中文字幕久久_亚洲一级特黄

分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) -

系統(tǒng) 1741 0

分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客

分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一)

2009-04-09 12:55:07

原創(chuàng)作品,允許轉載,轉載時請務必以超鏈接形式標明文章 原始出處 、作者信息和本聲明。否則將追究法律責任。 http://sery.blog.51cto.com/10037/147756

分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享
? ?
由于用戶數(shù)量的不斷攀升 , 我對訪問量大的應用實現(xiàn)了可擴展、高可靠的集群部署(即 lvs+keepalived 的方式),但仍然有用戶反饋訪問慢的問題。通過排查個服務器的情況,發(fā)現(xiàn)問題的根源在于共享存儲服務器 NFS 。在我這個網絡環(huán)境里, N 個服務器通過 nfs 方式共享一個服務器的存儲空間,使得 NFS 服務器不堪重負。察看系統(tǒng)日志,全是 nfs 服務超時之類的報錯。一般情況下,當 nfs 客戶端數(shù)目較小的時候, NFS 性能不會出現(xiàn)問題;一旦 NFS 服務器數(shù)目過多,并且是那種讀寫都比較頻繁的操作,所得到的結果就不是我們所期待的。下面是某個集群使用 nfs 共享的示意圖: 分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客

?

這種架構除了性能問題而外,還存在單點故障,一旦這個 NFS 服務器發(fā)生故障,所有靠共享提供數(shù)據(jù)的應用就不再可用,盡管用 rsync 方式同步數(shù)據(jù)到另外一個服務器上做 nfs 服務的備份,但這對提高整個系統(tǒng)的性能毫無幫助。基于這樣一種需求,我們需要對 nfs 服務器進行優(yōu)化或采取別的解決方案,然而優(yōu)化并不能對應對日益增多的客戶端的性能要求,因此唯一的選擇只能是采取別的解決方案了;通過調研,分布式文件系統(tǒng)是一個比較合適的選擇。采用分布式文件系統(tǒng)后,服務器之間的數(shù)據(jù)訪問不再是一對多的關系( 1 NFS 服務器,多個 NFS 客戶端),而是多對多的關系,這樣一來,性能大幅提升毫無問題。
?
到目前為止,有數(shù)十種以上的分布式文件系統(tǒng)解決方案可供選擇,如 lustre,hadoop,Pnfs 等等。我嘗試了 PVFS,hadoop,moosefs 這三種應用,參看了 lustre KFS 等諸多技術實施方法,最后我選擇了 moosefs (以下簡稱 MFS )這種分布式文件系統(tǒng)來作為我的共享存儲服務器。為什么要選它呢?我來說說我的一些看法:
1、 ? 實施起來簡單。 MFS 的安裝、部署、配置相對于其他幾種工具來說,要簡單和容易得多。看看 lustre 700 多頁的 pdf 文檔,讓人頭昏吧。
2、 ? 不停服務擴容。 MFS 框架做好后,隨時增加服務器擴充容量;擴充和減少容量皆不會影響現(xiàn)有的服務。注: hadoop 也實現(xiàn)了這個功能。 ?
3、 ? 恢復服務容易。除了 MFS 本身具備高可用特性外,手動恢復服務也是非常快捷的,原因參照第 1 條。 ?
4、 ? 我在實驗過程中得到作者的幫助,這讓我很是感激。 ?

?

分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客
MFS 文件系統(tǒng)的組成 ?
1、 ? 元數(shù)據(jù)服務器。在整個體系中負責管理管理文件系統(tǒng),目前 MFS 只支持一個元數(shù)據(jù)服務器 master ,這是一個單點故障,需要一個性能穩(wěn)定的服務器來充當。希望今后 MFS 能支持多個 master 服務器,進一步提高系統(tǒng)的可靠性。 ?
2、 ? 數(shù)據(jù)存儲服務器 chunkserver 。真正存儲用戶數(shù)據(jù)的服務器。存儲文件時,首先把文件分成塊,然后這些塊在數(shù)據(jù)服務器 chunkserver 之間復制(復制份數(shù)可以手工指定,建議設置副本數(shù)為 3 )。數(shù)據(jù)服務器可以是多個,并且數(shù)量越多,可使用的“磁盤空間”越大,可靠性也越高。
3、 ? 客戶端。使用 MFS 文件系統(tǒng)來存儲和訪問的主機稱為 MFS 的客戶端,成功掛接 MFS 文件系統(tǒng)以后,就可以像以前使用 NFS 一樣共享這個虛擬性的存儲了。
?
元數(shù)據(jù)服務器安裝和配置
元數(shù)據(jù)服務器可以是 linux, 也可以是 unix, 你可以根據(jù)自己的使用習慣選擇操作系統(tǒng) , 在我的環(huán)境里 , 我是用 freebsd 做為 MFS 元數(shù)據(jù)的運行平臺。 GNU 源碼,在各種類 unix 平臺的安裝都基本一致。
?
(一) ?? 安裝元數(shù)據(jù)服務
2 、解包 tar zxvf mfs- 1.5.12.tar.gz
3 、切換目錄 cd mfs-1.5.12
4 、創(chuàng)建用戶 useradd mfs –s /sbin/nologin ?
5 、配置 ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
6 、編譯安裝 make ; make install
?
(二) ?? 配置元數(shù)據(jù)服務
元數(shù)據(jù)服務器的配置文件是 mfsmaster.cfg, 我在安裝 MFS 時指定了前綴,因此這個文件的位置在 /usr/local/mfs/etc/mfsmaster.cfg. 我們打開這個配置文件,看看都有哪些內容: 分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客
盡管每行都被注釋掉了,但它們卻是配置文件的默認值,要改變這些值,需要取消注釋,然后明確指定其取值。接下來說明一下其中一些項目的含義。
???? LOCK_FILE = /var/run/mfs/mfsmaster.pid 文件鎖所在的位置,它的功能是避免啟動多次啟動同一個守護進程。由于系統(tǒng)中本來不存在目錄 /var/run/mfs ,因此需要手動創(chuàng)建 mkdir /var/run/mfs ,然后更改其屬主 chown –R mfs:mfs /var/run/mfs 這樣 MFS 服務就能對這個目錄有創(chuàng)建 / 寫入 mfsmaster.pid 文件的權限了。
???? DATA_PATH = /usr/local/mfs/var/mfs 數(shù)據(jù)存放路徑,只元數(shù)據(jù)的存放路徑。那么這些數(shù)據(jù)都包括哪些呢?進目錄看看,大致分 3 種類型的文件:

?

這些文件也同樣要存儲在其他數(shù)據(jù)存儲服務器的相關目錄。
???? MATOCS_LISTEN_PORT = 9420 MATOCS--master to chunkserver ,即元數(shù)據(jù)服務器使用 9420 這個監(jiān)聽端口來接受數(shù)據(jù)存儲服務器 chunkserver 端的連接。
???? MATOCU_LISTEN_PORT = 9421 元數(shù)據(jù)服務器在 9421 端口監(jiān)聽,用以接受客戶端對 MFS 進行遠程掛接(客戶端以 mfsmount 掛接 MFS
???? 其他部分看字面意思都不難理解。還有幾個與時間有關的數(shù)值,其單位是秒。
這個配置文件,不必做修改就能工作了。
?
(一) ?? 元數(shù)據(jù)服務器 master 啟動
元數(shù)據(jù)服務器可以單獨啟動,即使沒有任何數(shù)據(jù)存儲服務器( chunkserver )也是能正常工作的,因此當我們安裝配置完 MFS 后,即可啟動它。執(zhí)行命令 /usr/local/mfs/sbin/mfsmaster start ,如果沒有意外,元數(shù)據(jù)庫服務器就應該作為一個守護進程運行起來。現(xiàn)在我們可以通過 3 個方面來檢查一下 MFS master 的運行狀況:
分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客
(四)、關閉元數(shù)據(jù)服務器
關閉元數(shù)據(jù)服務器,務必使用 /usr/local/mfs/sbin/mfsmaster –s 這種方式,如果直接使用 kill 殺死進程,將導致下次啟動時出現(xiàn)找不到相關文件,而不能正常啟動服務器。這個一定要謹慎。當然,如果發(fā)生了這個事情,還是可以通過 mfsmetastore 來恢復的。
?
數(shù)據(jù)存儲 chunkserver 服務器的安裝配置
數(shù)據(jù)存儲服務器 chunkserver 也是可以運行在各種類 unix 平臺的,因此不再多說。一個 MFS 環(huán)境到底能集群多少服務器,作者的說法是上 PB 容量,個人建議,最好 3 臺以上;并且專門用來做存儲,不要把它跟 master 搞到一個機器(理論上沒問題,實現(xiàn)也是可以的,但這不是一個好策略)。因為每個數(shù)據(jù)存儲服務器的安裝和配置都是相同的,所以只需按照一個服務器的操作就可以了。
?
(一)、安裝數(shù)據(jù)存儲服務器 chunkserver
2 、解包 tar zxvf mfs-1.5.12.tar.gz
3 、切換目錄 cd mfs-1.5.12
4 、創(chuàng)建用戶 useradd mfs –s /sbin/nologin ?
5 、配置 ./configure --prefix=/usr/local/mfs --with-default-user=mfs --with-default-group=mfs
6 、編譯安裝 make ; make install
?
(二)配置數(shù)據(jù)存儲服務器 chunkserver
數(shù)據(jù)存儲服務器有 2 個配置服務器需要修改,一個是主配置文件 mfschunkserver.cfg , 另一個配置文件是 mfshdd.cfg 。每個服務器用來分配給 MFS 使用的空間最好是一個單獨的硬盤或者一個 raid 卷,最低要求是一個分區(qū)。作者舉的例子是創(chuàng)建一個大文件,然后掛接在本地,這不好,只能用來做實驗了。

1 、修改配置文件 /usr/local/mfs/etc/mfschunkserver.cfg 。下面是修改了的配置文件:

?
?
分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客

?

這個配置文件里,沒有注釋符號“ # ”就是被修改過的項了,接下來是里面某些項的含義說明:
???? MASTER_HOST = 192.168.0.19 元數(shù)據(jù)服務器的名稱或地址,可以是主機名,也可以是 ip 地址,只要數(shù)據(jù)存儲服務器能訪問到元數(shù)據(jù)服務器就行。
???? LOCK_FILE = /var/run/mfs/mfschunkserver.pid 與元數(shù)據(jù)服務器 master 的處理完全相同 .
???? CSSERV_LISTEN_PORT = 9422 CSSERV—chunkserver, 這個監(jiān)聽端口用于與其它數(shù)據(jù)存儲服務器間的連接,通常是數(shù)據(jù)復制。
???? HDD_CONF_FILENAME = /usr/local/mfs/etc/mfshdd.cfg 分配給 MFS 使用的磁盤空間配置文件的位置。
2 、修改配置文件 /usr/local/mfs/etc/mfshdd.cfg 。在我的服務器上,只有一個 1T SATA 硬盤,分了一個 800G 容量的分區(qū)來做為 MFS 存儲服務的組成部分。為了使 mfs 擁有寫目錄的權限,需要修改目錄的屬主。我的服務器的分區(qū)掛接點是 /data , chown –R mfs:mfs /data 把屬主改變。因為我的每個服務器只需貢獻一個分區(qū)做為 MFS, 因此配置文件只需要如下一行內容就可以了:
分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客
(四) ?? 關閉數(shù)據(jù)存儲服務器
跟元數(shù)據(jù)服務器 master 相似,執(zhí)行命令 /usr/local/mfs/sbin/mfschunkserver –s , chunkserver 服務就停下來了。為了使系統(tǒng)重啟過程能自動啟動 chunkserver? 服務,可以通過在 /etc/rc.local 文件追加行 ? /usr/local/mfs/sbin/mfschunkserver start 來達到這個目的( master 的自動重啟處理也可同樣處理)。

?

本文出自 “ sery ” 博客,請務必保留此出處 http://sery.blog.51cto.com/10037/147756

分布式文件系統(tǒng)MFS(moosefs)實現(xiàn)存儲共享(一) - sery - 51CTO技術博客


更多文章、技術交流、商務合作、聯(lián)系博主

微信掃碼或搜索:z360901061

微信掃一掃加我為好友

QQ號聯(lián)系: 360901061

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描下面二維碼支持博主2元、5元、10元、20元等您想捐的金額吧,狠狠點擊下面給點支持吧,站長非常感激您!手機微信長按不能支付解決辦法:請將微信支付二維碼保存到相冊,切換到微信,然后點擊微信右上角掃一掃功能,選擇支付二維碼完成支付。

【本文對您有幫助就好】

您的支持是博主寫作最大的動力,如果您喜歡我的文章,感覺我的文章對您有幫助,請用微信掃描上面二維碼支持博主2元、5元、10元、自定義金額等您想捐的金額吧,站長會非常 感謝您的哦!!!

發(fā)表我的評論
最新評論 總共0條評論
主站蜘蛛池模板: a成人| 亚洲在线视频播放 | 久久亚洲国产精品五月天婷 | 北条麻妃国产九九九精品小说 | 日韩亚洲欧美视频 | 亚洲日本久久久午夜精品 | 成人黄色免费在线观看 | 欧美精品日韩一区二区三区 | 欧美三级 欧美一级 | 波多野结衣全部系列在线观看 | 久久国产这里只精品免费 | 色午夜在线 | 久久99热久久精品在线6 | 亚洲A片V一区二区三区有声 | 日韩精品 电影一区 亚洲 | 亚洲成在人线中文字幕 | 亚洲欧美在线播放 | 久久久久久久成人 | 99精品国产一区二区青青牛奶 | 久操网址 | 欧美高清视频一区 | 亚洲精品乱码8久久久久久日本 | 特黄特色大片免费高清视频 | 99热在线国产 | 中文字幕在线观看 | 日本三级黄色片网站 | 久久中文字幕视频 | 婷婷的久久五月综合先锋影音 | 欧美一区二区免费 | 日韩久久久久久 | 久久com| 色婷婷成人做爰A片免费看网站 | 成人午夜视频在线播放 | 日出水了视频大全 | 国产视频日本 | 免费的av网站 | 欧美视频精品一区二区三区 | 色婷婷综合久久久中字幕精品久久 | 日本三级香港三级人妇99 | 国产xxxx搡xxxxx搡麻豆 | 天天插天天射天天操 |