No problem! :)

On Fri, May 31, 2013 at 2:01 PM, Wei ZHOU <ustcweiz...@gmail.com> wrote:

> Mike,
> Thanks a lot!
>
> -Wei
>
> 2013/5/31, Mike Tutkowski <mike.tutkow...@solidfire.com>:
> > Hi Wei,
> >
> > Thanks!
> >
> > Here are the details you requested. This also talks about Min and Max
> IOPS.
> >
> > Please let me know if you'd like more information. I have an entire
> > document I could share with you regarding SolidFire QoS (the info below
> is
> > taken from this document).
> >
> > Talk to you later!
> >
> > How does SolidFire QoS use burstIOPS?
> >
> > When the cluster is running in a state of low cluster utilization,
> clients
> > are able to accrue burstIOPS credits and use these credits to burst above
> > their max up to their burst IOPS for the burst period.
> >
> > The current burst period is 60 seconds.
> >
> > Burst IOPS credits are accrued by performing less IO than the maxIOPS.
> Each
> > IO that is not used under the maxIOPS, is considered an IOPS “credit”,
> that
> > can be used later.
> >
> > There are two limits to the way that the burst IOPS credits can be used.
> >
> > The first limit is that the total number of burst credits that a customer
> > can accrue is (60 seconds) * (burst IOPS - max IOPS).
> >
> > The second limit is that the number of credits that can be depleted at
> any
> > time is at most the burst IOPS. Thus, a customer will never be able to go
> > higher than the burst IOPS set for the volume.
> >
> > Note: when another volume on the node is unable to reach its minIOPS,
> > burstIOPS are reset for all customers on the node.
> >
> >
> > Basic explanation: When there is performance left to do so, SolidFIre
> > allows customers to burst above their maximum for 60 seconds.
> >
> > How does SolidFire QoS use maxIOPS?
> >
> > MaxIOPS is a sustained rate limit. For a sustained period of time, the
> > customer will be able to sustain this IO rate, as long as no one else on
> > the cluster is unable to get their minimum IOPS.
> >
> > Basic explanation: MaxIOPS is what a customer will sustain for a long
> > period of time if everyone is getting their minimum IOPS guarantees.
> >
> > How does SolidFire QoS use minIOPS?
> >
> > The minIOPS is a lower limit on the performance that a customer should
> > expect in normal operating scenarios.
> >
> > SolidFire QoS is constantly monitoring the latencies observed by the
> > client, and the queue depth that the client is driving to the cluster.
> >
> > When a customer reaches the “cannot reach minIOPS situation”, as detected
> > by the targetIOPS and the latencies that the cluster is seeing at the
> given
> > IOPS, other customers are gradually ratcheted and pushed down to their
> > minIOPS.
> >
> > Note: customers are never throttled to less than their minIOPS unless
> there
> > is serious overload.
> >
> > What this means, is that at sufficiently high queue depth on a heavily
> > utilized cluster, our quality of service detects situations where a
> > customer is unable to get their minIOPS, and takes performance away from
> > other customers running above their minIOPS, and gives it to the customer
> > that is unable to reach their minIOPS until the “unhappy” customer
> reaches
> > their minIOPS.
> >
> > Note: In Boron (Version 5), to qualify for the minIOPS guarantee, the
> > customer must be running a queue depth higher than 8.
> >
> > What these three settings give us is something unique to storage: a
> quality
> > of service that limits the customer’s sustained effect on performance on
> > the cluster (max IOPS), the ability to burst and use unused performance
> > (burst IOPS) if there is any, and a reasonable expectation of performance
> > even in high utilization situations where performance can be dynamically
> > balanced throughout customers in the system.
> >
> >
> > The net effect of this, is that, in SolidFire, because the ratio of
> > performance between customers is changing depending on cluster
> utilization,
> > we’ve made it so that each customer’s performance isn’t directly tied to
> > each other.
> >
> >
> >
> > On Fri, May 31, 2013 at 10:43 AM, Wei ZHOU <ustcweiz...@gmail.com>
> wrote:
> >
> >> Mike,
> >>
> >> good work.
> >> I notice the burst IOPS. Do you know the mechanism and the config of
> >> it, like the duration and interval burst IO? Thanks.
> >>
> >> -Wei
> >>
> >> 2013/5/31, Mike Tutkowski <mike.tutkow...@solidfire.com>:
> >> > Hi everyone,
> >> >
> >> > I apologize for being unfamiliar with how I should have gone about
> >> getting
> >> > consensus for the storage plug-in I developed for 4.2.
> >> >
> >> > I talked with Animesh and he has asked me to send out this proposal
> >> related
> >> > to the storage plug-in I built for 4.2 and submitted to Review Board
> >> > earlier this week.
> >> >
> >> > Here is a link to the design document:
> >> >
> >> >
> >>
> https://cwiki.apache.org/confluence/display/CLOUDSTACK/Implement+SolidFire+(storage)+plug-in+and+expose+control+of+IOPS+to+admins+and+end+users
> >> >
> >> > Here is a link to the JIRA ticket:
> >> >
> >> > https://issues.apache.org/jira/browse/CLOUDSTACK-2778
> >> >
> >> > Here is a link to it on Review Board:
> >> >
> >> > https://reviews.apache.org/r/11479/
> >> >
> >> > Here is a high-level summary:
> >> >
> >> > I have developed a storage plug-in which makes use of the new storage
> >> > framework that Edison put in place for the 4.2 release.
> >> >
> >> > Working with Edison, I have identified a few areas of the storage
> >> framework
> >> > that needed to be enhanced (and I have done so in the code that I
> >> > submitted) for dynamic, zone-wide primary storage to function.
> >> >
> >> > This storage plug-in is specific to SolidFire (a data-storage
> company),
> >> > whose architecture is designed around Quality of Service. Each volume
> >> > on
> >> > this SAN is assigned a Min, Max, and Burst number of IOPS. The Min is,
> >> > as
> >> > one might expect, a guaranteed number (even in fault conditions) (as
> >> > long
> >> > as the IOPS of the SAN are not over-provisioned).
> >> >
> >> > Per a discussion several months ago on this list, I have added into
> the
> >> > Disk Offerings Min, Max, and Burst values (all optional). These values
> >> > follow the patterns of the Disk Size field in that they can be
> >> > customized
> >> > by the end user (in the Add Volume) if the admin decides to allow
> this.
> >> >
> >> > In the end, this feature allows users to create a 1:1 mapping between
> a
> >> > volume on the SAN and a data disk that can be attached to a VM
> >> > (XenServer
> >> > supported...perhaps VMware, depending on time). This allows CloudStack
> >> > admins to offer their end users guaranteed IOPS on data disks
> >> (eliminating
> >> > the Noisy Neighbor effect). The plan is to support root disks in a
> >> post-4.2
> >> > release.
> >> >
> >> > Again, I am sorry about my confusion regarding process here. I
> >> > certainly
> >> > appreciate all of the input I have received on the e-mail list over
> the
> >> > past couple months while I was developing this feature.
> >> >
> >> > Please let me know if you have any questions.
> >> >
> >> > Thanks!
> >> >
> >> > --
> >> > *Mike Tutkowski*
> >> > *Senior CloudStack Developer, SolidFire Inc.*
> >> > e: mike.tutkow...@solidfire.com
> >> > o: 303.746.7302
> >> > Advancing the way the world uses the
> >> > cloud<http://solidfire.com/solution/overview/?video=play>
> >> > *™*
> >> >
> >>
> >
> >
> >
> > --
> > *Mike Tutkowski*
> > *Senior CloudStack Developer, SolidFire Inc.*
> > e: mike.tutkow...@solidfire.com
> > o: 303.746.7302
> > Advancing the way the world uses the
> > cloud<http://solidfire.com/solution/overview/?video=play>
> > *™*
> >
>



-- 
*Mike Tutkowski*
*Senior CloudStack Developer, SolidFire Inc.*
e: mike.tutkow...@solidfire.com
o: 303.746.7302
Advancing the way the world uses the
cloud<http://solidfire.com/solution/overview/?video=play>
*™*

Reply via email to