天天看點

【good】在CentOS 6.x上安裝GlusterFS

轉發:http://quenywell.com/install-glusterfs-on-centos-6-x/

本文主要介紹如何在CentOS 6.x上快速安裝GlusterFS。

GlusterFS是一個開源的分布式檔案系統,它可以将分散的存儲空間聚合在一起,形成一個虛拟的存儲池。它支援橫向擴充(Scale-Out),可通過增加存儲節點來提升整個系統的容量或性能,存儲容量可擴充至PB級。這一擴充機制是目前的存儲技術熱點,能有效應對容量、性能等存儲需求。

GlusterFS除了支援

分散存儲(Distributed,将不同的檔案放在不同的存儲節點)之外,

還支援鏡像存儲(Replicated,同一個檔案存放在兩個以上的存儲節點) 和

分片存儲(Stripped,将一個檔案分劃分為多個固定長度的資料,分散存放在所有存儲節點)。

  1. 事前準備

準備三台機器(實體機或者虛拟機均可)用于安裝和測試GlusterFS,其中兩台用作伺服器,一台用作用戶端,主機名分别為:

server1.quenywell.com
server2.quenywell.com
client.quenywell.com      
    1. 安裝GlusterFS

      1. 在每台機器上安裝GlusterFS的源(repo):

wget -P /etc/yum.repos.d http://download.gluster.org/pub/gluster/glusterfs/LATEST/CentOS/glusterfs-epel.repo      
      1. 在伺服器server1和server2上安裝服務端軟體:

# yum -y install glusterfs-server glusterfs glusterfs-fuse      

啟動GlusterFS服務:

# /etc/init.d/glusterd start      

設定GlusterFS随系統啟動:

# chkconfig glusterd on      
      1. 在client上安裝用戶端軟體:

        # yum -y install glusterfs glusterfs-fuse
    1. GlusterFS伺服器設定

      1. 加入可信存儲池(Trusted Storage Pool)

在server1上運作以下指令: #通過hostname通路對端peer,建議配置hostname(若不配置hostname,遷移場景IP變化時,就麻煩了)

# gluster peer probe server2
Probe successful      

檢視狀态:

# gluster peer status
Number of Peers: 1

Hostname: server2.quenywell.com
Uuid: c191b17b-ab9d-4b15-a70d-dcc92be067c9
State: Peer in Cluster (Connected)
      
      1. 建立GlusterFS邏輯卷(Volume)

在server1和server2分别建立/data目錄:(兩台要一緻的目錄,否則下面建立volume會不成功,而且不能在 / 下的目錄)

# mkdir /data      

然後執行以下指令(隻需要在其中一台伺服器上執行即可,本例使用server1):

# gluster volume create gv0 replica 2 server1:/data server2:/data
Creation of volume gv0 has been successful. Please start the volume to access data.      

這條指令的意思是使用Replicated的方式,建立一個名為gv0的卷(Volume),存儲塊(Brick)為2個,分别為server1:/data和server2:/data。

啟用GlusterFS邏輯卷:

# gluster volume start gv0
Starting volume gv0 has been successful      

檢視邏輯卷狀态:

# gluster volume info
 
Volume Name: gv0
Type: Replicate
Volume ID: 5429d6c1-44e5-43ad-a495-0a1f5b6d774b
Status: Started
Number of Bricks: 1 x 2 = 2
Transport-type: tcp
Bricks:
Brick1: server1.quenywell.com:/data
Brick2: server2.quenywell.com:/data
      
    1. GlusterFS用戶端連接配接

在用戶端client.quenywell.com上使用mount指令,把伺服器上建立的GlusterFS邏輯卷gv0挂載到本地目錄/mnt/glusterfs上:

# mkdir /mnt/glusterfs
mount -t glusterfs server1.quenywell.com:/gv0 /mnt/glusterfs      

确認挂載結果:

# mount -t fuse.glusterfs      

出現以下類似資訊即表示挂載成功:

server1.quenywell.com:/gv0 on /mnt/glusterfs type fuse.glusterfs (rw,default_permissions,allow_other,max_read=131072)      

如果希望系統重新開機後可以自動挂載,在/etc/fstab檔案中加入此行:

server1.quenywell.com:/data /mnt/glusterfs glusterfs defaults,_netdev 0 0      
    1. 用戶端測試

client端成功挂載邏輯卷之後,在挂載目錄/mnt/glusterfs建立檔案以測試GlusterFS是否正常工作。

# cd /mnt/glusterfs
# touch file1 file2 file3
# ls -l
-rw-r--r-- 1 root root          0 Nov  11 14:31 file1
-rw-r--r-- 1 root root          0 Nov  11 14:31 file2
-rw-r--r-- 1 root root          0 Nov  11 14:31 file3
      

因為建立卷gv0的時候使用的是鏡像存儲(Replicated),是以在gv0上寫入的檔案應該同時出現在兩個伺服器的/data目錄上。

在server1和server2檢視/data目錄,可以看到兩個伺服器均出現這三個檔案:

[root@server1]# ls -l
-rw-r--r-- 1 root root          0 Nov  11 14:31 file1
-rw-r--r-- 1 root root          0 Nov  11 14:31 file2
-rw-r--r-- 1 root root          0 Nov  11 14:31 file3
      
[root@server2]# ls -l
-rw-r--r-- 1 root root          0 Nov  11 14:31 file1
-rw-r--r-- 1 root root          0 Nov  11 14:31 file2
-rw-r--r-- 1 root root          0 Nov  11 14:31 file3
      

自此GlusterFS快速安裝過程結束。如果需要了解更多有關GlusterFS的知識,敬請關注科威網後續相關文章。

(完)

繼續閱讀