分布式儲存已經研究很多年,但直到近年來,伴隨著谷歌、亞馬遜和阿里等網際網路公司雲計算和大資料應用的興起,它才大規模應用到工程實踐中。如谷歌的分布式檔案系統gfs、分布式**系統google bigtable,亞馬遜的物件儲存aws,阿里的tfs等都是很好的代表,同時也催生了一大批優秀的開源分布式儲存系統,包括ceph、swift、lustre和glusterfs等。
分布式儲存按其儲存介面分為三種:檔案儲存、塊儲存和物件儲存。
這種介面通常以qemu driver或者kernel module的方式存在,主要通過qemu或iscsi協議訪問。主要的塊儲存系統有ceph塊儲存、sheepdog等。主要用來儲存結構化資料,如資料庫資料。資料共享不方便。das和san都是塊儲存型別。
物件儲存系統綜合了nas和san的優點,同時具有san的高速直接訪問和nas的資料共享等優勢。以物件作為基本的儲存單元,向外提供restful資料讀寫介面,常以網路服務的形式提供資料訪問。主要的物件儲存系統有aws、swift和ceph物件儲存。主要用來儲存非結構化資料。
glusterfs是乙個開源分布式檔案系統,具有強大的橫向擴充套件能力,可支援數pb儲存容量和數千客戶端,通過infiniband rdma 或tcp/ip 方式將許多廉價的x86 主機,通過網路互聯成乙個並行的網路檔案系統。具有可擴充套件性、高效能、高可用性等特點。
glusterfs採用可堆疊的使用者空間設計,如圖所示:
glusterfs是根據fuse提供的介面實現的乙個使用者態的檔案系統,主要包括gluster、glusterd、glusterfs和glusterfsd四大模組組成:
在使用glusterfs提供的儲存服務之前,需要先掛載儲存池,向掛載點寫資料,會經過fuse核心模組傳給客戶端,客戶端檢查儲存池的型別,然後計算資料所在伺服器 ,最後通過socket或rdma與伺服器通訊,如圖2所示:glusterfs模組關係圖
接下來會從優點和缺點兩方面入手來介紹glusterfs。
GlusterFS 儲存結構原理介紹
一 分布式檔案系統 分布式檔案系統 distributed file system 是指檔案系統管理的物理儲存資源並不直接與本地節點相連,而是分布於計算網路中的乙個或者多個節點的計算機上。目前意義上的分布式檔案系統大多都是由多個節點計算機構成,結構上是典型的客戶機 伺服器模式。流行的模式是當客戶機需...
GlusterFS 部署和應用
關於glusterfs的原理理論介紹,這裡檢視 一 glusterfs 安裝 本博文講簡要介紹glusterfs在centos 7 中的部署和應用。由於glusterfs需要使用網路,因此還必須事先根據環境設定防火牆規則,關閉selinux。因為glusterfs至少需要兩台伺服器搭建,所以我們這裡...
GlusterFS 部署和應用
關於glusterfs的原理理論介紹,這裡檢視 一 glusterfs 安裝 本博文講簡要介紹glusterfs在centos 7 中的部署和應用。由於glusterfs需要使用網路,因此還必須事先根據環境設定防火牆規則,關閉selinux。因為glusterfs至少需要兩台伺服器搭建,所以我們這裡...