Abstract:
Techniques for implementing dynamic base disk mirroring for linked clones are provided. In one set of embodiments, a first node in a distributed storage system can monitor a congestion level of a base disk residing on the first node, where the base disk is shared by a plurality of linked clones. Upon determining that the congestion level exceeds a threshold, the first node can send, to a second node, a request to create a mirror of the base disk on that second node. Upon receiving an acknowledgement from the second node that the mirror has been successfully created, the first node can update a mirror set associated with the base disk to include an entry identifying the mirror. The first node can then communicate the updated mirror set to one or more other nodes.
Abstract:
An anomaly in a shared input/output (IO) resource that is accessed by a plurality hosts or clients is detected when a host that is not bound by any QoS policy presents large workloads to a shared IO resource that is also accessed by hosts or clients that are governed by QoS policy. The anomaly detection triggers a response from the hosts or clients as a way to protect against the effect of the anomaly. The response is an increase in window sizes. The window sizes of the hosts or clients may be increased to the maximum window size or in proportion to their QoS shares.
Abstract:
Techniques for implementing dynamic base disk mirroring for linked clones are provided. In one set of embodiments, a first node in a distributed storage system can monitor a congestion level of a base disk residing on the first node, where the base disk is shared by a plurality of linked clones. Upon determining that the congestion level exceeds a threshold, the first node can send, to a second node, a request to create a mirror of the base disk on that second node. Upon receiving an acknowledgement from the second node that the mirror has been successfully created, the first node can update a mirror set associated with the base disk to include an entry identifying the mirror. The first node can then communicate the updated mirror set to one or more other nodes.
Abstract:
A shared input/output (IO) resource is managed in a decentralized manner. Each of multiple hosts having IO access to the shared resource, computes an average latency value that is normalized with respect to average IO request sizes, and stores the computed normalized latency value for later use. The normalized latency values thus computed and stored may be used for a variety of different applications, including enforcing a quality of service (QoS) policy that is applied to the hosts, detecting a condition known as an anomaly where a host that is not bound by a QoS policy accesses the shared resource at a rate that impacts the level of service received by the plurality of hosts that are bound by the QoS policy, and migrating workloads between storage arrays to achieve load balancing across the storage arrays.