One of the main reasons why organizations move workloads to the cloud is because of the perception that operating in the cloud is going to be less costly than continuing to host the workload on premises. While adopting an OpEx cloud services model can indeed save an organization a significant amount of money, such savings are not automatically guaranteed.
When an organization chooses to host a workload in the cloud, there are often a variety of options for doing so. The way in which an organization chooses to host the workload can have a dramatic impact on cost. This is because as a general rule, cloud providers bill their subscribers based on the resources that they consume. Of course, it isn’t just the volume of resource consumption that matters, but also the type of resources consumed. Some hardware resources are billed at a premium rate. For instance, a cloud provider might charge more for SSD storage than for HDD storage.
All of this is to say that it is relatively common for organizations to experience a bad case of sticker shock following a cloud migration. To show you what I mean, let’s take a look at a simple, but common use case – cloud based file services.
Suppose for a moment that a particular organization has decided that it wants to retire its on premises file servers, and host all of its file data in the Azure cloud instead, using Azure Files. As you would no doubt expect, Microsoft charges its customers a per gigabyte per month fee for the data that they store in Azure Files. However, things are a bit more complicated than they might initially seem.
For starters, Microsoft charges different rates depending on whether the data is considered to be hot ($0.0276 per GB) or cool ($0.015 per GB).
While the cost difference between hot and cool data can make it difficult to estimate Azure Files related storage costs, there are other costs to consider. For example, Microsoft charges a fee for the cost of storing data snapshots, and there is also a fee associated with storing file metadata, which includes things like Access Control Lists and other file properties. Both the metadata fees and the snapshot fees vary based on whether the data is stored on hot or cool storage.
As strange as it may seem, the previously mentioned storage costs often account for a mere fraction of an organization’s overall Azure Files related costs. The reason for this is that the fees that have been discussed so far pertain to data at rest. Data that is actively being used incurs additional fees such as read, write, and list transactions. There are also ancillary fees for retrieving data from cool storage, or for deleting data from cool storage within 30 days of its initial creation.
Of course, organizations that are contemplating the use of Azure Files must also consider how their users will access the file data. There are two main options available. One option is to map a network drive to a cloud-based SMB file share. This option works, but doesn’t usually provide the best end user experience because of the latency involved in reading and writing file data across an Internet connection.
The other option is to set up a sync server. Using a sync server can improve the end user experience, but incurs additional costs. Some of these costs are related to the need to deploy and maintain an on-premises Windows Server that will act as the Sync Server. Additionally, Microsoft bills its customers $5 per month per sync server (although there is no fee for the first sync server).
The total cost of using Azure Files can vary based on a number of factors. You can find the full pricing information here.
As previously noted, there can be compelling benefits to hosting Windows File Services in the cloud. The real question, however, is how to do so without incurring needless costs.
One of the best ways to reduce the cost of hosting file services in the Azure cloud is to consider the type of storage that is being used. At the beginning of this blog post, I mentioned that cloud providers tend to charge a premium price for using certain types of hardware resources. This tends to be especially true for storage. There isn’t just one type of storage available in the Azure cloud. Azure subscribers have options.
Azure Files has been designed to use a specific type of storage, and subscribers do not have the option of selecting a less expensive storage option. There are however, third party vendors such as Nasuni that offer Windows file services solutions in Azure. Nasuni’s approach is to store file data in Azure BLOB storage, which is far less expensive than the storage used by Azure Files. The point is that whether you choose to use Azure Files or to adopt a third-party solution using Azure Blob instead, it’s important to consider the type of cloud storage that it is using since the choice of storage dramatically impacts the overall cost.
Keep in mind however, that storage type isn’t the only thing factor that has a major impact on the overall cost. Data that is actively being used incurs additional fees mentioned above that are tied to read, write, and list transactions.
One of the best tricks for reducing these fees is to take advantage of edge caching. Having a local edge cache can help to reduce cloud transaction costs since hot data related transactions will be directed to the caching device rather than to the Azure cloud. An added benefit is that because hot data is retained locally, users will generally see improved performance over that of accessing files that are stored solely in the cloud. Edge caching strategies range from using a VM for no extra cost (Nasuni plus Azure Blob), to deploying a dedicated Windows server at each site which requires regular software updates and maintenance (Azure Files with sync).
I’ll be diving more into this topic in an upcoming webinar with Nasuni on September 29th, I hope you’ll join me there.