[LU-17008] improve man and help of lfs-stripe command about overstripe Created: 01/Aug/23 Updated: 01/Aug/23 |
|
| Status: | Open |
| Project: | Lustre |
| Component/s: | None |
| Affects Version/s: | None |
| Fix Version/s: | None |
| Type: | Improvement | Priority: | Minor |
| Reporter: | Shuichi Ihara | Assignee: | WC Triage |
| Resolution: | Unresolved | Votes: | 0 |
| Labels: | None | ||
| Severity: | 3 |
| Rank (Obsolete): | 9223372036854775807 |
| Description |
|
'lfs stripe -o 0-3,0-3 <DIR>' allowed today and it enables overstriping across OST0-3 automatically. # mkdir out # lfs getstripe out out stripe_count: 1 stripe_size: 1048576 pattern: 0 stripe_offset: -1 # lfs setstripe -o 0-3,0-3 out [root@ec01 exafs]# lfs getstripe out out stripe_count: 8 stripe_size: 1048576 pattern: raid0,overstriped stripe_offset: 0 this is a useful option, but, command help didn't mention about that. ost_indices: List of OST indices, can be repeated multiple times
Indices be specified in a format of:
-o <ost_1>,<ost_i>-<ost_j>,<ost_n>
Or:
-o <ost_1> -o <ost_i>-<ost_j> -o <ost_n>
If --pool is set with --ost then the OSTs
must be the members of the pool.
it would be better to add about overstriping and an example. |
| Comments |
| Comment by Andreas Dilger [ 01/Aug/23 ] |
|
Also, the "lfs getstripe" on the directory with the specific layout is not very clear. It shows only the stripe_count and stripe_offset, but doesn't actually show that this is picking specific OSTs. |
| Comment by Andreas Dilger [ 01/Aug/23 ] |
|
Using a PFL layout appears not to preserve the specific OSTs in the directory default layout, unlike the plain layout above: $ lfs setstripe -E 1M -c 1 -E 16G -o 3,2,1 -c 3 -E eof -c -1 /myth/tmp/adilger/pfldir
$ touch /myth/tmp/adilger/pfldir/pflfile
$ dd if=/dev/zero of=/myth/tmp/adilger/pfldir/pflfile bs=1M count=1 seek=17k
$ lfs getstripe /myth/tmp/adilger/pfldir/pflfile
/myth/tmp/adilger/pfldir/pflfile
lcm_layout_gen: 4
lcm_mirror_count: 1
lcm_entry_count: 3
lcme_id: 1
lcme_mirror_id: 0
lcme_flags: init
lcme_extent.e_start: 0
lcme_extent.e_end: 1048576
lmm_stripe_count: 1
lmm_stripe_size: 1048576
lmm_pattern: raid0
lmm_layout_gen: 0
lmm_stripe_offset: 1
lmm_objects:
- 0: { l_ost_idx: 1, l_fid: [0x100010000:0x283f79:0x0] }
lcme_id: 2
lcme_mirror_id: 0
lcme_flags: init
lcme_extent.e_start: 1048576
lcme_extent.e_end: 17179869184
lmm_stripe_count: 3
lmm_stripe_size: 1048576
lmm_pattern: raid0
lmm_layout_gen: 0
lmm_stripe_offset: 3
lmm_objects:
- 0: { l_ost_idx: 3, l_fid: [0x100030000:0x2d9d42:0x0] }
- 1: { l_ost_idx: 2, l_fid: [0x100020000:0x4a930c:0x0] }
- 2: { l_ost_idx: 1, l_fid: [0x100010000:0x283f7a:0x0] }
lcme_id: 3
lcme_mirror_id: 0
lcme_flags: init
lcme_extent.e_start: 17179869184
lcme_extent.e_end: EOF
lmm_stripe_count: 5
lmm_stripe_size: 1048576
lmm_pattern: raid0
lmm_layout_gen: 0
lmm_stripe_offset: 0
lmm_objects:
- 0: { l_ost_idx: 0, l_fid: [0x100000000:0x2b646a:0x0] }
- 1: { l_ost_idx: 2, l_fid: [0x100020000:0x4a930d:0x0] }
- 2: { l_ost_idx: 3, l_fid: [0x100030000:0x2d9d43:0x0] }
- 3: { l_ost_idx: 4, l_fid: [0x100040000:0x40ed8f:0x0] }
- 4: { l_ost_idx: 1, l_fid: [0x100010000:0x283f7b:0x0] }
|