<html><head><meta http-equiv="Content-Type" content="text/html charset=us-ascii"></head><body style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><br><div><div>On Sep 6, 2012, at 9:18 AM, Jonathan Proulx <<a href="mailto:jon@jonproulx.com">jon@jonproulx.com</a>> wrote:</div><br class="Apple-interchange-newline"><blockquote type="cite">On Thu, Sep 6, 2012 at 9:00 AM, Jonathan Proulx <<a href="mailto:jon@jonproulx.com">jon@jonproulx.com</a>> wrote:<br><blockquote type="cite">running Essex (as packaged) on Ubuntu 12.04 launching new instances<br>has stopped working. They almost imediately enter Error Spawning state<br>which is consistent with my experience of resource starvation in the<br>cluster or scheduling errors.  Most recently I was /var/lib/nova on<br>one of the compute nodes filled but the schedule kept trying to run<br>new instances there (which is it's own issue, but I fixed that for me<br>simply by expanding that partition).  Though in that case they were<br>assigned to that node and then failing, in this case there is no<br>compute node associated with the failed instance.<br></blockquote><br>I tell a lie, there are all trying to run on the same compute node and<br>in this case it has in sufficient memory to run the instance, so it<br>shouldn't try to do so.  here are my scheduler options:<br><br>--scheduler_available_filters=nova.scheduler.filters.standard_filters<br>--scheduler_default_filters=AvailabilityZoneFilter,RamFilter,CoreFilter,ComputeFilter<br>--least_cost_functions=nova.scheduler.least_cost.compute_fill_first_cost_fn<br>--compute_fill_first_cost_fn_weight=1.0<br><br>My intention (and what it seems to have been doing) is filling nodes<br>based on RAM capacity rather than spreading as the default is.  I do<br>believe it shouldn't try and run instances requiring 2G of ram when<br>there are only 600M free.<br><br><br></blockquote><div apple-content-edited="true"><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><span class="Apple-style-span" style="border-collapse: separate; border-spacing: 0px; "><div style="word-wrap: break-word; -webkit-nbsp-mode: space; -webkit-line-break: after-white-space; "><div><br></div><div>By default, Essex tries to over provision based on memory. Try setting:</div><div>--ram_allocation_ratio=1</div><div><br></div><div>See <a href="http://docs.openstack.org/essex/openstack-compute/admin/content/scheduler-filters.html#ramfilter">http://docs.openstack.org/essex/openstack-compute/admin/content/scheduler-filters.html#ramfilter</a> for more details (including why the over provisioning behavior is actually broken in Essex).</div><div><br></div><div><br></div><div><blockquote type="cite">I can't seem to figure out how to map from id in the compute_nodes<br>table to host name or IP though there must be a way,<br>hypervisor_hostname seems most likely but that is all NULL, any<br>pointers there<br></blockquote></div><div><br></div><div>Oooh, I'm pretty sure there's a way to do this, but don't remember offhand. Does "nova show <id>" give you this info? </div><div><br></div><div><br></div><div>Take care,</div><div><br></div><div>Lorin</div><div>--</div><div>Lorin Hochstein</div><div>Lead Architect - Cloud Services</div><div>Nimbis Services, Inc.</div><div><a href="https://www.nimbisservices.com/">www.nimbisservices.com</a></div><div><br></div></div></span><br class="Apple-interchange-newline"></div><br class="Apple-interchange-newline"></span></div><blockquote type="cite"><br>_______________________________________________<br>OpenStack-operators mailing list<br><a href="mailto:OpenStack-operators@lists.openstack.org">OpenStack-operators@lists.openstack.org</a><br>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-operators<br></blockquote></div><br></body></html>