[lustre-discuss] Is it that simple to add a pair of new OSTs ?
Andreas Dilger
adilger at ddn.com
Sat Apr 5 00:00:00 PDT 2025
It really is that simple.
You didn't mention what version you are using, but based on the hardware and sizes I would assume it is not the latest.
As such, there is a race that if clients are actively creating and writing new files at the instant the OSTs are added, those files may be inaccessible on some clients for a few seconds until the new OSTs are visible on all clients.
If the clients accessing the filesystem are quiesced during the initial mount then there is no race. Very recent servers and clients have fixed this race.
Cheers, Andreas
On Apr 3, 2025, at 15:12, Audet, Martin via lustre-discuss <lustre-discuss at lists.lustre.org> wrote:
Hello Lustre community,
We are operating a small HPC cluster (576 compute cores) using a small Lustre parallel filesystem (64 TB) connected by Infiniband EDR network. The Lustre filesystem is implemented by a single HPE DL380 Gen10 server acting as MGS, MDS and OSS. It has two 32 TB OSTs (HPE MSA 2050). As new space is required, we will soon install 160 TB of additional storage implemented two 80 TB OSTs (HPE MSA 2060).
We looked in the Lustre documentation (10.2.1. Scaling the Lustre File System: https://doc.lustre.org/lustre_manual.xhtml#idm140220261007664) and made tests with small VMs. It appear that in our case adding this new storage would be very simple. From what we understand we should do something like this:
# Create mount points for the new OSTs
mkdir /mnt/ost{2,3}
# The MGS is running on the same node as the OSTs
mgs_node="$(sed -n -e 's/^ *- *nid: *//; T; p' < /etc/lnet.conf)"
# Set the devices corresponding to the new OSTs using invariant names
ost2_device=/dev/disk/by-path/...
ost3_device=/dev/disk/by-path/...
# Create the file systems on the new OSTs
mkfs.lustre --fsname=lustrevm --mgsnode=$mgs_node --ost --index=2 $ost2_device
mkfs.lustre --fsname=lustrevm --mgsnode=$mgs_node --ost --index=3 $ost3_device
# Update fstab
cat >> /etc/fstab << _EOF_
$ost2_device /mnt/ost2 lustre defaults,_netdev 0 0
$ost3_device /mnt/ost3 lustre defaults,_netdev 0 0
_EOF_
# Mount the new OSTs
mount /mnt/ost2
mount /mnt/ost3
This appears too simple. Are we missing something ? Will the new files created by the clients use the four OSTs with no additional effort ?
Thanks in advance !
Martin Audet
_______________________________________________
lustre-discuss mailing list
lustre-discuss at lists.lustre.org
http://lists.lustre.org/listinfo.cgi/lustre-discuss-lustre.org
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.lustre.org/pipermail/lustre-discuss-lustre.org/attachments/20250405/2b13ea96/attachment.htm>
More information about the lustre-discuss
mailing list