<div dir="ltr">Toan and Alex. Having separate computes pools for Hadoop is not suitable if we want to use an unused power of OpenStack cluster to run Hadoop analytic jobs. Possibly in this case it is better to modify the over-commit calculation in the scheduler according John suggestion.<br>
</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Tue, Nov 12, 2013 at 7:16 PM, Khanh-Toan Tran <span dir="ltr"><<a href="mailto:khanh-toan.tran@cloudwatt.com" target="_blank">khanh-toan.tran@cloudwatt.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex"><div><div style="font-size:12pt;font-family:times new roman,new york,times,serif"><div><span style="font-family:arial,helvetica,sans-serif">FYI, by default Openstack overcommit CPU 1:16, meaning it can host 16 times number of cores it possesses. As mentioned Alex, you can change it by enabling AggregateCoreFilter in nova.conf:</span></div>
<div><span style="font-family:arial,helvetica,sans-serif"> scheduler_default_filters = <list of your filters, adding AggregateCoreFilter here></span><br></div><div><span style="font-family:arial,helvetica,sans-serif"><br>
</span></div><div><span style="font-family:arial,helvetica,sans-serif">and modifying the overcommit ratio by adding:</span></div><div><span style="font-family:arial,helvetica,sans-serif"> cpu_allocation_ratio=1.0</span></div>
<div><span style="font-family:arial,helvetica,sans-serif"><br></span></div><div><span style="font-family:arial,helvetica,sans-serif">Just a suggestion, think of isolating the host for the tenant that uses Hadoop so that it will not serve other applications. You have several filters at your disposal:</span></div>
<div><span style="font-family:arial,helvetica,sans-serif"> AggregateInstanceExtraSpecsFilter</span></div><div><span style="font-family:arial,helvetica,sans-serif"> IsolatedHostsFilter</span></div><div><span style="font-family:arial,helvetica,sans-serif"> AggregateMultiTenancyIsolation</span></div>
<div><span style="font-family:arial,helvetica,sans-serif"><br></span></div><div><span style="font-family:arial,helvetica,sans-serif">Best regards,</span></div><div><span style="font-family:arial,helvetica,sans-serif"><br>
</span></div><div><span style="font-family:arial,helvetica,sans-serif">Toan</span></div><div><span style="font-family:Verdana,Geneva,sans-serif;font-size:13px"><br></span></div><hr><div style="font-size:12pt;font-style:normal;font-family:Helvetica,Arial,sans-serif;text-decoration:none;font-weight:normal">
<b>From: </b>"Alex Glikson" <<a href="mailto:GLIKSON@il.ibm.com" target="_blank">GLIKSON@il.ibm.com</a>><div class="im"><br><b>To: </b>"OpenStack Development Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>><br>
</div><b>Sent: </b>Tuesday, November 12, 2013 3:54:02 PM<div><div class="h5"><br><b>Subject: </b>Re: [openstack-dev] [nova] Configure overcommit policy<br><div><br></div><span size="2" face="sans-serif" style="font-family:sans-serif;font-size:small">You can consider having a separate host
aggregate for Hadoop, and use a combination of AggregateInstanceExtraSpecFilter
(with a special flavor mapped to this host aggregate) and AggregateCoreFilter
(overriding cpu_allocation_ratio for this host aggregate to be 1).</span>
<br>
<br><span size="2" face="sans-serif" style="font-family:sans-serif;font-size:small">Regards,</span>
<br><span size="2" face="sans-serif" style="font-family:sans-serif;font-size:small">Alex</span>
<br>
<br>
<br>
<br>
<br><span size="1" color="#5f5f5f" face="sans-serif" style="color:#5f5f5f;font-family:sans-serif;font-size:xx-small">From:
</span><span size="1" face="sans-serif" style="font-family:sans-serif;font-size:xx-small">John Garbutt <<a href="mailto:john@johngarbutt.com" target="_blank">john@johngarbutt.com</a>></span>
<br><span size="1" color="#5f5f5f" face="sans-serif" style="color:#5f5f5f;font-family:sans-serif;font-size:xx-small">To:
</span><span size="1" face="sans-serif" style="font-family:sans-serif;font-size:xx-small">"OpenStack Development
Mailing List (not for usage questions)" <<a href="mailto:openstack-dev@lists.openstack.org" target="_blank">openstack-dev@lists.openstack.org</a>>,
</span>
<br><span size="1" color="#5f5f5f" face="sans-serif" style="color:#5f5f5f;font-family:sans-serif;font-size:xx-small">Date:
</span><span size="1" face="sans-serif" style="font-family:sans-serif;font-size:xx-small">12/11/2013 04:41 PM</span>
<br><span size="1" color="#5f5f5f" face="sans-serif" style="color:#5f5f5f;font-family:sans-serif;font-size:xx-small">Subject:
</span><span size="1" face="sans-serif" style="font-family:sans-serif;font-size:xx-small">Re: [openstack-dev]
[nova] Configure overcommit policy</span>
<br>
<hr noshade>
<br>
<br>
<br><tt><span size="2" style="font-size:small">On 11 November 2013 12:04, Alexander Kuznetsov <<a href="mailto:akuznetsov@mirantis.com" target="_blank">akuznetsov@mirantis.com</a>>
wrote:<br>
> Hi all,<br>
><br>
> While studying Hadoop performance in a virtual environment, I found
an<br>
> interesting problem with Nova scheduling. In OpenStack cluster, we
have<br>
> overcommit policy, allowing to put on one compute more vms than resources<br>
> available for them. While it might be suitable for general types of<br>
> workload, this is definitely not the case for Hadoop clusters, which
usually<br>
> consume 100% of system resources.<br>
><br>
> Is there any way to tell Nova to schedule specific instances (the
ones which<br>
> consume 100% of system resources) without overcommitting resources
on<br>
> compute node?<br>
<br>
You could have a flavor with "no-overcommit" extra spec, and
modify<br>
the over-commit calculation in the scheduler on that case, but I don't<br>
remember seeing that in there.<br>
<br>
John<br>
<br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org" target="_blank">OpenStack-dev@lists.openstack.org</a><br>
</span></tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank"><tt><span size="2" style="font-size:small">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</span></tt></a><tt><span size="2" style="font-size:small"><br>
<br>
</span></tt>
<br><div><br></div>_______________________________________________<br>OpenStack-dev mailing list<br><a href="mailto:OpenStack-dev@lists.openstack.org" target="_blank">OpenStack-dev@lists.openstack.org</a><br><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</div></div></div><div><br></div><div style="width:1px;min-height:1px;overflow:hidden"></div></div></div><br>_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
<br></blockquote></div><br></div>