This post was originally published on this siteSo one of our field engineers reached out to me because they had a power outage of some sort and their ...
Storage QoS is a critical feature for both consolidation of workloads and multi-tenancy, and just as storage replication, it’s one of those features where vendors have over-promised functionality and compromised in usability. Simplicity is one of Pure’s hallmarks, this is why we borrowed a quote from sculptor Constantin Brancusi as it drives home how we have resolved the complexity behind creating policy based QoS to deliver comprehensive, powerful, yet effortless, storage QoS.
Read more below and be sure to check our other blogs of this series.
First and foremost, let’s take a look at what problems QoS solves….
….and how we address these in Purity 5.0!
This feature, released in 2016, autonomically protects system workloads against a single workload (usually called a noisy neighbor) consuming all system resources and impacting all tenants. This industry-first solution addresses the noisy neighbour problems without having user define any policies or rules. Below you can see Always-On QoS in action, automatically detecting that Workload 5 is using to much performance in a very short period of time and is responsible for pushing the entire system to performance saturation.
Purity constantly monitors incoming I/O and is able to determine when the array is ‘too busy’ to deliver sub-ms predictable performance and automatically detects which volumes are consuming more than their fair share of resource and then throttles that workload to avoid performance degradation on all other workloads.
Performance Classes are built on top of Always-On QoS and provides you the opportunity to specify a Performance Class (Gold/Silver/Bronze) to a single volume or a workload/tenant. This approach empowers you to consolidate workloads and allocates performance to applications when the system approaches 100% performance utilization. Below Performance Classes in action:
This implementation is ideal for consolidating applications and tagging some as mission-critical, permitting throttling of less-critical applications in the event of system performance contention.
To complete the story and for our more sophisticated users we are also introducing throughput limits on a per volume or workload/tenant basis. This is a hard limit which will determine the max performance a given workload can consume before being throttled.
Limits can be used in conjunction with Performance Classes to enable interesting use cases where Service Providers can create a catalog to meet minimums, maximums and bursts. Performance classes will ensure that if the system reaches performance saturation (and there are enough less important workloads to throttle to satisfy Gold classes performance demand) minimums are met for higher classes workloads and when the system is below performance saturation allow all workloads to burst. For this use case limits can be configured to represent peak value for burst.
Purity QoS raises the bar in both functionality and simplicity when it comes to one of the most sophisticated features in storage:
I will be blogging more about QoS and its integration with Purity ActiveCluster and Workload Planner in the following weeks, keep an eye on this space for further exciting news!