0Pricing
AWS Solutions Architect · Lesson

FSx: Windows File Server and Lustre

Run a fully managed Windows-native SMB file system with FSx for Windows, or use FSx for Lustre for high-performance computing workloads.

FSx: Windows File Server and Lustre is a free AWS Solutions Architect lesson on CoddyKit — lesson 4 of 4. You can read the complete lesson below for free — then practise it hands-on in the browser with a built-in code editor and a 24/7 AI tutor. It is part of the AWS Solutions Architect learning path, one of 4 lessons in the course, and your progress syncs across the web and the CoddyKit app.

What Is Amazon FSx?

Amazon FSx is a family of fully managed file systems on AWS built on industry-standard technologies. While EFS provides a POSIX NFS file system for Linux, FSx provides purpose-built file systems for specific workloads that need native protocol support or specialised performance characteristics. The four FSx flavours are: FSx for Windows File Server (SMB), FSx for Lustre (HPC), FSx for NetApp ONTAP, and FSx for OpenZFS. The SAA-C03 exam primarily tests Windows and Lustre.

FSx for Windows File Server: Overview

Amazon FSx for Windows File Server is a fully managed, Windows-native SMB file system built on Windows Server. It supports all Windows-specific features: SMB protocol (versions 2.0-3.1.1), Active Directory integration, Distributed File System (DFS) namespaces, Windows ACLs, NTFS, user quotas, and shadow copies. It is the AWS-native replacement for on-premises Windows file servers and is specifically designed for Windows applications that require SMB access — including Microsoft SharePoint, SQL Server, home directories, and custom Windows .NET applications.

# Create an FSx for Windows file system joined to an AD domain
aws fsx create-file-system \
  --file-system-type WINDOWS \
  --storage-capacity 2000 \
  --storage-type SSD \
  --subnet-ids subnet-aaa111 subnet-bbb222 \
  --windows-configuration '{
    "ActiveDirectoryId": "d-1234567890",
    "ThroughputCapacity": 256,
    "DeploymentType": "MULTI_AZ_1",
    "AutomaticBackupRetentionDays": 7
  }'

Active Directory Integration

FSx for Windows integrates with AWS Managed Microsoft Active Directory or your self-managed AD (on-premises or on EC2). All users authenticate using their AD credentials, and you manage file permissions using Windows ACLs — exactly like an on-premises Windows file server. This makes FSx for Windows the most straightforward lift-and-shift target for Windows file shares. When connecting to a self-managed AD, FSx requires network connectivity to domain controllers via Direct Connect or VPN.

# Join FSx to a self-managed (on-premises) AD via Direct Connect
# aws fsx create-file-system with windows configuration:
# "SelfManagedActiveDirectoryConfiguration": {
#   "DomainName": "corp.example.com",
#   "OrganizationalUnitDistinguishedName": "OU=FSx,DC=corp,DC=example,DC=com",
#   "FileSystemAdministratorsGroup": "FSxAdmins",
#   "UserName": "svc-fsx@corp.example.com",
#   "Password": "...",
#   "DnsIps": ["10.0.0.10", "10.0.0.11"]
# }

FSx for Windows: Deployment Types

FSx for Windows has two deployment types: Single-AZ (one file server in one AZ — 99.9% availability SLA, cheaper) and Multi-AZ (synchronous replication to a standby file server in a second AZ with automatic failover — 99.99% availability SLA). Multi-AZ requires two subnets in different AZs and uses a floating IP that automatically migrates to the standby during failover. For production Windows workloads requiring HA, always choose Multi-AZ. Single-AZ is suitable for dev/test environments.

# Compare availability SLAs:
# Single-AZ 1 or 2: 99.9% SLA
# Multi-AZ 1: 99.99% SLA (synchronous standby, auto-failover)

# Access the FSx share from a Windows instance using UNC path:
# \\fs-0abc1234def567890.corp.example.com\share

# Or map a drive using PowerShell:
# New-SmbMapping -LocalPath 'Z:' -RemotePath '\\amznfsxabcd1234.corp.example.com\share'

FSx for Windows: Backups and Shadow Copies

FSx for Windows supports automatic daily backups (retained 0-90 days) and on-demand manual backups stored in S3. Backups are incremental and application-consistent because FSx uses VSS (Volume Shadow Copy Service). Shadow copies provide previous-version access to files — end users can right-click a file in Windows Explorer and restore a previous version without contacting IT. Shadow copies are stored on the file system itself and are distinct from FSx backups.

# Create an on-demand backup of an FSx Windows file system
aws fsx create-backup \
  --file-system-id fs-0abc1234def567890 \
  --tags Key=Purpose,Value=PreUpgradeBackup

# Configure shadow copy schedule via FSx console or PowerShell:
# $schedule = '{ "CopyFrequency": "DAILY_07_00" }'
# Set-FsxWindowsConfiguration -ShadowCopyConfiguration $schedule

# Shadow copies give end users self-service file recovery

FSx for Lustre: Overview

Amazon FSx for Lustre is a fully managed, high-performance parallel file system based on the open-source Lustre file system. Lustre is the file system of choice for supercomputers and HPC clusters. FSx for Lustre delivers sub-millisecond latency, hundreds of GB/s throughput, and millions of IOPS — making it ideal for machine learning training, genomics, financial simulations, seismic analysis, and video rendering. It integrates natively with Amazon S3 as a backing data repository.

# Create an FSx for Lustre file system linked to S3
aws fsx create-file-system \
  --file-system-type LUSTRE \
  --storage-capacity 1200 \
  --subnet-ids subnet-aaa111 \
  --lustre-configuration '{
    "ImportPath": "s3://my-hpc-data-bucket",
    "ExportPath": "s3://my-hpc-data-bucket/exports",
    "DeploymentType": "PERSISTENT_2",
    "PerUnitStorageThroughput": 250
  }'

FSx for Lustre: S3 Integration

FSx for Lustre can be linked to an S3 bucket as a data repository. Files in S3 appear in the Lustre namespace immediately (lazy loading — actual data is copied into Lustre on first access). When your HPC job completes, you can export results back to S3 with a data repository task. This pattern allows you to store large datasets cost-effectively in S3, spin up a Lustre file system for the duration of a compute job, and then destroy the Lustre system — paying only for the compute time.

# Import data from S3 to FSx Lustre on demand
aws fsx create-data-repository-task \
  --type IMPORT_METADATA_AND_DATA \
  --paths 's3://my-hpc-data-bucket/dataset/' \
  --file-system-id fs-0abc1234def567890 \
  --report '{ "Enabled": true, "Path": "s3://my-hpc-data-bucket/task-reports/", "Scope": "FAILED_FILES_ONLY"}'

# Export results back to S3 after computation
aws fsx create-data-repository-task \
  --type EXPORT_TO_REPOSITORY \
  --paths '/results/' \
  --file-system-id fs-0abc1234def567890

FSx for Lustre: Deployment Types

FSx for Lustre has two main deployment types: Scratch (temporary, non-replicated, highest throughput-per-price — for short-running batch jobs where data loss is acceptable because all data comes from S3) and Persistent (replicated within AZ, designed for long-running HPC workloads that need resilience). Persistent 2 is the current generation, offering PerUnitStorageThroughput of 125, 250, or 500 MB/s/TiB. For the SAA-C03 exam: Scratch = cost-optimised temporary jobs, Persistent = long-running or sensitive data.

# Scratch file system (no replication, cheaper, for temporary jobs)
aws fsx create-file-system \
  --file-system-type LUSTRE \
  --storage-capacity 1200 \
  --subnet-ids subnet-aaa111 \
  --lustre-configuration '{
    "DeploymentType": "SCRATCH_2",
    "ImportPath": "s3://my-data-bucket"
  }'

# Scratch 2 specs:
# 200 MB/s per TiB baseline
# 6x burst (data not replicated within AZ)

Mounting FSx for Lustre on Linux

FSx for Lustre is mounted on Linux instances using the Lustre client. Amazon Linux 2 and Amazon Linux 2023 include the Lustre kernel module. After creating mount targets and configuring the security group to allow Lustre protocol traffic (port 988 and port range 1018-1023), you mount using the lustre file system type. The mount point provides full POSIX semantics. For ML training, mount the file system on all training instances — they all see the same dataset without data copying.

# Install Lustre client on Amazon Linux 2
sudo amazon-linux-extras install -y lustre

# Mount the FSx for Lustre file system
sudo mkdir /mnt/fsx
sudo mount -t lustre \
  -o relatime,flock \
  fs-0abc1234def567890.fsx.us-east-1.amazonaws.com@tcp:/fsx \
  /mnt/fsx

# Verify mount and check throughput
df -h /mnt/fsx
lsattr /mnt/fsx

FSx for NetApp ONTAP and OpenZFS

FSx for NetApp ONTAP provides multi-protocol access (NFS, SMB, and iSCSI) with advanced ONTAP features including thin provisioning, data deduplication, compression, and SnapMirror replication — ideal for enterprises migrating NetApp storage to AWS without re-architecting. FSx for OpenZFS provides NFS-accessible storage with ZFS's built-in data integrity checking, compression, and snapshots. Both support Linux and Windows clients. For the SAA-C03 exam, ONTAP is the answer when the scenario mentions 'existing NetApp storage' or 'multi-protocol file access'.

Choosing Between EFS, FSx for Windows, and FSx for Lustre

Key selection criteria: EFS — Linux/POSIX NFS, elastic capacity, multi-instance sharing, Lambda support. FSx for Windows — Windows clients needing SMB, Active Directory integration, Windows ACLs, NTFS — the only option for Windows applications that require native Windows file server features. FSx for Lustre — HPC, ML training, genomics, video rendering — when you need hundreds of GB/s throughput and millions of IOPS with S3 integration. The SAA-C03 exam tests these distinctions through workload scenario questions.

Quick Check

Test your understanding of AWS Solutions Architect (SAA-C03) concepts from this lesson.

Lesson Recap

In this lesson you learned: FSx for Windows File Server provides native SMB with Active Directory integration for Windows workloads requiring NTFS, ACLs, and shadow copies, FSx for Lustre delivers millions of IOPS and hundreds of GB/s for HPC and ML training with direct S3 data repository integration, and Scratch deployments are cost-optimised for temporary jobs while Persistent deployments suit long-running resilient workloads. Next up we explore caching with ElastiCache.

Frequently asked questions

Is the “FSx: Windows File Server and Lustre” lesson free?

Yes — the full text of “FSx: Windows File Server and Lustre” is free to read here on the web, and the AWS Solutions Architect course includes 4 lessons in total. To practise it interactively (a built-in code editor and a 24/7 AI tutor) and unlock the rest of the AWS Solutions Architect course, upgrade to CoddyKit PRO.

What will I learn in “FSx: Windows File Server and Lustre”?

Run a fully managed Windows-native SMB file system with FSx for Windows, or use FSx for Lustre for high-performance computing workloads. You practise AWS Solutions Architect with hands-on code you run directly in the browser, and a 24/7 AI tutor answers your questions as you work through the lesson.

Do I need any experience to start AWS Solutions Architect?

No prior experience is required. AWS Solutions Architect on CoddyKit is structured for beginners through advanced learners; this is — lesson 4 of 4, so you can start here or from the beginning and move at your own pace.

How long does the “FSx: Windows File Server and Lustre” lesson take?

Most CoddyKit lessons take about 5–10 minutes. Each one is bite-sized and interactive, so you make steady progress and pick up exactly where you left off across the web and the app.

Can I write and run code in this AWS Solutions Architect lesson?

Yes. Every AWS Solutions Architect lesson includes a built-in code editor, so you write and run real code right in your browser and get instant AI feedback — no local setup required.

All lessons in this course

  1. EBS Volume Types: gp3, io2, st1, sc1
  2. EBS Snapshots, Encryption, and RAID
  3. EFS: Shared File Storage for Linux
  4. FSx: Windows File Server and Lustre
← Back to AWS Solutions Architect