<div dir="ltr">Hi, All<div><br></div><div>There is bug when running nova with ironicĀ <a href="https://bugs.launchpad.net/nova/+bug/1402658">https://bugs.launchpad.net/nova/+bug/1402658</a></div><div><br></div><div>The case is simple: one baremetal node with 1024MB ram, then boot two instances with 512MB ram flavor.</div><div>Those two instances will be scheduling to same baremetal node.</div><div><br></div><div>The problem is at scheduler side the IronicHostManager will consume all the resources for that node whatever</div><div>how much resource the instance used. But at compute node side, the ResourceTracker won't consume resources</div><div>like that, just consume like normal virtual instance. And ResourceTracker will update the resource usage once the</div><div>instance resource claimed, then scheduler will know there are some free resource on that node, then will try to</div><div>schedule other new instance to that node.</div><div><br></div><div>I take look at that, there is NumInstanceFilter, it will limit how many instance can schedule to one host. So can</div><div>we just use this filter to finish the goal? The max instance is configured by option 'max_instances_per_host', we</div><div>can make the virt driver to report how many instances it supported. The ironic driver can just report max_instances_per_host=1.</div><div>And libvirt driver can report max_instance_per_host=-1, that means no limit. And then we can just remove the</div><div>IronicHostManager, then make the scheduler side is more simpler. Does make sense? or there are more trap?</div><div><br></div><div>Thanks in advance for any feedback and suggestion.</div><div><br></div><div>Thanks</div><div>Alex</div></div>