我需要为我们的一个gluster卷添加更多空间。卷是副本2并位于LVM之上。文件系统是XFS。目前的大小是4TB,我想调整到6TB。 LVM在两个副本服务器上都有足够的Free PE。
--- Physical volume ---
PV Name /dev/sdb
VG Name gluster
PV Size 10,91 TiB / not usable 4,00 MiB
Allocatable yes
PE Size 4,00 MiB
Total PE 2861183
Free PE 1633407
Allocated PE 1227776
PV UUID F3CwNm-dceK-ezPY-7w12-OYT5-FLAH-U0a239
-
--- Physical volume ---
PV Name /dev/sdb
VG Name gluster
PV Size 10,91 TiB / not usable 4,00 MiB
Allocatable yes
PE Size 4,00 MiB
Total PE 2861183
Free PE 1618047
Allocated PE 1243136
PV UUID dWDEgF-0brq-9e6r-eqpO-jTeK-GJfb-c3MGbE
我已经在某处读过,它足以扩展LVM并在两台主机上调整FS的大小。
# lvextend -L +2T <lvm>
# xfs_growfs <lvm mountpoint>
我知道XFS必须在安装时重新调整。 LVM也可以在操作期间调整大小(尽管不推荐)。我已经读过某个地方,只要两个/所有卷都有新的大小,GlusterFS就会自动适应新的卷大小。
由于存储在生产环境中使用,因此动态执行此操作非常重要。
有没有人对此组合有任何经验或确认我的方法是否正确?
提前致谢。
答案 0 :(得分:2)
回答我自己的问题:
最终我们不得不在没有停机的情况下增加Gluster存储空间。
将所有Gluster砖的逻辑卷扩展到相同的大小并将xfs文件系统扩展到卷的最大大小后,Gluster卷会自动调整新的大小。
我不确定这是否是推荐的方式,但它对我们来说就像一个魅力(副本2和副本3卷)。
答案 1 :(得分:0)
如果需要,根据https://access.redhat.com/solutions/1517993,可以通过增加砖头而不是添加新的砖头来增加glusterfs体积。
You can do it following a usual file system resizing method (the method will depend on the underlying block device).
Example : the brick is set on an XFS file system on the LV VGgluster/brick1. We want to add another 500MB to this brick.
Check that you have free space on the VG containing the brick :
~~~
# vgs VGgluster
~~~
Grow the file system :
~~~
# lvextend --resizefs -L+500M VGgluster/brick1
~~~
The size has been updated on the client :
~~~
# df /glusterfs/mountpoint
根据我的经验:如果它是副本卷,则必须调整所有卷的块的大小。在所有砖块都具有相同的大小之前,特定胶合板体积的实际大小将等于当前最小砖块的大小。