真实的国产乱ⅩXXX66竹夫人,五月香六月婷婷激情综合,亚洲日本VA一区二区三区,亚洲精品一区二区三区麻豆

成都創(chuàng)新互聯(lián)網(wǎng)站制作重慶分公司

分布式存儲系統(tǒng)-GlusterFs概述

第1章 GlusterFS分布式文件系統(tǒng)使用介紹

1.1 Glusterfs概述

GlusterFS是Scale-Out存儲解決方案Gluster的核心,它是一個開源的分布式文件系統(tǒng),具有強(qiáng)大的橫向擴(kuò)展能力,通過擴(kuò)展能夠支持?jǐn)?shù)PB存儲容量和處理數(shù)千客戶端。GlusterFS借助TCP/IP或InfiniBand RDMA網(wǎng)絡(luò)將物理分布的存儲資源聚集在一起,使用單一全局命名空間來管理數(shù)據(jù)。GlusterFS基于可堆疊的用戶空間設(shè)計(jì),可為各種不同的數(shù)據(jù)負(fù)載提供優(yōu)異的性能。

博望ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為成都創(chuàng)新互聯(lián)的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:028-86922220(備注:SSL證書合作)期待與您的合作!

GlusterFS支持運(yùn)行在任何標(biāo)準(zhǔn)IP網(wǎng)絡(luò)上標(biāo)準(zhǔn)應(yīng)用程序的標(biāo)準(zhǔn)客戶端,如圖2所示,用戶可以在全局統(tǒng)一的命名空間中使用NFS/CIFS等標(biāo)準(zhǔn)協(xié)議來訪問應(yīng)用數(shù)據(jù)。GlusterFS使得用戶可擺脫原有的獨(dú)立、高成本的封閉存儲系統(tǒng),能夠利用普通廉價的存儲設(shè)備來部署可集中管理、橫向擴(kuò)展、虛擬化的存儲池,存儲容量可擴(kuò)展至TB/PB級。GlusterFS主要特征如下:


1.1.1 擴(kuò)展性和高性能

GlusterFS利用雙重特性來提供幾TB至數(shù)PB的高擴(kuò)展存儲解決方案。Scale-Out架構(gòu)允許通過簡單地增加資源來提高存儲容量和性能,磁盤、計(jì)算和I/O資源都可以獨(dú)立增加,支持10GbE和InfiniBand等高速網(wǎng)絡(luò)互聯(lián)。Gluster彈性哈希(Elastic Hash)解除了GlusterFS對元數(shù)據(jù)服務(wù)器的需求,消除了單點(diǎn)故障和性能瓶頸,真正實(shí)現(xiàn)了并行化數(shù)據(jù)訪問。


1.1.2 高可用性

GlusterFS可以對文件進(jìn)行自動復(fù)制,如鏡像或多次復(fù)制,從而確保數(shù)據(jù)總是可以訪問,甚至是在硬件故障的情況下也能正常訪問。自我修復(fù)功能能夠把數(shù)據(jù)恢復(fù)到正確的狀態(tài),而且修復(fù)是以增量的方式在后臺執(zhí)行,幾乎不會產(chǎn)生性能負(fù)載。GlusterFS沒有設(shè)計(jì)自己的私有數(shù)據(jù)文件格式,而是采用操作系統(tǒng)中主流標(biāo)準(zhǔn)的磁盤文件系統(tǒng)(如EXT3、ZFS)來存儲文件,因此數(shù)據(jù)可以使用各種標(biāo)準(zhǔn)工具進(jìn)行復(fù)制和訪問。


1.1.3 全局統(tǒng)一命名空間

全局統(tǒng)一命名空間將磁盤和內(nèi)存資源聚集成一個單一的虛擬存儲池,對上層用戶和應(yīng)用屏蔽了底層的物理硬件。存儲資源可以根據(jù)需要在虛擬存儲池中進(jìn)行彈性擴(kuò)展,比如擴(kuò)容或收縮。當(dāng)存儲虛擬機(jī)映像時,存儲的虛擬映像文件沒有數(shù)量限制,成千虛擬機(jī)均通過單一掛載點(diǎn)進(jìn)行數(shù)據(jù)共享。虛擬機(jī)I/O可在命名空間內(nèi)的所有服務(wù)器上自動進(jìn)行負(fù)載均衡,消除了SAN環(huán)境中經(jīng)常發(fā)生的訪問熱點(diǎn)和性能瓶頸問題。


1.1.4 彈性哈希算法

GlusterFS采用彈性哈希算法在存儲池中定位數(shù)據(jù),而不是采用集中式或分布式元數(shù)據(jù)服務(wù)器索引。在其他的Scale-Out存儲系統(tǒng)中,元數(shù)據(jù)服務(wù)器通常會導(dǎo)致I/O性能瓶頸和單點(diǎn)故障問題。GlusterFS中,所有在Scale-Out存儲配置中的存儲系統(tǒng)都可以智能地定位任意數(shù)據(jù)分片,不需要查看索引或者向其他服務(wù)器查詢。這種設(shè)計(jì)機(jī)制完全并行化了數(shù)據(jù)訪問,實(shí)現(xiàn)了真正的線性性能擴(kuò)展。


1.1.5 彈性卷管理

數(shù)據(jù)儲存在邏輯卷中,邏輯卷可以從虛擬化的物理存儲池進(jìn)行獨(dú)立邏輯劃分而得到。存儲服務(wù)器可以在線進(jìn)行增加和移除,不會導(dǎo)致應(yīng)用中斷。邏輯卷可以在所有配置服務(wù)器中增長和縮減,可以在不同服務(wù)器遷移進(jìn)行容量均衡,或者增加和移除系統(tǒng),這些操作都可在線進(jìn)行。文件系統(tǒng)配置更改也可以實(shí)時在線進(jìn)行并應(yīng)用,從而可以適應(yīng)工作負(fù)載條件變化或在線性能調(diào)優(yōu)。


1.1.6 基于標(biāo)準(zhǔn)協(xié)議

Gluster存儲服務(wù)支持NFS, CIFS, HTTP, FTP以及Gluster原生協(xié)議,完全與POSIX標(biāo)準(zhǔn)兼容。現(xiàn)有應(yīng)用程序不需要作任何修改或使用專用API,就可以對Gluster中的數(shù)據(jù)進(jìn)行訪問。這在公有云環(huán)境中部署Gluster時非常有用,Gluster對云服務(wù)提供商專用API進(jìn)行抽象,然后提供標(biāo)準(zhǔn)POSIX接口。


1.1.7 術(shù)語介紹

Brick:GFS中的存儲單元,通過是一個受信存儲池中的服務(wù)器的一個導(dǎo)出目錄。可以通過主機(jī)名和目錄名來標(biāo)識,如'SERVER:EXPORT'

Client: 掛載了GFS卷的設(shè)備

Extended Attributes:xattr是一個文件系統(tǒng)的特性,其支持用戶或程序關(guān)聯(lián)文件/目錄和元數(shù)據(jù)。

FUSE:Filesystem Userspace是一個可加載的內(nèi)核模塊,其支持非特權(quán)用戶創(chuàng)建自己的文件系統(tǒng)而不需要修改內(nèi)核代碼。通過在用戶空間運(yùn)行文件系統(tǒng)的代碼通過FUSE代碼與內(nèi)核進(jìn)行橋接。

Geo-Replication

GFID:GFS卷中的每個文件或目錄都有一個唯一的128位的數(shù)據(jù)相關(guān)聯(lián),其用于模擬inode

Namespace:每個Gluster卷都導(dǎo)出單個ns作為POSIX的掛載點(diǎn)

Node:一個擁有若干brick的設(shè)備

RDMA:遠(yuǎn)程直接內(nèi)存訪問,支持不通過雙方的OS進(jìn)行直接內(nèi)存訪問。

RRDNS:round robin DNS是一種通過DNS輪轉(zhuǎn)返回不同的設(shè)備以進(jìn)行負(fù)載均衡的方法

Self-heal:用于后臺運(yùn)行檢測復(fù)本卷中文件和目錄的不一致性并解決這些不一致。

Split-brain:腦裂

Translator:

Volfile:glusterfs進(jìn)程的配置文件,通常位于/var/lib/glusterd/vols/volname

Volume:一組bricks的邏輯集合

1.1.18 Glusterfs架構(gòu)組成

分布式存儲系統(tǒng)-GlusterFs概述

1.2 GlusterFS技術(shù)特點(diǎn)
1.2.1 完全軟件實(shí)現(xiàn)(Software Only)

GlusterFS認(rèn)為存儲是軟件問題,不能夠把用戶局限于使用特定的供應(yīng)商或硬件配置來解決。GlusterFS采用開放式設(shè)計(jì),廣泛支持工業(yè)標(biāo)準(zhǔn)的存儲、網(wǎng)絡(luò)和計(jì)算機(jī)設(shè)備,而非與定制化的專用硬件設(shè)備捆綁。對于商業(yè)客戶,GlusterFS可以以虛擬裝置的形式交付,也可以與虛擬機(jī)容器打包,或者是公有云中部署的映像。開源社區(qū)中,GlusterFS被大量部署在基于廉價閑置硬件的各種操作系統(tǒng)上,構(gòu)成集中統(tǒng)一的虛擬存儲資源池。簡而言之,GlusterFS是開放的全軟件實(shí)現(xiàn),完全獨(dú)立于硬件和操作系統(tǒng)。


1.2.2 完整的存儲操作系統(tǒng)棧(Complete Storage Operating System Stack)

GlusterFS不僅提供了一個分布式文件系統(tǒng),而且還提供了許多其他重要的分布式功能,比如分布式內(nèi)存管理、I/O調(diào)度、軟RAID和自我修復(fù)等。GlusterFS汲取了微內(nèi)核架構(gòu)的經(jīng)驗(yàn)教訓(xùn),借鑒了GNU/Hurd操作系統(tǒng)的設(shè)計(jì)思想,在用戶空間實(shí)現(xiàn)了完整的存儲操作系統(tǒng)棧。


1.2.3 用戶空間實(shí)現(xiàn)(User Space)

與傳統(tǒng)的文件系統(tǒng)不同,GlusterFS在用戶空間實(shí)現(xiàn),這使得其安裝和升級特別簡便。另外,這也極大降低了普通用戶基于源碼修改GlusterFS的門檻,僅僅需要通用的C程序設(shè)計(jì)技能,而不需要特別的內(nèi)核編程經(jīng)驗(yàn)。


1.2.4 模塊化堆棧式架構(gòu)(Modular Stackable Architecture)

GlusterFS采用模塊化、堆棧式的架構(gòu),可通過靈活的配置支持高度定制化的應(yīng)用環(huán)境,比如大文件存儲、海量小文件存儲、云存儲、多傳輸協(xié)議應(yīng)用等。每個功能以模塊形式實(shí)現(xiàn),然后以積木方式進(jìn)行簡單的組合,即可實(shí)現(xiàn)復(fù)雜的功能。比如,Replicate模塊可實(shí)現(xiàn)RAID1,Stripe模塊可實(shí)現(xiàn)RAID0,通過兩者的組合可實(shí)現(xiàn)RAID10和RAID01,同時獲得高性能和高可靠性。

分布式存儲系統(tǒng)-GlusterFs概述

1.2.5 原始數(shù)據(jù)格式存儲(Data Stored in Native Formats)

GlusterFS以原始數(shù)據(jù)格式(如EXT3、EXT4、XFS、ZFS)儲存數(shù)據(jù),并實(shí)現(xiàn)多種數(shù)據(jù)自動修復(fù)機(jī)制。因此,系統(tǒng)極具彈性,即使離線情形下文件也可以通過其他標(biāo)準(zhǔn)工具進(jìn)行訪問。如果用戶需要從GlusterFS中遷移數(shù)據(jù),不需要作任何修改仍然可以完全使用這些數(shù)據(jù)。

1.2.6 無元數(shù)據(jù)服務(wù)設(shè)計(jì)(No Metadata with the Elastic Hash Algorithm)

對Scale-Out存儲系統(tǒng)而言,最大的挑戰(zhàn)之一就是記錄數(shù)據(jù)邏輯與物理位置的映像關(guān)系,即數(shù)據(jù)元數(shù)據(jù),可能還包括諸如屬性和訪問權(quán)限等信息。傳統(tǒng)分布式存儲系統(tǒng)使用集中式或分布式元數(shù)據(jù)服務(wù)來維護(hù)元數(shù)據(jù),集中式元數(shù)據(jù)服務(wù)會導(dǎo)致單點(diǎn)故障和性能瓶頸問題,而分布式元數(shù)據(jù)服務(wù)存在性能負(fù)載和元數(shù)據(jù)同步一致性問題。特別是對于海量小文件的應(yīng)用,元數(shù)據(jù)問題是個非常大的挑戰(zhàn)。

GlusterFS獨(dú)特地采用無元數(shù)據(jù)服務(wù)的設(shè)計(jì),取而代之使用算法來定位文件,元數(shù)據(jù)和數(shù)據(jù)沒有分離而是一起存儲。集群中的所有存儲系統(tǒng)服務(wù)器都可以智能地對文件數(shù)據(jù)分片進(jìn)行定位,僅僅根據(jù)文件名和路徑并運(yùn)用算法即可,而不需要查詢索引或者其他服務(wù)器。這使得數(shù)據(jù)訪問完全并行化,從而實(shí)現(xiàn)真正的線性性能擴(kuò)展。無元數(shù)據(jù)服務(wù)器極大提高了GlusterFS的性能、可靠性和穩(wěn)定性。


1.3 Glusterfs安裝部署
1.3.1 實(shí)驗(yàn)環(huán)境

系統(tǒng)版本:Linux CentOS release 6.9 (Final)

系統(tǒng)內(nèi)核:2.6.32-696.23.1.el6.x86_64

Glusterfs軟件版本:3.10.12

Node1:192.168.1.111

Node2:192.168.1.112


1.3.2 服務(wù)端部署

yum -y install centos-release-gluster310 #安裝glusterfs yum源

yum install -y libgssglue libtirpc rpcbind lvm2-develyum list glusterfs libaio  #安裝依賴關(guān)系

yum install -y atop fio iperf #安裝測試工具

yum install -y glusterfs-libs glusterfs glusterfs-api glusterfs-cli glusterfs-client-xlators glusterfs-fuse glusterfs-server #安裝glusterfs服務(wù)端軟件

mkfs.ext4 /dev/sdb #格式化文件系統(tǒng)

mount /dev/sdb /storage/brick1/ 掛載文件系統(tǒng)

mount #查看

vim /etc/fstab #設(shè)置開機(jī)自動掛載

/dev/sdb /storage/brick1 exit4 defaults 0 0

service glusterd start #啟動gluster服務(wù)

chkconfig glusterd on #gluster服務(wù)開機(jī)自啟動

gluster peer probe node2 #將主機(jī)加入到集群

gluster peer status #查看節(jié)點(diǎn)狀態(tài)

=====================================================

創(chuàng)建分布式哈希卷:

gluster volume create testol node2:/storage/brick1/b1 #創(chuàng)建 一個卷 testol 到/storage/brick1/b1 這個目錄下

gluster volume start testol #啟動testol這個卷

gluster volume rebalance testol fix-layout start #哈希范圍重新分配,一般做完數(shù)據(jù)遷移或者添加新的brick做完負(fù)載后執(zhí)行這條命令

=====================================================

刪除一個卷(最好先將mount掛載的客戶端卸載后在刪除):

gluster volume stop testol #先將卷停止

gluster volume delete testol #然后刪除

PS:刪除卷后,數(shù)據(jù)還在,如果覺得不需要可以將數(shù)據(jù)刪掉

====================================================

刪除一個brick

gluster volume remove-brick [replica]...

====================================================

負(fù)載均衡:(刪除brick后對其他的卷進(jìn)行負(fù)載均衡)

gluster volume rebalance VOLNAME {start|stop|}[force]

====================================================

創(chuàng)建一個復(fù)制卷:

gluster volume create testvol replica 2 node2:/storage/brick1/b2 #創(chuàng)建一個復(fù)制卷


1.3.3 客戶端軟件安裝

yum install -y glusterfs-fuse glusterfs-libs glusterfs #客戶端要安裝的軟件

mount -t glusterfs node1:testvol /mnt #客戶端掛載,注意做好hosts解析。


分享名稱:分布式存儲系統(tǒng)-GlusterFs概述
當(dāng)前路徑:http://weahome.cn/article/jesddd.html

其他資訊

在線咨詢

微信咨詢

電話咨詢

028-86922220(工作日)

18980820575(7×24)

提交需求

返回頂部