Important workloads such as media libraries and home directories rely on shared file access. But configuring an enterprise-level file share can be highly complex. What kind of challenges and requirements need to be considered when it comes to cloud file sharing services?
When choosing a file service, users need to find solutions for their share’s availability, accessibility, data protection, performance, backup and archive, storage footprint and costs, scalability, agility, API and automation, migration to the cloud, data replication and synchronization, security, multicloud and hybrid capabilities, and Kubernetes integration. There are a lot of moving parts, which is one of the reasons why the cloud service providers offer fully-managed file service options.
In this post we’ll look at each one of these file share service challenges in the cloud.
1. Cloud File Share Availability
The first of the file share service challenges we will look at pertains to availability. Shared file storage provides access to a vast number of users and it needs to be available on a constant basis. When using the major cloud offerings, configuring the file share’s availability is on the user. This requires complex manual configurations for supporting automatic failover and failback, especially when it comes to using NAS storage. Many enterprise file share-based workloads require strict SLAs of minimal downtime (RTO<60 seconds) and no data loss (RPO=0). In those cases, any loss of data or downtime will be too costly—in terms of lost revenue, reputation, customer churn, legal exposure, and more—to absorb.
To meet the demands of both Linux/ Unix and Windows workloads, a file share solution should enable access with both NFS and SMB/ CIFS protocols and any of those protocols various versions or flavors. Using the major cloud providers, there isn’t a single, native solution that is able to provide this multi-protocol access. Configuring an in-house solution can also be prohibitively expensive and time consuming.
3. Data Protection
There are several points to consider with data protection for file shares.
Snapshots are key to guaranteeing point-in-time recovery points for cases where data is corrupted, infected, or accidently deleted, and they should easily and quickly be restored to an up-to-date copy. Cloud provider snapshots load lazily, which means not all the data may be ready when you need it, and the costs for creating the initial copy can be high. Another challenge is related to application-aware snapshots. The snapshot mechanism should be able to guarantee consistent recovery, for databases or any other application.
Another aspect of data protection is disaster recovery (DR). The DR solution needs to ensure reliable failover and failback processes, as well as automatic syncs to keep the secondary copy up to date, and regular testing. All this needs to be done while maintaining the copy at reasonable costs, as the DR copy is a complete copy of the primary share.
Shared file services serve important workloads that require a high, consistent performance and low levels of latency. Data no matter where it is requested must be immediately usable. It is important to have the ability to scale out or up on request, and to be able to move data between tiers non-disruptively, and without causing performance issues. In case of an uptick in usage, the file service should be able to move to a more performant tier and at a reasonable cost.
5. Backup & Archive
Preventing data loss requires a sufficient method for backing up file data. Data that may need to be kept for longer periods or compliance purposes requires an archiving solution for the files. Creating and restoring backups should not affect production-level performance. Cloud storage backups also need to be available for use at any time, consistent, and able to be restored easily. Restore granularity should also be possible so that a single file can be recovered without requiring the rest of the volume or data set to be restored.
6. Storage Footprint and Costs
Since file storage is typically used to support massive data sets such as media libraries or home directories, the overall storage footprint and costs can be a considerable challenge even for the most established organizations. Huge cloud storage costs can be a detriment to further scaling or investment in new developments.
7. Scalability and Agility
Shared file storage capacity needs to be able to scale with the massive datasets enterprise file storage require. File storage serves use cases that can see sudden, dramatic increases and decreases in usage. The ability to scale both up and down to meet those demand peaks and down periods is key.
8. API and Automation
File storage requires users be able to carry out complex tasks and workflows such as managing volumes, snapshots, and clones, setting up replications, etc. via automation and orchestration tools.
9. Cloud Migration
Working with a cloud-based file service requires in many cases the ability to move file data between on-prem or other data repositories without having to refactor or re-architect your existing applications and processes (lift and shift approach) which could otherwise be cost and time consumptive.
10. Data Replication and Sync
Users need to be able to replicate file shares between various repositories and keep them synced for use cases such as DR, data collaboration, offline testing, offline analytics, and more. The costs for data replication and sync, both in terms of storage and traffic costs, will need to be considered, as massive amounts of data may require to be kept up to date between repositories.
Sending sensitive data to the cloud and having it accessible by vast numbers of users requires that the data is protected with encryption, efficient key management, and role-based access restrictions. Read more about securing your file share data in the cloud here.
12. Multicloud and Hybrid
The native cloud service providers each have their own attractive offerings for file usage, but not every enterprise will be willing to completely let go of their trusted on-prem data center or go all-in with just one cloud. Managing a file share between deployments in one or more clouds and an on-prem data center can be a challenge in terms of data synchronization, management, cost control, and more.
13. Kubernetes Integration
Kubernetes is the most popular way that developers can orchestrate their container usage in the cloud today. However, it is difficult to share data between clusters on Kubernetes and containers. One solution that simplifies this challenge is to deploy the containers using a single pod. That is possible when using NFS.
NFS can easily be used to attach volumes to pods, greatly reducing the hands-on tasks users would otherwise need to take care of when managing persistent storage. To do this, a file solution needs to be able to work with a persistent volume provisioner. Resizing NFS persistent volumes, mounting persistent volumes as Read/Write Many, creating separate storage classes for different mount parameters, protecting data with instant snapshots, and other requirements must also be supported.
A File Sharing Services Solution: Cloud Volumes ONTAP
To address these and other file share service challenges, NetApp users can turn to Cloud Volumes ONTAP. Cloud Volumes ONTAP offers dual protocol support for SMB/ CIFS and NFS workloads—something none of the fully-managed file services in the public cloud can do—plus solutions for all of the challenges mentioned above, from protecting your file data and ensuring high availability to minimizing file service costs and providing more automation and management controls.
To find out how this works in the real world, read these case studies of successful Cloud Volumes ONTAP deployments for file share services.