[LU-14985] Change stride/stripe-width on an existing ldiskfs filesystem Created: 04/Sep/21  Updated: 05/Sep/21

Status: Open
Project: Lustre
Component/s: None
Affects Version/s: Lustre 2.12.7
Fix Version/s: None

Type: Bug Priority: Minor
Reporter: Joe Frith Assignee: WC Triage
Resolution: Unresolved Votes: 0
Labels: None
Environment:

RHEL7.9


Severity: 3
Rank (Obsolete): 9223372036854775807

 Description   

There seems no way to change stride/stripe-width on an existing live ldiskfs OST LUN. We used incorrect stride/stripe-width with mkfs.lustre initially and now are seeing poor write performance. 

Is there a supported way of changing stride/stripe-width values?



 Comments   
Comment by Joe Frith [ 04/Sep/21 ]

Is it safe to use tune2fs  -E stride=x,stripe-width=x on a mounted OST with data on it to change stride and stripe-size for a ldiskfs type OST device? 

Comment by Andreas Dilger [ 04/Sep/21 ]

It would be useful if you included the "dumpe2fs -h" output for the device. Yes, it is fine to change these on a running filesystem, they only affect new allocations. In the past they also used to affect inode and block bitmap location, but the flexbg feature overrides this.

Comment by Andreas Dilger [ 04/Sep/21 ]

That said, it is likely that the mmp feature will prevent tune2fs from running while the filesystem is mounted.

Comment by Joe Frith [ 05/Sep/21 ]

Here is the output of dumpe2fs. The RAID backend is (8+2) with 512K chunk size. I believe the correct values are "
-E stride=128,stripe-width=1024". I will change it by unmounting the OSD.

 

 

[root@oss2 ~]# dumpe2fs -h /dev/mapper/lustredisk01-01
dumpe2fs 1.45.6.wc2 (28-Sep-2020)
Filesystem volume name: data-OST0000
Last mounted on: /
Filesystem UUID: 8f25e350-6203-4ee9-9c1f-62e9c00c8ced
Filesystem magic number: 0xEF53
Filesystem revision #: 1 (dynamic)
Filesystem features: has_journal ext_attr dir_index filetype needs_recovery extent 64bit mmp flex_bg sparse_super large_file huge_file uninit_bg dir_nlink quota
Filesystem flags: signed_directory_hash
Default mount options: user_xattr acl
Filesystem state: clean
Errors behavior: Continue
Filesystem OS type: Linux
Inode count: 89649152
Block count: 22950182912
Reserved block count: 1147509145
Overhead clusters: 13015772
Free blocks: 21513452873
Free inodes: 89293588
First block: 0
Block size: 4096
Fragment size: 4096
Group descriptor size: 64
Blocks per group: 32768
Fragments per group: 32768
Inodes per group: 128
Inode blocks per group: 16
RAID stride: 32
RAID stripe width: 256
Flex block group size: 256
Filesystem created: Sat Dec 19 13:16:33 2020
Last mount time: Mon Jun 14 15:10:54 2021
Last write time: Mon Jun 14 15:10:54 2021
Mount count: 13
Maximum mount count: -1
Last checked: Sat Dec 19 13:16:33 2020
Check interval: 0 (<none>)
Lifetime writes: 13 TB
Reserved blocks uid: 0 (user root)
Reserved blocks gid: 0 (group root)
First inode: 11
Inode size: 512
Required extra isize: 32
Desired extra isize: 32
Journal inode: 8
Default directory hash: half_md4
Directory Hash Seed: 539641ac-c91c-4f61-8a99-a4d496714eeb
Journal backup: inode blocks
MMP block number: 15562
MMP update interval: 5
User quota inode: 3
Group quota inode: 4
Journal features: journal_incompat_revoke journal_64bit
Journal size: 400M
Journal length: 102400
Journal sequence: 0x000db5e3
Journal start: 31899
MMP_block:
mmp_magic: 0x4d4d50
mmp_check_interval: 10
mmp_sequence: 0x15ab88
mmp_update_date: Sat Sep 4 19:39:59 2021
mmp_update_time: 1630798799
mmp_node_name: oss2.example.com
mmp_device_name: dm-2

[root@oss2 ~]#

Generated at Sat Feb 10 03:14:27 UTC 2024 using Jira 9.4.14#940014-sha1:734e6822bbf0d45eff9af51f82432957f73aa32c.