The Problem: Shared Block Storage
Most applications run on a single server and need a single disk. But some architectures — particularly legacy enterprise clustering software — require multiple servers to share the same raw block device simultaneously. Think of a two-node Oracle RAC cluster where both nodes must read and write to the same disk at the same time.
Before Multi-Attach, the only AWS options were EFS (file storage, not block storage) or running your own SAN on EC2 instances. Neither was ideal for applications that specifically required a shared block device.
EBS Multi-Attach
EBS Multi-Attach allows a single io1 or io2 volume to be attached to up to 16 EC2 instances simultaneously, all within the same Availability Zone.
Each attached instance has full read and write access to the volume. This enables:
- Oracle RAC clusters on AWS
- High-availability clustered applications using Pacemaker/Corosync
- Parallel processing workloads that require shared block storage
The Critical Warning: File System Compatibility
This is where engineers make catastrophic mistakes. Multi-Attach does not handle write coordination for you. It simply allows multiple servers to send writes to the same block device simultaneously.
Standard file systems — Linux ext4, xfs, Windows NTFS — assume they are the only writer. They maintain internal data structures (journal, inode tables, allocation bitmaps) that will be immediately corrupted if two servers write to the same volume without coordination. You will lose data.
You must use a Cluster-Aware File System:
| File System | Platform | Notes |
|---|---|---|
| GFS2 | Linux (RHEL/CentOS) | Red Hat's cluster file system |
| OCFS2 | Linux | Oracle's cluster file system |
| Veritas InfoScale | Linux/Windows | Enterprise, licensed |
These file systems implement distributed locking — they communicate over the network to coordinate which server can write to which part of the disk at any given moment.
Alternative: If your application does its own write coordination at the application layer (like Oracle RAC does), you can use the volume as a raw block device without any file system at all.
A common interview question is: "Can you mount an EBS volume on two EC2 instances at the same time?" The nuanced answer is: "Yes, with Multi-Attach on io1/io2 volumes, but only within the same AZ, and only with a cluster-aware file system or application-level write coordination. Using a standard file system like ext4 in this configuration will corrupt your data." This answer demonstrates you know the feature exists AND understand its constraints — which is what separates a senior engineer from someone who just read the docs.