Linux home directories on a build fleet must present the same files after an instance is replaced in any Availability Zone. Which storage should those home directories use?
Select an answer to reveal the explanation.
Short Explanation
A home directory bolted to one disk is a locker in one room. You need the same POSIX files from any zone, and Amazon EFS is the shared file system that provides them. One EBS volume stays in a single zone and cannot follow your builders when they land somewhere else.
Full Explanation
Home directories that must match after a replacement in any Availability Zone need one shared POSIX file system. Amazon EFS is that file system: instances in each zone mount the same files, and a replacement instance mounts them again. One EBS volume on the first instance lives in a single Availability Zone. Exporting it by address does not turn it into shared storage that builders in other zones can rely on after a replacement. Instance store volumes from the launch template are local to the host and disappear when that instance is replaced, so the home does not survive. An S3 website endpoint serves objects over HTTP. Mapping it on each builder as a block device does not give the user a POSIX home directory. Caveat: the EFS mount still needs a mount target in each zone where builders run, and those instances need permission to reach the mount, or the shared file system is present and unreachable. Operational check: write a file from an instance in one zone, replace an instance in another zone, and read that same file from the new instance.