这是我在“堆栈”系统中提出的第一个问题,而且......它可能非常愚蠢。
尤其是因为我思考我知道答案,但因为它涉及一些具有关键数据的生产系统,所以我想确定并得到一些确认。
那么,情况是这样的。
我们有一台存储服务器,它连接到存储阵列(它是一个由主机和分机组成的DDN存储阵列)。服务器上的数据卷是LVM卷。
实际上它基于 6 个物理卷。
当我发现它有一些奇怪的条纹配置时,我有点惊讶:
[root ~]# lvs --segments
LV VG Attr #Str Type SSize
data ddn -wi-ao-- 4 striped 114.00t
data ddn -wi-ao-- 2 striped 57.11t
该卷不是我创建的,我不确定这种配置的原因。可能有两种解释:
a) 最初仅使用 4 个 PV 创建卷;另外 2 个是后来添加的。
b) 前 4 个 PV 位于存储阵列的主单元中,另外 2 个位于扩展单元中。
无论如何,它确实运行得相当好。
现在,我想向我的 LVM 添加一个新卷。我只能添加一个卷,无法添加两个卷。
我成功地做到pvcreate
了vgextend
。
但是,当我尝试做
lvextend /dev/ddn/data -l+100%FREE
它询问我关于条纹的问题。我有点困惑。
我应该表明
lvextend /dev/ddn/data -l+100%FREE --stripes 3
尝试将我的卷添加到数据组
ddn -wi-ao-- 2 条带 57.11t
或者
lvextend /dev/ddn/data -l+100%FREE --stripes 1
因为我只有一个卷,所以它只能被自己条带化(据我所知没有条带化)。
第二种可能性似乎是正确的。第一种则不正确(因为我们无法将卷添加到已经条带化的组中,至少在不进行某些操作的情况下无法这样做)。
尤其是点5.4.9. 扩展条带卷这似乎证实了我应该做“--stripes 1”的想法,但我想确定一下。
另一个附加问题。如果答案“条纹 1”是正确的。在 RedHat 文章中,他们说:
如果没有足够的底层物理设备来扩展条带化逻辑卷,则有可能无论如何都要扩展该卷(如果扩展不是条带化的并不重要),但这可能会导致性能不均匀。
您认为这真的会影响表演吗?
性能问题对我们来说很重要,但并不关键。因此,如果它可能会对性能产生一点影响,并且在某些情况下:这对我们来说是可以接受的。但如果它真的会减慢我们的系统速度……我不知道该怎么做(正如我所说,我只能添加一个 PV,目前无法添加另一个 PV)。
谢谢你的帮助。抱歉问了个愚蠢的问题。