We recently challenged our talented team to create “Cool Apps” that use object storage and our S3 API in interesting and novel ways. Read our previous blog posts to learn more about a web photobook app and a data visualization app created by Cloudian team members.
Jeffry Molanus, a Systems Engineer in the Netherlands, created a NAS (Network Attached Storage) gateway to provide a simple way to store files on object storage.
Piecing Together a NAS Gateway
Users have a ton of files and it’s only going to increase in the next few years. Utilizing S3 object storage is a cost-effective solution for storing data at scale, but it’s not always an option – for example, when your application uses legacy storage protocols like SMB or NFS and changing it to the native S3 protocol is not an option.
There are many great solutions on the market that perform this gateway functionality — we offer one, called HyperStore Connect for Files — but Jeffry was interested to see if he could assemble one from open source software alone.
Indeed, by using open source tools and Cloudian S3, he was able to piece together a NAS gateway solution that fills this gap. To make this app possible, he turned to a short list of open source technologies:
- ZFS
- FUSE
- SAMBA
- Linux
The Benefits of the NAS Gateway
The NAS gateway allows users to implement file sharing in enterprise environments with additional features such as cloning, snapshots, inline compression, and online expansion. Each bucket will map to a virtual file, and by adding multiple files/devices to the system, a pool of buckets is created which all map to a different bucket, allowing for massive scalability.
Moreover, this system also ensures data integrity, achieved through the following features built in:
- Data is never overwritten until it’s deleted
- Users can create a mirror across two different regions
- The system provides capabilities to replicate buckets with built-in ‘send’ and ‘receive’ functionality
- Users can create multiple isolated shares in the same bucket
There is much more someone could potentially do with an app like this, such as boosting performance by adding SSDs or using it for a filesystem to serve legacy FTP sites.
While the user-facing interface is simply drag and drop (see the image below), there’s a lot of cool stuff going on in the background to make sure files are resilient and easily transferrable to S3 storage.
While this app is only a demonstration, it shows that S3 storage is highly versatile. With a little ingenuity, you can take advantage of its scalability, data durability, and efficiency benefits, regardless of the data type. Learn more about S3 storage by checking out our solutions.