Last week I had a chat with Rick Braddy from SoftNAS. Some of you might know Rick from when he was the CTO of a hosted virtul desktop company called Virtual-Q and others from when he was the CTO of Citrix for XenApp and XenDesktop. Today Rick is the CTO for SoftNAS, a software and appliance based storage solution. Rick gave me an introduction to what it is SoftNAS (Professional) does and offers and I figured I would do a short write-up as an introduction to SoftNAS.
Ultimately SoftNAS is a virtual appliance that offers up local storage as shared storage. SoftNAS is build on top of CentOS and leverages ZFS. It is deployed as a virtual machine, which means that it takes a couple of minutes to set up. SoftNAS has a nice looking user interface which allows you to quickly create shared storage for your virtual environment. When I say quickly I mean in a matter of minutes you have shared storage to your disposal: select your volumes –> create a storage pool –> create a volume –> use it. For those who care, besides VMware vSphere SoftNAS also supports Hyper-V and Amazon EC2.
When you’ve powered up the SoftNAS appliance and provided it with virtual disks, hosted on your local storage, you can easily create datastores for your environment. These datastores can be NFS mount points or iSCSI volumes, and SoftNAS also offers you the option to create a CIFS share for those who need it. Rick told me they had various customers who were actually using the appliance solely for CIFS purposes. The datastores you create can be thin provisioned, and you have the option to enable features like deduplication and compression.
In order to ensure a certain level of performance SoftNAS offers three “accelerator features”, the first one is RAM caching which is enabled by default. The virtual appliance itself needs about 1GB of memory, so if you provision it with 16GB of memory it means you will have ~ 15GB of RAM cache available. On top of that there is the option to enable read caching and write logging. In both cases you can select which device you want to use for read caching and write logging, meaning that you could for instance use a local SSD to improve performance for your environment.
In order to provide a certain level of availability SoftNAS offers snapshotting, replication. The snapshotting functionality has a nice simple scheduling mechanism which allows for a lot of flexibility. You could for instance snapshot every hour during business days and business hours. Replication, when enabled, happens once per minute. Of course only the changed blocks are transmitted and as blocks are compressed in-line this will reduce the amount of bandwidth required.
One thing that did stood out to me when we spoke about availability is that there is no “active/active” solution today. Meaning that when your host fails which is running the SoftNAS appliance your other hosts will lose access to their datastores. Rick mentioned that for most of their customers this is no concern today as they target the “lower-end” of the market and typically these are using cheap non-resilient NAS/iSCSI devices, and as SoftNAS does offer replication availability could be increased by leveraging those capabilities. Now it must be said that today if you would replicate the data and a host fails and is unrepairable, the failover would require manual action. During our discussion Rick did mention that this is definitely something they will look in to for future release but he could not comment on when or if this would happen. I guess that depends on customer requests for this functionality, if you do require seamless fail-over then this solution might not be for you. (There are others who do offer this like the vSphere Storage Appliance.)
One big plus though, is the ability to replicate to the cloud. You could for instance use SoftNAS to run your virtual machines within your datacenter and then for Disaster Recovery purposes replicate your virtual machines to Amazon EC2 (or other clouds for that matter). This definitely is one of those features that differentiates SoftNAS from other solutions out there. What also surprised me (and might be appealing to customers) was their pricing model. The pricing model is subscription based and per TB of usable storage. You can buy either a monthly subscription for $100 per TB, or an annual subscription for $995 per TB. This includes all functionality mentioned above!
I am looking forward to what else SoftNAS will add functionality wise in the future, I hope they will enhance availability by offering some sort of clustering (active/active appliance) solution so that in the case of a host failure your remaining hosts are not impacted. Also some level of orchestration for their DR services to ensure VMs are powered-on in the right order would be welcome, maybe integration with SRM.
If you want to learn more about SoftNAS make sure to hit their website or download their 60-day trial. There is also an “Essentials” version of the product which you can use for free up to 1TB of storage, note that it has limited functionality.