cloudstack-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Mike Tutkowski <mike.tutkow...@solidfire.com>
Subject Re: Supporting SolidFire QoS Before 4.2
Date Thu, 07 Feb 2013 23:14:19 GMT
The logic might be something like this:

User picks a Compute Offering with storage tag "SolidFire".

CSP's GUI sees that the Storage Tag is "SolidFire" and this cues it to
invoke my program and pass it in the necessary data.

My program creates a SolidFire volume and talks to the hypervisor to make
it aware of this volume (for XenServer, this would entail creating a
storage repository that is based on my iSCSI volume).

My program could make a CS API call to update a known Primary Storage
(maybe it has a known name like "SolidFirePrimaryStorage").  This program
would update its Storage Tag to, say, the IQN of the volume that was just
created.  This program would then go and update the Compute Offering that
was selected to have its Storage Tag equal to that IQN.

Once these changes are in place, the CSP's GUI can initiate the process of
spinning up a VM based on our Compute Offering and Primary Storage.

When that VM is up and running, the CSP's GUI can restore the Storage Tag
"SolidFire" to the Primary Storage and Compute Offerings and we're in our
initial state again and ready to service another request (we cannot service
another request until the one before it is done).

Comments?

I know it's not ideal, but we're mainly looking for something workable at
this point.  :)


On Thu, Feb 7, 2013 at 4:06 PM, Mike Tutkowski <mike.tutkowski@solidfire.com
> wrote:

> Hi Edison,
>
> I'm not sure I entirely follow.  Creating the volume (LUN) on our SAN is
> straightforward enough.  We'd get back an IQN.  Are you saying at this
> point I'd talk to, say, XenServer and have it create a storage repository
> that makes use of the iSCSI target (my IQN)?  If so, once that is done, I
> was thinking I'd update a known (PreSetup-based) Primary Storage's Storage
> Tag.  After, I'd update the single Compute Offering that references that
> Primary Storage by changing its Storage Tag to be equal to that of my
> Primary Storage.  Once this is done, the VM could be spun up from the
> Compute Offering (and underlying Primary Storage).  When the VM Instance is
> up and running, the Compute Offering's and Primary Storage's Storage Tag
> could be changed back to some expected value.
>
> I don't particularly like this solution in the sense that you can't kick
> off such a new Compute Offering until the one before it was done, but it
> would only serve as a temporary measure to help customers leverage our QoS
> feature.
>
> What do you think?  Does this sound doable with the CS API?
>
>
> On Thu, Feb 7, 2013 at 3:55 PM, Edison Su <Edison.su@citrix.com> wrote:
>
>> Another solution would be, totally bypass cloudstack and hypervisor,
>> create LUN in your storage box, then give the IQN to guest VM. Inside guest
>> VM, there may have a script, which can grab that IQN from somewhere(can be
>> in user data), then scan iSCSI, mount the device, etc. It can work with all
>> the hypervisors.****
>>
>> ** **
>>
>> *From:* Mike Tutkowski [mailto:mike.tutkowski@solidfire.com]
>> *Sent:* Thursday, February 07, 2013 11:18 AM
>> *To:* cloudstack-dev@incubator.apache.org; Edison Su; Marcus Sorensen
>>
>> *Subject:* Supporting SolidFire QoS Before 4.2****
>>
>> ** **
>>
>> Hi everyone,****
>>
>> ** **
>>
>> I learned yesterday that Edison's new storage plug-in architecture will
>> first be released with 4.2.****
>>
>> ** **
>>
>> As such, I began to wonder if there was any way outside of CloudStack
>> that I could support CloudStack users who want to make use of SolidFire's
>> QoS feature (controlling IOPS).****
>>
>> ** **
>>
>> A couple of us brainstormed for a bit and this is what we came up with.
>>  Can anyone confirm if this could work?****
>>
>> ** **
>>
>> ************************
>>
>> ** **
>>
>> The CloudStack Admin creates a Primary Storage that is of the type
>> PreSetup.  This is tagged with a name like "SolidFire_High" (for SolidFire
>> High IOPS).****
>>
>> ** **
>>
>> The CloudStack Admin creates a Compute Offering that refers to the
>> "SolidFire_High" Storage Tag.****
>>
>> ** **
>>
>> In the CSP's own GUI, a user picks the Compute Offering referred to
>> above.  The CSP's code sees the Storage Tag "SolidFire_High" and that cues
>> it to invoke a script of mine.****
>>
>> ** **
>>
>> My script is passed in the necessary information.  It creates a SolidFire
>> volume with the necessary attributes and hooks it up to the hypervisor
>> running in the Cluster.  It updates my Primary Storage's Tag with the IQN
>> (or some unique identifier), then it updates my Compute Offering's Storage
>> Tag with this same value.****
>>
>> ** **
>>
>> Once the Primary Storage and the Compute Offering have been updated,
>> CloudStack can begin the process of creating a VM Instance.****
>>
>> ** **
>>
>> Once the VM Instance is up and running, the CSP's GUI could set the
>> Primary Storage's and Compute Offering's Storage Tags back to the
>> "SolidFire_High" value.****
>>
>> ** **
>>
>> ************************
>>
>> ** **
>>
>> The one problem I see with this is that you would have to be sure not to
>> kick off the process of creating such a Compute Offering until your
>> previous such Compute Offering was finished (because there is a race
>> condition while the Storage Tag field points to the IQN (or some other
>> unique identifier)).****
>>
>> ** **
>>
>> Thanks!
>> ****
>>
>> ** **
>>
>> --
>> *Mike Tutkowski*****
>>
>> *Senior CloudStack Developer, SolidFire Inc.*****
>>
>> e: mike.tutkowski@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.tutkowski@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.tutkowski@solidfire.com
o: 303.746.7302
Advancing the way the world uses the
cloud<http://solidfire.com/solution/overview/?video=play>
*™*

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message