How can you use Amazon S3 or S3-compatible Storage as NFS?
How can you use Amazon S3 or S3-compatible Storage as NFS? Is there a way to achieve this?
Something that can be accessed through an external network (internet, public) using NFS protocol.
Solution 1:
If you want to use S3 as mounted storage for personal computers, you have two possibilities.
One is to use an EC2 server as NFS server, backed by S3. AWS provides a server called AWS Storage Gateway for doing this, but you will of course have to pay for running that server 24/7. I think it might be oriented towards providing NFS inside your VPC, though. Providing an NFS service over the Internet is an uncomfortable proposition from a security perspective.
Much better is to have code on your computer to present S3 as local storage. There is a commercial plugin called ObjectiveFS and a free opensource one called S3FS-FUSE; I think S3FS-FUSE is the answer you are looking for, if it is not then their page at the bottom has a list of "competitors".
There are several caveats to using S3 as mounted storage, though:
- modifying a file forces you to re-upload the whole object, which is bad if you modify large files.
- since IO is billed per request you might incur unexpected costs (think updatedb running over your data).
Solution 2:
EFS (Elastic File System) is NFS on AWS. But it has nothing to do with S3.
If you need to serve files on that type of FS I think you need to run your own webserver pointing to the mounted share.