Gluster 常用命令


Gluster 常用命令
1 服務器節點
# gluster peer status //查看所有節點信息,顯示時不包括本節點

# gluster peer probe NODE-NAME //添加節點

# gluster peer detach NODE-NAME //移除節點,需要提前將該節點上的brick移除

 

2 glusterd服務
/etc/init.d/glusterd start //啟動glusterd服務
/etc/init.d/glusterd stop //關閉glusterd服務
/etc/init.d/glusterd status //查看glusterd服務

 

3 卷管理
3.1 創建卷
<1>復制卷

語法: gluster volume create NEW-VOLNAME [replica COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK

示例1:gluster volume create test-volume replica 2 transport tcp server1:/exp1/brick server2:/exp2/brick

 

<2>條帶卷

語法:gluster volume create NEW-VOLNAME [stripe COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...

示例:gluster volume create test-volume stripe 2 transport tcp server1:/exp1/brick server2:/exp2/brick

 

<3>分布式卷

語法: gluster volume create NEW-VOLNAME [transport tcp | rdma | tcp, rdma] NEW-BRICK

示例1:gluster volume create test-volume server1:/exp1/brick server2:/exp2/brick
示例2:gluster volume create test-volume transport rdma server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

 

<4>分布式復制卷

語法: gluster volume create NEW-VOLNAME [replica COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...
示例: gluster volume create test-volume replica 2 transport tcp server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

 

<5>分布式條帶卷

語法:gluster volume create NEW-VOLNAME [stripe COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...

示例:gluster volume create test-volume stripe 2 transport tcp server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

 

<6>條帶復制卷

語法:gluster volume create NEW-VOLNAME [stripe COUNT] [replica COUNT] [transport tcp | rdma | tcp, rdma] NEW-BRICK...

示例:gluster volume create test-volume stripe 2 replica 2 transport tcp server1:/exp1/brick server2:/exp2/brick server3:/exp3/brick server4:/exp4/brick

3.2 啟動卷
#gluster volume start test-volume

 

3.3 停止卷
#gluster volume stop test-volume

 

3.4 刪除卷
#gluster volume delete test-volume //先停止卷后才能刪除

 

3.5 查看卷
# gluster volume list /*列出集群中的所有卷*/
# gluster volume info [all] /*查看集群中的卷信息*/
# gluster volume status [all] /*查看集群中的卷狀態*/

# gluster volume status [detail| clients | mem | inode | fd]

3.6 配置卷
# gluster volume set <VOLNAME> <OPTION> <PARAMETER>

 

3.7 擴展卷
# gluster volume add-brick <VOLNAME> <NEW-BRICK>
注意,如果是復制卷或者條帶卷,則每次添加的Brick數必須是replica或者stripe的整數倍。

 

3.8 收縮卷
先將數據遷移到其它可用的Brick,遷移結束后才將該Brick移除:
# gluster volume remove-brick start
在執行了start之后,可以使用status命令查看移除進度:
# gluster volume remove-brick status
不進行數據遷移,直接刪除該Brick:
# gluster volume remove-brick commit
注意,如果是復制卷或者條帶卷,則每次移除的Brick數必須是replica或者stripe的整數倍。

 

3.9 遷移卷
使用start命令開始進行遷移:
# gluster volume replace-brick start
在數據遷移過程中,可以使用pause命令暫停遷移:
# gluster volume replace-brick pause
在數據遷移過程中,可以使用abort命令終止遷移:
# gluster volume replace-brick abort
在數據遷移過程中,可以使用status命令查看遷移進度:
# gluster volume replace-brick status
在數據遷移結束后,執行commit命令來進行Brick替換:
# gluster volume replace-brick commit

3.10 重新均衡卷
不遷移數據:
# gluster volume rebalance lay-outstart
# gluster volume rebalance start
# gluster volume rebalance startforce
# gluster volume rebalance status
# gluster volume rebalance stop

4 Brick管理
4.1 添加Brick
# gluster volume add-brick test-volume 192.168.1.{151,152}:/mnt/brick2

4.2 刪除Brick
若是副本卷,則移除的Bricks數是replica的整數倍
#gluster volume remove-brick test-volume 192.168.1.{151,152}:/mnt/brick2 start
在執行開始移除之后,可以使用status命令進行移除狀態查看。
#gluster volume remove-brick test-volume 192.168.1.{151,152}:/mnt/brick2 status

使用commit命令執行Brick移除,則不會進行數據遷移而直接刪除Brick,符合不需要數據遷移的用戶需求。
#gluster volume remove-brick test-volume 192.168.1.{151,152}:/mnt/brick2 commit

4.3 替換Brick
任務:把192.168.1.151:/mnt/brick0 替換為192.168.1.151:/mnt/brick2
<1>開始替換
#gluster volume replace-brick test-volume 192.168.1.:/mnt/brick0 ..152:/mnt/brick2 start
異常信息:volume replace-brick: failed: /data/share2 or a prefix of it is already part of a volume

說明 /mnt/brick2 曾經是一個Brick。具體解決方法
# rm -rf /mnt/brick2/.glusterfs

# setfattr -x trusted.glusterfs.volume-id /mnt/brick2
# setfattr -x trusted.gfid /mnt/brick2

//如上,執行replcace-brick卷替換啟動命令,使用start啟動命令后,開始將原始Brick的數據遷移到即將需要替換的Brick上。

<2>查看是否替換完

#gluster volume replace-brick test-volume 192.168.1.151:/mnt/brick0 ..152:/mnt/brick2 status
<3>在數據遷移的過程中,可以執行abort命令終止Brick替換。
#gluster volume replace-brick test-volume 192.168.1.151:/mnt/brick0 ..152:/mnt/brick2 abort

<4>在數據遷移結束之后,執行commit命令結束任務,則進行Brick替換。使用volume info命令可以查看到Brick已經被替換。

#gluster volume replace-brick test-volume 192.168.1.151:/mnt/brick0 .152:/mnt/brick2 commit
# 此時我們再往 /sf/data/vs/gfs/rep2上添加數據的話,數據會同步到 192.168.1.152:/mnt/brick0和192.168.1.152:/mnt/brick2上。而不會同步到
192.168.1.151:/mnt/brick0 上。

5 文件系統擴展屬性
獲取文件擴展屬性

getfattr -d -m . -e hex filename

getfattr -d -m "trusted.afr.*" -e hex filename

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM