本文應用幾個常見的實例來說明一些gluster中經常涉及到的命令:
建立卷(Create Volume)
如果你打算使用gluster分佈式存儲,那麼首要的步驟是建立卷。建立卷的模式有很多種,具體模式可以參見官方網站。我們這裏來建立一個複製卷(類似raid1)。
1.將所有服務器加入存儲池
gluster peer probe HOSTNAME
2.創建卷
gluster volume create NEWVOLNAME [stripe COUNT | replica COUNT] [transport [tcp | rdma | tcp,rdma]] NEWBRICK1 NEWBRICK2 NEWBRICK3...
3.啓動卷
gluster volume start VOLNAME
刪除卷(Delete Volume)
當然你也可以刪除你創建的卷。
1.停止卷
gluster volume stop VOLNAME
2.刪除卷
gluster volume delete VOLNAME
擴展卷(Expanding Volume)
你可能在使用gluster的過程中想在線擴展卷的大小,比如給分佈式的卷中添加brick,以增加捲的容量。如果你的卷是分佈式複製卷或者分佈式條帶卷,你新增的brick的數量必須是複製或者條帶數目的倍數。比如你建立的卷replica爲2,那麼新增的brick的數量必須是2,4,6,8等。
1. 把新增的存儲服務器加入存儲池
gluster peer probe HOSTNAME
2. 把brick加入卷中
gluster volume add-brick VOLNAME NEWBRICK
3. 查看卷信息
gluster volume info
4. 重新平衡卷
gluster volume rebalance VOLNAME start | stop | status
縮小卷(Shrinking Volume)
你可能在使用gluster過程中想在線縮小卷的大小,比如當服務器故障或網絡故障時,你想移除卷中相關的brick。同樣需要注意的是如果你建立的是分佈式複製卷或分佈式條帶卷,你刪除的brick數量必須是複製或條帶數目的倍數。
1. 把brick從卷中移除
gluster volume remove-brick VOLNAME BRICK
2. 查看卷信息
gluster volume info
3. 重新平衡卷
gluster volume rebalance VOLNAME start | stop | status
在線遷移數據(Migrating Data)
你可能想在線遷移一個brick中的數據到另一個brick中,首先確保相應存儲服務器已加入存儲池中。
1.遷移數據到另一個brick中
gluster volume replace-brick VOLNAME BRICK NEWBRICK start
2.查看遷移進度狀態
gluster volume replace-brick VOLNAME BRICK NEWBRICK status
3.提交遷移數據
gluster volume replace-brick VOLNAME BRICK NEWBRICK commit