Hi John,<div><br></div><div>Yes, that's a really good solution. It is exactly what the StackOps Enterprise Edition offers out of the box.  It's a simpler alternative assuming you are big enough to have several clusters of compute nodes, and each cluster with different quality of service preassigned. And it works... if the scheduler function works.</div>

<div><br></div><div>My proposal about a hierarchy of folders for shared storage comes from requirements of some customers that want to be able to control the IO on a tenant basis, and want to use very cheap scalable shared storage. </div>

<div><br></div><div>Let's say that StackOps EE follows now a static approach, and we would like to have a dynamic one ;-)</div><div><br></div><div><br></div><div>Cheers</div><div>Diego</div><div><div> -- <br><span style="border-collapse:separate;font-family:Times"><span style="border-collapse:collapse;font-family:arial,sans-serif"><div align="left" style="font-size:13px">

<div><font><span lang="ES" style="font-family:Arial">Diego Parrilla<br><a href="http://www.stackops.com/" title="file:///C:/Documents%20and%20Settings/carolina.capsir.per1/Application%20Data/Microsoft/Signatures/www.garrigues.com
www.garrigues.com" style="color:rgb(7,77,143)" target="_blank"><span title="file:///C:/Documents%20and%20Settings/carolina.capsir.per1/Application%20Data/Microsoft/Signatures/www.garrigues.com"></span></a></span></font><font face="Arial" style="font-family:arial,helvetica,sans-serif"><b>CEO</b><font size="1"><br>

</font></font><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"></span></span><b><font face="Arial" style="font-family:arial,helvetica,sans-serif"><a href="http://www.stackops.com/" target="_blank"><b>www.stackops.com</b></a> | </font></b><font face="Arial" style="font-family:arial,helvetica,sans-serif"><font size="1"> <a href="mailto:diego.parrilla@stackops.com" target="_blank">diego.parrilla@stackops.com</a></font></font><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><font color="#004438" face="Arial"><b><b><span lang="EN-GB" style="font-size:10pt"></span></b></b></font></span></span><font face="Arial" style="font-family:arial,helvetica,sans-serif"><font size="1"> | </font></font><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><font face="Arial" style="font-family:arial,helvetica,sans-serif"><font size="1">+34 649 94 43 29 | <a>skype:diegoparrilla</a></font></font></span></span><font face="Arial" style="font-family:arial,helvetica,sans-serif"><a href="http://www.stackops.com/" target="_blank"><b><br>

</b></a></font></div></div><div style="font-size:13px"><font color="#004438" face="Arial"><b><p><span style="border-collapse:separate;color:rgb(0,0,0);font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><font color="#004438" face="Arial"><b><b><span lang="EN-GB" style="font-size:10pt"><img src="http://stackops.s3-external-3.amazonaws.com/STACKOPSLOGO-ICON.png"></span></b></b></font></span></span></span></span></p>

</b></font></div></span></span><div><br></div></div><br>
<br><br><div class="gmail_quote">On Thu, Dec 20, 2012 at 6:37 PM, John Griffith <span dir="ltr"><<a href="mailto:john.griffith@solidfire.com" target="_blank">john.griffith@solidfire.com</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">

<div class="HOEnZb"><div class="h5"><br><br><div class="gmail_quote">On Thu, Dec 20, 2012 at 9:37 AM, JuanFra Rodriguez Cardoso <span dir="ltr"><<a href="mailto:juanfra.rodriguez.cardoso@gmail.com" target="_blank">juanfra.rodriguez.cardoso@gmail.com</a>></span> wrote:<br>



<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Yes, I'm really agree with Diego.<br>It would be a good choice for submitting a blueprint with this storage feature based on tenants.<br>



<br>According to current quotas control, it limits the:<br><div>
<ul type="disc"><li><p><font face="arial, helvetica, sans-serif">Number of volumes which may be created</font></p></li><li><p><font face="arial, helvetica, sans-serif">Total size of all volumes within a project as measured in GB</font></p>




</li><li><p><font face="arial, helvetica, sans-serif">Number of instances which may be launched</font></p></li><li><p><font face="arial, helvetica, sans-serif">Number of processor cores which may be allocated</font></p>
</li><li><font face="arial, helvetica, sans-serif">Publicly accessible IP addresses</font><p style="font-size:10pt;font-family:Verdana,Geneva,sans-serif"></p></li></ul><p><font face="arial, helvetica, sans-serif">Another new feature related to shared storage we had thought about, it's to include an option for choosing if an instance has to be replicated or not, i.e. in a MooseFS scenario, to indicate goal (number of replicas). It's useful for example in testing or demo projects, where HA is not required.<br>




<br>Regards,</font></p><p><span style="font-family:arial,helvetica,sans-serif">JuanFra.</span></p></div><div><div><br><div class="gmail_quote">2012/12/20 Diego Parrilla Santamarķa <span dir="ltr"><<a href="mailto:diego.parrilla.santamaria@gmail.com" target="_blank">diego.parrilla.santamaria@gmail.com</a>></span><br>




<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">mmm... not sure if the concept of oVirt multiple storage domains is something that can be implemented in Nova as it is, but I would like to share my thoughts because it's something that -from my point of view- matters.<div>






<br></div><div>If you want to change the folder where the nova instances are stored you have to modify the option in nova-compute.conf  '<span style="line-height:16px;color:rgb(221,17,68);font-size:12px;white-space:pre-wrap;font-family:Consolas,'Liberation Mono',Courier,monospace">instances_path':</span><br clear="all">






<div><br></div><div>If you look at that folder (/var/lib/nova/instances/ by default) you will see a structure like this:</div><div><br></div><div><div>drwxrwxr-x   2 nova nova   73 Dec  4 12:16 _base</div><div>drwxrwxr-x   2 nova nova    5 Oct 16 13:34 instance-00000002</div>






<div>...</div><div>drwxrwxr-x   2 nova nova    5 Nov 26 17:38 instance-0000005c</div><div>drwxrwxr-x   2 nova nova    6 Dec 11 15:38 instance-00000065</div><div><br></div></div><div>If you have a shared storage for that folder, then your fstab entry looks like this one:</div>






<div>10.15.100.3:/volumes/vol1/zone1/instances /var/lib/nova/instances nfs defaults 0 0</div><div><br></div><div>So, I think that it could be possible to implement something like 'storage domains', but tenant/project oriented. Instead of having multiple generic mountpoints, each tenant would have a private mountpoint for his/her instances. So the /var/lib/nova/instances could look like this sample:</div>






<div><br></div><div>/instances</div><div>+/tenantID1</div><div>++/instance-0000X</div><div>++/instance-0000Y</div><div>++/instance-0000Z</div><div>+/tenantID2</div><div><div>++/instance-0000A</div><div>++/instance-0000B</div>






<div>++/instance-0000C</div></div><div><div>...</div><div>+/tenantIDN</div><div><div>++/instance-0000A</div><div>++/instance-0000B</div><div>++/instance-0000C</div></div></div><div><br></div><div>And in the /etc/fstab something like this sample too:</div>






<div><div>10.15.100.3:/volumes/vol1/zone1/instances/tenantID1 /var/lib/nova/instances/tenantID1 nfs defaults 0 0</div><div>10.15.100.3:/volumes/vol1/zone1/instances/tenantID2 /var/lib/nova/instances/tenantID2 nfs defaults 0 0</div>






</div><div><div>...</div><div>10.15.100.3:/volumes/vol1/zone1/instances/tenantIDN /var/lib/nova/instances/tenantIDN nfs defaults 0 0</div></div><div><br></div><div>With this approach, we could have something like per tenant QoS on shared storage to resell differente storage capabilities on a tenant basis.</div>






<div><br></div><div>I would love to hear feedback, drawback, improvements...</div><div><br></div><div>Cheers</div><div>Diego</div><div><br></div><div> -- <br><span style="border-collapse:separate;font-family:Times"><span style="border-collapse:collapse;font-family:arial,sans-serif"><div align="left" style="font-size:13px">






<div><font><span lang="ES" style="font-family:Arial">Diego Parrilla<br><a href="http://www.stackops.com/" title="file:///C:/Documents%20and%20Settings/carolina.capsir.per1/Application%20Data/Microsoft/Signatures/www.garrigues.com
www.garrigues.com" style="color:rgb(7,77,143)" target="_blank"><span title="file:///C:/Documents%20and%20Settings/carolina.capsir.per1/Application%20Data/Microsoft/Signatures/www.garrigues.com"></span></a></span></font><font face="Arial" style="font-family:arial,helvetica,sans-serif"><b>CEO</b><font size="1"><br>






</font></font><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"></span></span><b><font face="Arial" style="font-family:arial,helvetica,sans-serif"><a href="http://www.stackops.com/" target="_blank"><b>www.stackops.com</b></a> | </font></b><font face="Arial" style="font-family:arial,helvetica,sans-serif"><font size="1"> <a href="mailto:diego.parrilla@stackops.com" target="_blank">diego.parrilla@stackops.com</a></font></font><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><font color="#004438" face="Arial"><b><b><span lang="EN-GB" style="font-size:10pt"></span></b></b></font></span></span><font face="Arial" style="font-family:arial,helvetica,sans-serif"><font size="1"> | </font></font><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><font face="Arial" style="font-family:arial,helvetica,sans-serif"><font size="1"><a href="tel:%2B34%20649%2094%2043%2029" value="+34649944329" target="_blank">+34 649 94 43 29</a> | <a>skype:diegoparrilla</a></font></font></span></span><font face="Arial" style="font-family:arial,helvetica,sans-serif"><a href="http://www.stackops.com/" target="_blank"><b><br>






</b></a></font></div></div><div style="font-size:13px"><font color="#004438" face="Arial"><b><p><span style="border-collapse:separate;font-size:medium;font-family:Times"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><span style="border-collapse:separate;font-family:Times;font-size:medium"><span style="border-collapse:collapse;font-family:arial,sans-serif;font-size:13px"><font color="#004438" face="Arial"><b><b><span lang="EN-GB" style="font-size:10pt"><img></span></b></b></font></span></span></span></span></p>






</b></font></div></span></span><div><br></div></div><div><div><br>
<br><br><div class="gmail_quote">On Thu, Dec 20, 2012 at 4:32 PM, Andrew Holway <span dir="ltr"><<a href="mailto:a.holway@syseleven.de" target="_blank">a.holway@syseleven.de</a>></span> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">






Good plan.<br>
<br>
<a href="https://blueprints.launchpad.net/openstack-ci/+spec/multiple-storage-domains" target="_blank">https://blueprints.launchpad.net/openstack-ci/+spec/multiple-storage-domains</a><br>
<div><div><br>
<br>
On Dec 20, 2012, at 4:25 PM, David Busby wrote:<br>
<br>
> I may of course be entirely wrong :) which would be cool if this is achievable / on the roadmap.<br>
><br>
> At the very least if this is not already in discussion I'd raise it on launchpad as a potential feature.<br>
><br>
><br>
><br>
><br>
> On Thu, Dec 20, 2012 at 3:19 PM, Andrew Holway <<a href="mailto:a.holway@syseleven.de" target="_blank">a.holway@syseleven.de</a>> wrote:<br>
> Ah shame. You can specify different storage domains in oVirt.<br>
><br>
> On Dec 20, 2012, at 4:16 PM, David Busby wrote:<br>
><br>
> > Hi Andrew,<br>
> ><br>
> > An interesting idea, but I am unaware if nova supports storage affinity in any way, it does support host affinity iirc, as a kludge you could have say some nova compute nodes using your "slow mount" and reserve the "fast mount" nodes as required, perhaps even defining separate zones for deployment?<br>







> ><br>
> > Cheers<br>
> ><br>
> > David<br>
> ><br>
> ><br>
> ><br>
> ><br>
> ><br>
> > On Thu, Dec 20, 2012 at 2:53 PM, Andrew Holway <<a href="mailto:a.holway@syseleven.de" target="_blank">a.holway@syseleven.de</a>> wrote:<br>
> > Hi David,<br>
> ><br>
> > It is for nova.<br>
> ><br>
> > Im not sure I understand. I want to be able to say to openstack; "openstack, please install this instance (A) on this mountpoint and please install this instance (B) on this other mountpoint." I am planning on having two NFS / Gluster based stores, a fast one and a slow one.<br>







> ><br>
> > I probably will not want to say please every time :)<br>
> ><br>
> > Thanks,<br>
> ><br>
> > Andrew<br>
> ><br>
> > On Dec 20, 2012, at 3:42 PM, David Busby wrote:<br>
> ><br>
> > > Hi Andrew,<br>
> > ><br>
> > > Is this for glance or nova ?<br>
> > ><br>
> > > For nova change:<br>
> > ><br>
> > > state_path = /var/lib/nova<br>
> > > lock_path = /var/lib/nova/tmp<br>
> > ><br>
> > > in your nova.conf<br>
> > ><br>
> > > For glance I'm unsure, may be easier to just mount gluster right onto /var/lib/glance (similarly could do the same for /var/lib/nova).<br>
> > ><br>
> > > And just my £0.02 I've had no end of problems getting gluster to "play nice" on small POC clusters (3 - 5 nodes, I've tried nfs tried glusterfs, tried 2 replica N distribute setups with many a random glusterfs death), as such I have opted for using ceph.<br>







> > ><br>
> > > ceph's rados can also be used with cinder from the brief reading I've been doing into it.<br>
> > ><br>
> > ><br>
> > > Cheers<br>
> > ><br>
> > > David<br>
> > ><br>
> > ><br>
> > ><br>
> > ><br>
> > ><br>
> > > On Thu, Dec 20, 2012 at 1:53 PM, Andrew Holway <<a href="mailto:a.holway@syseleven.de" target="_blank">a.holway@syseleven.de</a>> wrote:<br>
> > > Hi,<br>
> > ><br>
> > > If I have /nfs1mount and /nfs2mount or /nfs1mount and /glustermount can I control where openstack puts the disk files?<br>
> > ><br>
> > > Thanks,<br>
> > ><br>
> > > Andrew<br>
> > ><br>
> > > _______________________________________________<br>
> > > Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
> > > Post to     : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>
> > > Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
> > > More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
> > ><br>
> ><br>
> ><br>
> ><br>
><br>
><br>
><br>
<br>
<br>
<br>
_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to     : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
</div></div></blockquote></div><br></div></div></div>
<br>_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to     : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
<br></blockquote></div><br>
</div></div><br>_______________________________________________<br>
Mailing list: <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
Post to     : <a href="mailto:openstack@lists.launchpad.net" target="_blank">openstack@lists.launchpad.net</a><br>
Unsubscribe : <a href="https://launchpad.net/~openstack" target="_blank">https://launchpad.net/~openstack</a><br>
More help   : <a href="https://help.launchpad.net/ListHelp" target="_blank">https://help.launchpad.net/ListHelp</a><br>
<br></blockquote></div></div></div>For the sake of simplicity could you just use the existing features and add a compute node with instances_patch set to the *other* back-ends?  Then utilize the existing compute scheduler parameters to determine which compute node and thus which storage back-end is used for the instance?<span class="HOEnZb"><font color="#888888"><div>



<br></div><div>John</div>
</font></span></blockquote></div><br></div>