From pfarrell at thelustrecollective.com Fri Sep 4 17:47:23 2026 From: pfarrell at thelustrecollective.com (Patrick Farrell) Date: Fri, 4 Sep 2026 17:47:23 +0000 Subject: [lustre-devel] LTVM: An invitation Message-ID: Hi all, I'm here to tell you about a tool to make it easy for you to do Lustre VMs for development and testing on your local machine, and make it easy to explore a running Lustre system. LTVM (Lustre test VMs) is a tool for building and running Lustre VMs created by myself and Marc Vef (of DDN). It lets you easily run Lustre VMs on any Mac or Linux machine, and is perfect for use with AI agents. https://github.com/lustre-tools/lustre-test-vms LTVM makes it trivial to create ephemeral Lustre VMs, and is a great fit for agentic engineering - you or your AI agent can create and deploy VMs in seconds. It's perfect for development workflows or if you want to explore Lustre without setup hassle. LTVM is used every day by engineers at DDN and TLC in their dev workflows. With a fast connection, it takes about 5 minutes to go from zero to "Lustre running in a VM". After that, it takes a few seconds to create new VMs. Here's an example of installing ltvm, fetching a pre-built build chain (you can also build from scratch), and creating a VM with Lustre running: git clone https://github.com/lustre-tools/lustre-test-vms.git cd lustre-test-vms # One-time host setup: QEMU with microvm support, network bridge, # dnsmasq, SSH keys, and 'ltvm' on your PATH. sudo ./ltvm install # Download the pre-built chain: build container, kernel, VM image, # and Lustre (~1.3 GB). ltvm target fetch rocky9 # Create and boot the VM. Boot takes about two seconds. ltvm create co1-single       # Example options: --vcpus 2 --mem 4096 \ --mdt-disks 1 --ost-disks 3 # Format and mount Lustre inside the VM (llmount.sh). ltvm llmount co1-single That VM is a single node client + server combination, running all of Lustre: $ ssh co1-single 'mount -t lustre,lustre_tgt; lfs df -h' /dev/mapper/mds1_flakey on /mnt/lustre-mds1 type lustre_tgt (rw,svname=lustre-MDT0000,mgs,osd=osd-ldiskfs,user_xattr,errors=remount-ro) /dev/mapper/ost1_flakey on /mnt/lustre-ost1 type lustre_tgt (rw,svname=lustre-OST0000,mgsnode=192.168.100.148 at tcp,osd=osd-ldiskfs,errors=remount-ro) /dev/mapper/ost2_flakey on /mnt/lustre-ost2 type lustre_tgt (rw,svname=lustre-OST0001,mgsnode=192.168.100.148 at tcp,osd=osd-ldiskfs,errors=remount-ro) 192.168.100.148 at tcp:/lustre on /mnt/lustre type lustre (rw,flock,checksum,encrypt,lazystatfs,lruresize,nolock,statfs_project,nosync_on_close,nouser_fid2path,user_xattr,verbose) UUID bytes Used Available Use% Mounted on lustre-MDT0000_UUID 275.1M 1.6M 239.9M 1% /mnt/lustre[MDT:0] lustre-OST0000_UUID 401.5M 1.4M 365.1M 1% /mnt/lustre[OST:0] lustre-OST0001_UUID 401.5M 1.4M 365.1M 1% /mnt/lustre[OST:1] filesystem_summary: 802.9M 2.8M 730.2M 1% /mnt/lustre When you're done with it, "ltvm destroy co1-single" - the VMs are disposable. If you want to swap the Lustre version to your own: # Build your tree against the VM's kernel, inside the build container. ltvm build lustre rocky9 --lustre-tree ~/lustre-release # Install it into the running VM and remount. ltvm deploy-lustre co1-single --lustre-tree ~/lustre-release --mount Builds are incremental and deploys are idempotent, so the edit/build/test loop stays short. LTVM can run on a Mac or a Linux VM or on Windows in WSL2. Multiple ltvm VMs can talk to each other, so you can spread a filesystem across separate MGS/MDS/OSS/client nodes when you need to. Everything is containerized, so you can build + test any supported OS from any platform. LTVM comes with an AGENTS.md and CLAUDE.md with instructions for your agent to use the tool, plus a SUGGESTED-AGENTS.md of ready-made snippets to drop into your own Lustre workspace. This is our invitation to anyone wanting to explore Lustre: Come on in, the water's fine. Check out Marc's LUG presentation for more info: https://wiki.lustre.org/images/6/60/LUG2026-LTVM_Lustre_Test_VM_Project-Farrell.pdf LTVM is open source (BSD licensed) and is available for any use. If you have questions, send a note here or create a GitHub issue: https://github.com/lustre-tools/lustre-test-vms/issues Note: Please do not use ltvm to produce production images; it is strictly a dev tool and images produced are deliberately configured without normal security practices. Patrick Farrell Principal Engineer, The Lustre Collective -------------- next part -------------- An HTML attachment was scrubbed... URL: