Choosing a Managed File System with Amazon FSx - When to Use Lustre, Windows, ONTAP, and OpenZFS

Compare the four FSx file system types - Lustre, Windows, ONTAP, and OpenZFS - and learn guidelines for S3 integration and performance design.

FSx Overview

FSx provides four types of fully managed file systems, delivering up to hundreds of GB/s throughput and millions of IOPS. You select the optimal type based on workload requirements (protocol, performance, compatibility with existing environments). While EFS is a general-purpose file system using the NFS protocol, FSx offers choices optimized for specific use cases. All types support daily automatic backups with a configurable retention period from 7 to 90 days by default. Encryption at rest (via KMS) and in-transit encryption are supported across all types, and network access is controlled through VPC security groups.

Choosing Among the Four Types

FSx for Lustre delivers hundreds of GB/s throughput and millions of IOPS, used for HPC simulations, ML training, and video rendering. It integrates with S3 data repositories, allowing transparent read/write access to S3 data from the Lustre file system. Two deployment types exist: Scratch file systems (for temporary processing) and Persistent file systems (for long-term retention). Scratch is lower-cost but has no data redundancy, while Persistent replicates data within an AZ. FSx for Windows File Server supports the SMB protocol with Active Directory integration, enabling direct migration of Windows application file shares. It also supports DFS Namespaces for multi-file-system aggregation and Shadow Copies for self-service file restore. FSx for NetApp ONTAP supports both NFS and SMB, with SnapMirror for synchronizing data with on-premises ONTAP. Automatic data tiering between SSD storage and capacity pool storage optimizes costs based on access frequency. FSx for OpenZFS supports the NFS protocol for Linux workloads, with near-instant clone creation from snapshots. Data compression (LZ4/Z-Standard) extends effective capacity, making it useful for database clones in dev/test environments.

Detailed Comparison of the Four Types

FSx for Lustre is designed for HPC and ML training data, providing hundreds of GB/s throughput with transparent S3 integration. Its storage is composed of Metadata Servers (MDS) and Object Storage Targets (OSTs), striping files for parallel I/O. FSx for Windows File Server provides the SMB protocol with Active Directory integration, ideal for Windows workloads. It offers Single-AZ and Multi-AZ deployment options; Multi-AZ provides automatic failover for high availability. FSx for NetApp ONTAP provides multi-protocol support (NFS, SMB, iSCSI) and data management features (snapshots, clones, tiering). FlexClone creates zero-copy data clones for rapid test environment provisioning. FSx for OpenZFS provides high-performance file storage for Linux workloads via the NFS protocol, with fast snapshots and clones. It supports up to 12,800 MB/s throughput and over 1 million IOPS, accessible from NFS v3/v4.x clients. For a comprehensive look at FSx storage strategies, check out technical books (Amazon).

Design Best Practices and Pitfalls

With Lustre Scratch file systems, data is lost on node failure, so always enable automatic export to S3 or explicitly export upon job completion. Even with Persistent, enabling S3 integration reduces disaster recovery time. For Windows File Server, SSD storage throughput capacity starts at a minimum of 8 MB/s, but production environments should provision at least 20% headroom above expected peak load. Throughput capacity changes are online but trigger an internal failover. For ONTAP, if you do not properly configure the tiering policy for capacity pool storage (the low-cost S3 backend), cold data remains on SSD, leading to cost overruns. Tiering policies include Auto (default), Snapshot Only, All, and None - choose based on your workload's access patterns. For OpenZFS, enabling data compression improves throughput efficiency, but for data with low compressibility (video, pre-encrypted data), it only adds CPU overhead with no benefit - verify your workload characteristics beforehand.

FSx Pricing and Limits

FSx for Lustre SSD storage costs approximately $0.145 per GB per month, and HDD costs approximately $0.036. FSx for Windows SSD costs approximately $0.13 per GB per month. FSx for ONTAP SSD costs approximately $0.125 per GB per month, with automatic tiering to capacity pool storage (approximately $0.025/GB) for cost optimization. FSx for OpenZFS SSD costs approximately $0.09 per GB per month. Note that all types incur additional charges for throughput capacity and backup storage beyond the base storage cost. Minimum file system sizes are: Lustre 1.2 TiB (HDD 6 TiB), Windows 32 GiB, ONTAP 1024 GiB (SSD), and OpenZFS 64 GiB. Lustre throughput scales proportionally with storage capacity, meaning you cannot increase throughput without increasing capacity. ONTAP also has limits on volumes per SVM (Storage Virtual Machine) and junction count, so check Service Quotas before designing large-scale deployments.

Summary

FSx provides four types of managed file systems: Lustre, Windows File Server, NetApp ONTAP, and OpenZFS. Select the type based on your workload's protocol and performance requirements, and optimize storage costs with ONTAP's automatic tiering. At the design stage, understand each type's limitations and deployment options (Single-AZ/Multi-AZ, Scratch/Persistent) to make informed trade-offs between fault tolerance and cost.