Instance that uses force-host still needs to run some filters
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Confirmed
|
Low
|
Unassigned |
Bug Description
More in-depth discussion can be found here:
http://
Basically - there is a number of filters that need to be re-run even if we force a host. The reasons are two-fold. Placing some instances on some hosts is an obvious mistake and should be disallowed (instances with specific CPU pinning are an example), though this will be eventually rejected by the host. Second reason is that claims logic on compute hosts depends on limits being set by the filters, and if they are not some of the oversubscription as well as more complex placement logic will not work for the instance (see the following bug report as to how it impacts NUMA placement logic https:/
Overall completely bypassing the filters is not ideal.
Changed in nova: | |
assignee: | nobody → Sylvain Bauza (sylvain-bauza) |
status: | New → Confirmed |
importance: | Undecided → Low |
Changed in nova: | |
assignee: | Sylvain Bauza (sylvain-bauza) → Anant Kaushik (anantkaushik-nsit) |
I got to the end of the referenced thread <http:// lists.openstack .org/pipermail/ openstack- dev/2015- February/ 057090. html> and was none the wiser on what the chosen outcome was for this. There were several options bounced back and forth but nothing that seemed to win consensus. The options appeared to be:
* do nothing, let the targeted compute node fail when force_host is set if the host can't accept
* except that apparently some claims can't be validated on-node
* pass the hosts listed as forced into the filters without changing the filters
* pass the hosts listed as forced into the filters but only run those filters which are deemed required when doing a force
* make a new command that is like force but means "force with filtering"
* but wait, forcing is antithetical to "cloud"; end users should not know or care about where stuff ends up as long as it is good enough, let's get rid of the force command
From what I can tell the sentence in the description beginning "Second reason..." suggests that "pass the hosts listed as forced into the filters without changing the filters" is the change that resolves the presenting problems with the smallest surface area of a change to the system.
So the question becomes: does the second reason matter?
If not we should mark this as incomplete, or invalid, or not a bug and get it off the radar.