GlusterFS安裝配置

                                               GlusterFS安裝配置性能優化

 

公司業務變化須要文件服務器,以前使用的nfs在服務器多的狀況下,對用戶要求過高致使好多用戶不能寫入。以後測試了sambanfs用戶體驗很差,rsync多主機之間配置比較複雜。服務器

 

1.GlusterFS文件系統和架構介紹網絡

         1)、GlusterFS文件系統簡介及優勢架構

                                     GlusterFSScale-Out存儲解決方案Gluster的核心,它是一個開源的分佈式文件系統,具備強大的橫向擴展能力,經過擴展可以支持數PB存儲容量和處理數千客戶端。運維

         2)GlusterFS藉助TCP/IPInfiniBandRDMA網絡將物理分佈的存儲資源彙集在一塊兒,使用單一全局命名空間來管理數據。異步

         3)、GlusterFS基於可堆疊的用戶空間設計,可爲各類不一樣的數據負載提供優異的性能。socket

         4)、GlusterFS支持運行在任何標準IP網絡上標準應用程序的標準客戶端,用戶能夠在全局統一的命名空間中使用NFS/CIFS等標準協議來訪問應用數據。分佈式

         5)、GlusterFS使用用戶可擺脫原有的獨立、高成本的封閉存儲系統,可以利用普通廉價的存儲來部署集中管理、橫向擴展、虛擬化的存儲池,存儲容量可擴展至TB/PB級。ide

        

 

2.安裝配置性能

如下是兩臺主機配置複製模式:

 

192.168.1.10 server1

192.168.1.20 server2

 

每臺主機必須準備一臺沒有格式化的硬盤,GlusterFS須要獨立使用一塊硬盤。

 

格式化硬盤

mkfs.xfs -i size=512  /dev/sdb1 mkdir -p /data/test echo '/dev/sdb1/data/logs  xfs defaults 1 2' >>/etc/fstab mount -a && mount

 

啓動、中止服務

啓動glusterfs

service glusterd start service glusterdstatus

service glusterd stop

 

建立集羣

gluster peer probe server2

gluster peer probe server1

 

建立共享盤

mkdir -p /data/brick1/gv0

gluster volume create gv0 replica 2server1:/data/logs/gv0 server2:/data/logs/gv0 gluster volume start gv0

 

查看卷信息狀態

gluster volume info

 

啓動、中止卷

gluster volume start gv0

gluster volume stop gv0

 

客戶端安裝

wget -P /etc/yum.repos.dhttp://download.gluster.org/pub/gluster/glusterfs/LATEST/CentOS/glusterfs-epel.repo

yum install -y glusterfs-3.4.2-1.el6glusterfs-fuse-3.4.2-1.el6

 

客戶端掛載磁盤

mount -t glusterfs server1:/gv0 /mnt

 

測試建立文件   for i in `seq -w 1 100`; docp -rp /var/log/messages /mnt/copy-test-$i; done

 

ls -lA /mnt | wc -l

ls -lA /data/logs/gv0

 

刪除卷

volume delete gv0

 

移除集羣

gluster peer detach server1  server2

 

 

收縮卷

1.      glustervolume remove-brick gv0 server1:/data/logs/gv0 server2:/data/logs/gv0 start # 開始遷移  

2.      glustervolume remove-brick gv0 server1:/data/logs/gv0 server2:/data/logs/gv0 status # 查看遷移狀態  

3.      glustervolume remove-brick gv0 server1:/data/logs/gv0 server2:/data/logs/gv0 commit # 遷移完成後提交

 

 

 

系統運維篇

1、系統配額

# gluster volume quota VOLNAMEenable/disable

//在使用系統配額功能時,須要使用enable將其開啓;disable爲關閉配額功能命令。

2.設置(重置)目錄配額

# gluster volume quota VOLNAME limit-usage/directorylimit-value

#gluster volume quota vg0 limit-usage/quota 10GB

//如上,設置dht_vol卷下的quota子目錄的限額爲10GB

PS:這個目錄是以系統掛載目錄爲根目錄」/,因此/quota即客戶端掛載目錄下的子目錄quota

3.配額查看

# gluster volume quota VOLNAME list

# gluster volume quota VOLNAME list/directory name

//可使用如上兩個命令進行系統卷的配額查看,第一個命令查看目的卷的全部配額設置,第二個命令則是執行目錄進行查看。

//能夠顯示配額大小及當前使用容量,若無使用容量(最小0KB)則說明設置的目錄多是錯誤的(不存在)

4.地域複製、災備(geo-replication)

# gluster volume geo-replication MASTERSLAVE start/status/stop

地域複製是系統提供的災備功能,可以將系統的所有數據進行異步的增量備份到另外的磁盤中。

#gluster volume geo-replicationdht_vol192.168.2.104:/mnt/sdb1 start

//如上,開始執行將dht_vol卷的全部內容備份到2.104下的/mnt/sdb1中的task,須要注意的是,這個備份目標不能是系統中的Brick

5. I/O信息查看

 Profile Command 提供接口查看一個卷中的每個 brick IO 信息。

#gluster volume profile VOLNAME start

//啓動profiling,以後則能夠進行IO信息查看

 

#gluster volume profile VOLNAME info

//查看IO信息,能夠查看到每個BrickIO信息

 

# gluster volume profile VOLNAME stop

//查看結束以後關閉profiling功能

6. Top監控

Top command 容許你查看bricks 的性能例如:read,write, file opencalls, file read calls, file write calls, directory open calls,and directoryreal calls

全部的查看均可以設置top 數,默認100

 

# gluster volume top VOLNAME open[brickBRICK-NAME] [list-cnt cnt]

//查看打開的fd

 

#gluster volume top VOLNAME read [brickBRICK-NAME][list-cnt cnt]

//查看調用次數最多的讀調用

 

#gluster volume top VOLNAME write [brickBRICK-NAME][list-cnt cnt]

//查看調用次數最多的寫調用

 

# gluster volume top VOLNAME opendir[brickBRICK-NAME] [list-cnt cnt]

# gluster volume top VOLNAME readdir[brickBRICK-NAME] [list-cnt cnt]

//查看次數最多的目錄調用

 

# gluster volume top VOLNAME read-perf[bsblk-size count count] [brick BRICK-NAME] [list-cnt cnt]

//查看每一個Brick的讀性能

 

# gluster volume top VOLNAME write-perf[bsblk-size count count] [brick BRICK-NAME] [list-cnt cnt]

//查看每一個Brick的寫性能

 

性能調優示例:

gluster volume start file-backup

gluster volume quota file-backup enable

gluster volume quota file-backuplimit-usage /800TB

gluster volume set file-backupauth.allow192.168.10.31,192.168.12.27

gluster volume setfile-backupperformance.cache-size 4GB

gluster volume setfile-backupperformance.flush-behind on

gluster volume info file-backup

 

 

 

 

gluster 性能優化、報錯解決:

peer 節點從一個集羣,加入到另一個集羣的時候,節點不能啓動 glusterd 報錯解決方法:

 

[root@server114 glusterfs]#vi/usr/local/glusterfs/etc/glusterfs/glusterd.vol

volume management

   typemgmt/glusterd

   option working-directory /var/lib/glusterd

   optiontransport-type socket,rdma

   optiontransport.socket.keepalive-time 10

   optiontransport.socket.keepalive-interval 2

   optiontransport.socket.read-fail-log off

#  optionbase-port 49152

 

/var/lib/glusterd  裏面有記錄信息,刪除下面的全部信息,清空歷史記錄配置文件,服務便可啓動

 

 

擴容server1硬盤,server1以前100G 擴容後200G

fdisk /dev/xvdb 從新分配硬盤空間

mkfs.xfs -i size=512  /dev/xvdb1 格式化硬盤

gluster volume start vol force 卷修復 數據自動同步


參考內容 

https://www.tecmint.com/perform-self-heal-and-re-balance-operations-in-gluster-file-system/磁盤格式化修復

 

測試刪除其中一個節點內容,刪除後幾分鐘後會自動同步回來。

關閉集羣或機器大概兩、三分鐘不能訪問掛載文件夾,以後一切正常啓動後機器會自動複製內容。

相關文章
相關標籤/搜索