<div dir="ltr">I have a small testbed OpenStack cloud (running Ocata) where I am trying to debug a problem with Nova scheduling.<div><div><br></div><div><br></div><div>In short: I see different behaviors when I create a new VM and when I try to migrate a VM</div><div><br></div><div><br></div><div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial">Since I want to partition the Cloud so that each project uses only certain compute nodes, I created one host aggregate per project (see also this thread:</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><a href="http://lists.openstack.org/pipermail/openstack-operators/2018-February/014831.html">http://lists.openstack.org/pipermail/openstack-operators/2018-February/014831.html</a>)</div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div><div style="color:rgb(34,34,34);font-family:arial,sans-serif;font-size:small;font-style:normal;font-variant-ligatures:normal;font-variant-caps:normal;font-weight:400;letter-spacing:normal;text-align:start;text-indent:0px;text-transform:none;white-space:normal;word-spacing:0px;background-color:rgb(255,255,255);text-decoration-style:initial;text-decoration-color:initial"><br></div>The host-aggregate for my project is:</div><div><br></div><div><div># nova  aggregate-show 52</div><div>+----+-----------+-------------------+--------------------------------------------------------------+----------------------------------------------------------------------------------------------+--------------------------------------+</div><div>| Id | Name      | Availability Zone | Hosts                                                        | Metadata                                                                                     | UUID                                 |</div><div>+----+-----------+-------------------+--------------------------------------------------------------+----------------------------------------------------------------------------------------------+--------------------------------------+</div><div>| 52 | SgaraPrj1 | nova              | '<a href="http://compute-01.cloud.pd.infn.it">compute-01.cloud.pd.infn.it</a>', '<a href="http://compute-02.cloud.pd.infn.it">compute-02.cloud.pd.infn.it</a>' | 'availability_zone=nova', 'filter_tenant_id=ee1865a76440481cbcff08544c7d580a', 'size=normal' | 675f6291-6997-470d-87e1-e9ea199a379f |</div><div>+----+-----------+-------------------+--------------------------------------------------------------+----------------------------------------------------------------------------------------------+--------------------------------------+</div></div><div><br></div><div>The same compute nodes are shared by other projects  (for which specific host-aggregates, as this one, have been created)</div><div>The other compute node (I have only 3 compute nodes in this small testbed) is targeted to other projects (for which specific host-aggregates exist)</div><div><br></div><div><br></div><div>This is what I have in nova.conf wrt scheduling filters:</div><div><br></div><div><div>enabled_filters = AggregateInstanceExtraSpecsFilter,AggregateMultiTenancyIsolation,RetryFilter,AvailabilityZoneFilter,RamFilter,CoreFilter,AggregateRamFilter,AggregateCo</div><div>reFilter,DiskFilter,ComputeFilter,ComputeCapabilitiesFilter,ImagePropertiesFilter,ServerGroupAntiAffinityFilter,ServerGroupAffinityFilter</div></div><div><br></div><div><br></div><div><br></div><div>If I try to create a VM, I see from the scheduler log [*] that the AggregateMultiTenancyIsolation selects only 2 compute nodes, as expected.</div></div><div><br></div><div><br></div><div>But if I then try to migrate the very same VM, it reports that no valid host was found:</div><div><br></div><div><div># nova migrate afaf2a2d-7ff8-4e52-a89a-031ee079a9ba</div><div>ERROR (BadRequest): No valid host was found. No valid host found for cold migrate (HTTP 400) (Request-ID: req-45b8afd5-9683-40a6-8416-295563e37e34)</div></div><div><br></div><div><br></div><div>And according to the scheduler log the problem is with the AggregateMultiTenancyIsolation which returned 0 hosts (while I would have expected one):</div><div><br></div><div><div>2018-05-29 11:12:56.375 19428 INFO nova.scheduler.host_manager [req-45b8afd5-9683-40a6-8416-295563e37e34 9bd03f63fa9d4beb8de31e6c2f2c8d12 56c3f5c047e74a78a714\</div><div>38c4412e6e13 - - -\</div><div>] Host filter ignoring hosts: <a href="http://compute-02.cloud.pd.infn.it">compute-02.cloud.pd.infn.it</a></div><div>2018-05-29 11:12:56.375 19428 DEBUG nova.filters [req-45b8afd5-9683-40a6-8416-295563e37e34 9bd03f63fa9d4beb8de31e6c2f2c8d12 56c3f5c047e74a78a71438c4412e6e13 -\</div><div> - -] Starting wit\</div><div>h 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:70</div><div>2018-05-29 11:12:56.376 19428 DEBUG nova.filters [req-45b8afd5-9683-40a6-8416-295563e37e34 9bd03f63fa9d4beb8de31e6c2f2c8d12 56c3f5c047e74a78a71438c4412e6e13 -\</div><div> - -] Filter Aggre\</div><div>gateInstanceExtraSpecsFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:12:56.377 19428 DEBUG nova.scheduler.filters.aggregate_multitenancy_isolation [req-45b8afd5-9683-40a6-8416-295563e37e34 9bd03f63fa9d4beb8de31e6c\</div><div>2f2c8d12 56c3f5c04\</div><div>7e74a78a71438c4412e6e13 - - -] (<a href="http://compute-01.cloud.pd.infn.it">compute-01.cloud.pd.infn.it</a>, <a href="http://compute-01.cloud.pd.infn.it">compute-01.cloud.pd.infn.it</a>) ram: 12797MB disk: 48128MB io_ops: 0 instances: 0 fails tenant id on\</div><div> aggregate host_pa\</div><div>sses /usr/lib/python2.7/site-packages/nova/scheduler/filters/aggregate_multitenancy_isolation.py:50</div><div>2018-05-29 11:12:56.378 19428 DEBUG nova.scheduler.filters.aggregate_multitenancy_isolation [req-45b8afd5-9683-40a6-8416-295563e37e34 9bd03f63fa9d4beb8de31e6c\</div><div>2f2c8d12 56c3f5c04\</div><div>7e74a78a71438c4412e6e13 - - -] (<a href="http://compute-03.cloud.pd.infn.it">compute-03.cloud.pd.infn.it</a>, <a href="http://compute-03.cloud.pd.infn.it">compute-03.cloud.pd.infn.it</a>) ram: 8701MB disk: -4096MB io_ops: 0 instances: 0 fails tenant id on \</div><div>aggregate host_pas\</div><div>ses /usr/lib/python2.7/site-packages/nova/scheduler/filters/aggregate_multitenancy_isolation.py:50</div><div>2018-05-29 11:12:56.378 19428 INFO nova.filters [req-45b8afd5-9683-40a6-8416-295563e37e34 9bd03f63fa9d4beb8de31e6c2f2c8d12 56c3f5c047e74a78a71438c4412e6e13 - \</div><div>- -] Filter Aggreg\</div><div>ateMultiTenancyIsolation returned 0 hosts</div></div><div><br></div><div><br></div><div><br></div><div>I am confused ...</div><div>Any hints ?</div><div><br></div><div>Thanks, Massimo</div><div><br></div><div>[*]</div><div><br></div><div><br></div><div><div>2018-05-29 11:09:54.328 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter AggregateInstanceExtraSpecsFilter returned 3 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.330 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter AggregateMultiTenancyIsolation returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.332 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter RetryFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.332 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter AvailabilityZoneFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.333 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter RamFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.334 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter CoreFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.334 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter AggregateRamFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.335 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter AggregateCoreFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.335 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter DiskFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.336 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter ComputeFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.337 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter ComputeCapabilitiesFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.338 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter ImagePropertiesFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.339 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter ServerGroupAntiAffinityFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div><div>2018-05-29 11:09:54.339 19428 DEBUG nova.filters [req-1a838e77-8042-4550-b157-4943445119a2 ab573ba3ea014b778193b6922ffffe6d ee1865a76440481cbcff08544c7d580a -\</div><div> - -] Filter ServerGroupAffinityFilter returned 2 host(s) get_filtered_objects /usr/lib/python2.7/site-packages/nova/filters.py:104</div></div><div><br></div></div>