Debian6 搭建GlusterFS集羣-Distributed Volumes

 

    在你配置glusterfs的volume以前,你須要先建立一個由存儲服務器組成的能夠信任的存儲池,glusterfs服務必須運行在每一臺加入存儲池的服務器上。算法

    加入一臺服務器到可信任存儲池shell

    命令:gluster peer probe server-namewindows

    在GlusterFS-Server1上加入兩臺服務器到存儲池中,在GlusterFS-Server1上不須要設置加入本身,只須要設置要加入進來的服務器。在加入進來的服務器上會看到GlusterFS-Server1的。服務器

gluster peer probe GlusterFS-Server2
gluster peer probe GlusterFS-Server3

    以下圖:

    檢查加入可信任存儲池中的服務器狀態併發

    命令:gluster peer statustcp

gluster peer status

    以下圖:分佈式

    從存儲池中移除一臺服務器高併發

    命令:gluster peer detach server性能

gluster peer detach GlusterFS-Server3

    如圖:

    建立glusterfs的volume,volume是bricks的邏輯集合,每個bricks都是在信任的存儲池中服務器上導出的目錄,當建立volume的時候,你必須指定volume由那些bricks組成。測試

    建立一個新volume

    命令:gluster volume create NEW-VOLNAME [stripe COUNT | replica COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK1 NEW-BRICK2 NEW-BRICK3

    在GlusterFS中有五中類型的volume能夠被建立:

    Distributed:分佈式卷,文件經過hash算法隨機的分佈到由bricks組成的捲上。

    Replicated:複製式卷,相似raid1,replica數必須等於volume中brick所包含的存儲服務器數,可用性高。

    Striped:條帶式卷,相似與raid0,stripe數必須等於volume中brick所包含的存儲服務器數,文件被分紅數據塊,以Round Robin的方式存儲在bricks中,併發粒度是數據塊,大文件性能好。

    Distributed Striped:分佈式的條帶卷,volume中brick所包含的存儲服務器數必須是stripe的倍數(>=2倍),兼顧分佈式和條帶式的功能。

    Distributed Replicated:分佈式的複製卷,volume中brick所包含的存儲服務器數必須是 replica 的倍數(>=2倍),兼顧分佈式和複製式的功能。

 

下面開始構建Distributed Volumes

      只須要在volume中的一臺存儲服務器上操做,咱們選擇在GlusterFS-Server1上操做

      分佈式的卷把文件分佈的存放在整個卷的bricks中,分佈式卷通常用於擴展存儲或者數據冗餘要求不高的地方,可是若是存儲服務器或者磁盤故障,分佈式的卷會致使嚴重的數據丟失。文件在分佈式卷中是隨機存放的,默認使用tcp協議。

     建立一個分佈式的卷,包含GlusterFS-Server1:/opt/Server一、GlusterFS-Server2:/opt/Server二、GlusterFS-Server3:/opt/Server3等目錄。

gluster volume create test-volume GlusterFS-Server1:/opt/Server1 GlusterFS-Server2:/opt/Server2 GlusterFS-Server3:/opt/Server3

    如圖:

    查看建立的卷的信息

    命令:gluster volume info

gluster volume info

    如圖:能夠看到在GlusterFS-Server2/GlusterFS-Server3中能夠看到相同的信息

    在建立完volume以後,就該啓動建立的捲了:

    啓動volumes

    命令:gluster volume start volume-name

    也能夠在卷中的其餘存儲機器上啓動卷,咱們在GlusterFS-Server3上啓動test-volume

gluster volume start test-volume

     如圖:

設置glusterfs客戶端 訪問數據

       glusterfs提供了三種方式訪問存儲服務器的數據:

       Gluster Native Client:這種方式提供了高併發、高性能、高傳輸速率的方式。

       NFS:可使用NFS V3版本訪問數據,你須要在客戶端和服務端安裝 nfs-common軟件包。

       CIFS:在windows下使用,相似與samba,samab客戶端須在客戶端安裝。

客戶端其實和服務端同樣,服務端既能夠作服務端也能夠作客戶端,都須要fuse,檢查fuse模塊是否被加載:

dmesg | grep -i fuse

     手動掛載卷

           在命令行指定的存儲掛載服務器是用來獲取gluster的卷配置文件的,隨後客戶端會直接和配置文件中提到的服務器進行通信。因此只要是卷中的服務器均可以掛載。

          掛載test-volume捲到/mnt目錄:

mount -t glusterfs GlusterFS-Server1:/test-volume /mnt

          如圖:

     在客戶端的/mnt目錄建一批測試文件:

cd /mnt
touch test{1,2,3,4,5,6,7,8,9}

      如圖:

      而後觀察存儲服務端文件的分佈狀況 由於我掛載的是分佈式卷,文件在卷中是隨機存放的,因此能夠看到是無規律的。

 

 

相關文章
相關標籤/搜索