Lustre Striping Guide

Lustre file striping distributes file data across multiple Object Storage Targets (OSTs) using a RAID-0 pattern to improve performance, scalability, and bandwidth. Striping is managed by the Logical Object Volume (LOV) layer and stored as extended attributes. It enables parallel I/O. This guide covers Lustre 2.17.0 (January 2026), based on the Lustre Operations Manual (updated 2025). For details, see Lustre Manual.

Core Concepts

ConceptDescription
Stripe CountNumber of OSTs per file. Default: 1. Max: 2000 (2.13+ with ea_inode or ZFS).
Stripe SizeSize of each chunk. Default: 1 MiB. Multiple of 64 KiB. Max: <4 GiB.
Stripe OffsetStarting OST index. Default: -1 (MDS chooses, strongly preferred).
RAID-0 StripingDefault round-robin without redundancy.
Progressive File Layout (PFL)Dynamic extents with varying stripes and other parameters (2.10+).
Self-Extending Layout (SEL)Extends PFL components dynamically (2.13+).
Data on MDT (DoM)Small files on MDT (2.11+).
Directory InheritanceStriping propagates to subdirs/files (with limited inheritance 2.14+).(with limited inheritance 2.14+).
File Level Redundancy (FLR)Mirroring for multi-tiered storage, fault tolerance (2.11+).
OverstripingMultiple stripes per OST for highly-contended files(2.13+).
Striped DirectoriesDirectories spread across MDTs (2.8+).

Commands

CommandPurposeKey Options
lfs setstripeSet striping-c (count), -S (size), -E (component end), -p (pool), -L / --layout / --layout / --layout / --layout / --layout (layout)
lfs getstripeDisplay striping-v (verbose)
lfs setdirstripeSet dir striping (2.13+)-D, -c, -i
lfs mkdirCreate striped dir-c (count)
lfs findLocate by attributes--layout, --pool
lfs mirrorManage FLRcreate, resync, -N (mirrors)
lfs migrateRe-layout files(same as lfs setstripe)
filefragCheck fragmentation-v
lfs dfSpace usage-h, -i
lctl set_paramTuningmdc.dom_stripes=1
getfattrInspect xattrs-d, -m

Options

OptionDescriptionExample
-c / --stripe-countOST count-c 8
-S / --stripe-sizeChunk size-S 128K
-E / --comp-endComponent end-E 1G
-C / --overstripe-countPer OST stripes-C -2
-p / --poolOST pool-p flash
-z / --extension-sizeSEL extend size-z 64M
-LLayout type-L / --layout / --layout / --layout / --layout / --layout mdt
--mirror-count / -NMirrors-N 2
--flagsFLR flags--flags prefer

Types & Layouts

TypeDescription
RAID-0Default no-redundancy striping.
PFLDynamic extents (2.10+).
SELAuto-extending PFL (2.13+).
DoMSmall files on MDT (2.11+).
FLRMirroring (2.11+).
Foreign LayoutExternal references.

Best Practices

Performance Considerations

Recent Features (Up to 2.17.0)

Examples

# Plain striping across eight OSTs with 4MiB stripe size
lfs setstripe -c 8 -S 4M /mnt/lustre/file

# PFL to have wide striping after first 1GiB of file to have wide striping after first 1GiB of file to have wide striping after first 1GiB of file to have wide striping after first 1GiB of file to have wide striping after first 1GiB of file
lfs setstripe -E 1G -c 1 -E eof -c -1 /mnt/lustre/bigfile

# DoM to put first 1MiB of files on MDT flash, rest of files on HDD OSTs to put first 1MiB of files on MDT flash, rest of files on HDD OSTs to put first 1MiB of files on MDT flash, rest of files on HDD OSTs to put first 1MiB of files on MDT flash, rest of files on HDD OSTs to put first 1MiB of files on MDT flash, rest of files on HDD OSTs
lfs setstripe -E 1M -L / --layout / --layout / --layout / --layout / --layout mdt -E -1 -S 4M -c -1 /mnt/lustre/smallfile

# SEL to avoid filling small SSD devices to avoid filling small SSD devices to avoid filling small SSD devices to avoid filling small SSD devices to avoid filling small SSD devices
lfs setstripe -E 1G -z 64M --pool ssd -E -1 -z 256M /mnt/lustre/growfile

# FLR mirrors with tiered data copy on HDD mirrors with tiered data copy on HDD mirrors with tiered data copy on HDD mirrors with tiered data copy on HDD mirrors with tiered data copy on HDD
lfs mirror create -N 2 -S 4M -c 2 --pool ssd -N -c -1 --pool hdd /mnt/lustre/critical

# Overstriping for highly concurrent write workload for highly concurrent write workload for highly concurrent write workload for highly concurrent write workload for highly concurrent write workload
lfs setstripe -c -1 -C -2 /mnt/lustre/highthread

# Get layout information for a file layout information for a file layout information for a file layout information for a file layout information for a file
lfs getstripe -vy /mnt/lustre/file

Warnings

Monitoring & Maintenance