Skip to content

Commit c5b33b0

Browse files
Zuulopenstack-gerrit
authored andcommitted
Merge "Remove deprecated scheduler filters"
2 parents bda146c + 4939d0d commit c5b33b0

File tree

12 files changed

+21
-763
lines changed

12 files changed

+21
-763
lines changed

doc/source/admin/aggregates.rst

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -336,14 +336,11 @@ related availability zones feature operate under the hood:
336336
Finally, as discussed previously, there are a number of host aggregate-specific
337337
scheduler filters. These are:
338338

339-
- :ref:`AggregateCoreFilter`
340-
- :ref:`AggregateDiskFilter`
341339
- :ref:`AggregateImagePropertiesIsolation`
342340
- :ref:`AggregateInstanceExtraSpecsFilter`
343341
- :ref:`AggregateIoOpsFilter`
344342
- :ref:`AggregateMultiTenancyIsolation`
345343
- :ref:`AggregateNumInstancesFilter`
346-
- :ref:`AggregateRamFilter`
347344
- :ref:`AggregateTypeAffinityFilter`
348345

349346
The following configuration options are applicable to the scheduler

doc/source/admin/configuration/schedulers.rst

Lines changed: 0 additions & 132 deletions
Original file line numberDiff line numberDiff line change
@@ -158,68 +158,6 @@ Compute filters
158158

159159
The following sections describe the available compute filters.
160160

161-
.. _AggregateCoreFilter:
162-
163-
AggregateCoreFilter
164-
-------------------
165-
166-
.. deprecated:: 20.0.0
167-
168-
``AggregateCoreFilter`` is deprecated since the 20.0.0 Train release.
169-
As of the introduction of the placement service in Ocata, the behavior
170-
of this filter :ref:`has changed <bug-1804125>` and no longer should be used.
171-
In the 18.0.0 Rocky release nova `automatically mirrors`_ host aggregates
172-
to placement aggregates.
173-
In the 19.0.0 Stein release initial allocation ratios support was added
174-
which allows management of the allocation ratios via the placement API in
175-
addition to the existing capability to manage allocation ratios via the nova
176-
config. See `Allocation ratios`_ for details.
177-
178-
.. _`automatically mirrors`: https://specs.openstack.org/openstack/nova-specs/specs/rocky/implemented/placement-mirror-host-aggregates.html
179-
180-
Filters host by CPU core count with a per-aggregate ``cpu_allocation_ratio``
181-
value. If the per-aggregate value is not found, the value falls back to the
182-
global setting. If the host is in more than one aggregate and more than one
183-
value is found, the minimum value will be used.
184-
185-
Refer to :doc:`/admin/aggregates` for more information.
186-
187-
.. important::
188-
189-
Note the ``cpu_allocation_ratio`` :ref:`bug 1804125 <bug-1804125>`
190-
restriction.
191-
192-
193-
.. _AggregateDiskFilter:
194-
195-
AggregateDiskFilter
196-
-------------------
197-
198-
.. deprecated:: 20.0.0
199-
200-
``AggregateDiskFilter`` is deprecated since the 20.0.0 Train release.
201-
As of the introduction of the placement service in Ocata, the behavior
202-
of this filter :ref:`has changed <bug-1804125>` and no longer should be used.
203-
In the 18.0.0 Rocky release nova `automatically mirrors`_ host aggregates
204-
to placement aggregates.
205-
In the 19.0.0 Stein release initial allocation ratios support was added
206-
which allows management of the allocation ratios via the placement API in
207-
addition to the existing capability to manage allocation ratios via the nova
208-
config. See `Allocation ratios`_ for details.
209-
210-
Filters host by disk allocation with a per-aggregate ``disk_allocation_ratio``
211-
value. If the per-aggregate value is not found, the value falls back to the
212-
global setting. If the host is in more than one aggregate and more than one
213-
value is found, the minimum value will be used.
214-
215-
Refer to :doc:`/admin/aggregates` for more information.
216-
217-
.. important::
218-
219-
Note the ``disk_allocation_ratio`` :ref:`bug 1804125 <bug-1804125>`
220-
restriction.
221-
222-
223161
.. _AggregateImagePropertiesIsolation:
224162

225163
AggregateImagePropertiesIsolation
@@ -370,37 +308,6 @@ Refer to :doc:`/admin/aggregates` and :ref:`NumInstancesFilter` for more
370308
information.
371309

372310

373-
.. _AggregateRamFilter:
374-
375-
AggregateRamFilter
376-
------------------
377-
378-
.. deprecated:: 20.0.0
379-
380-
``AggregateRamFilter`` is deprecated since the 20.0.0 Train release.
381-
As of the introduction of the placement service in Ocata, the behavior
382-
of this filter :ref:`has changed <bug-1804125>` and no longer should be used.
383-
In the 18.0.0 Rocky release nova `automatically mirrors`_ host aggregates
384-
to placement aggregates.
385-
In the 19.0.0 Stein release initial allocation ratios support was added
386-
which allows management of the allocation ratios via the placement API in
387-
addition to the existing capability to manage allocation ratios via the nova
388-
config. See `Allocation ratios`_ for details.
389-
390-
Filters host by RAM allocation of instances with a per-aggregate
391-
``ram_allocation_ratio`` value. If the per-aggregate value is not found, the
392-
value falls back to the global setting. If the host is in more than one
393-
aggregate and thus more than one value is found, the minimum value will be
394-
used.
395-
396-
Refer to :doc:`/admin/aggregates` for more information.
397-
398-
.. important::
399-
400-
Note the ``ram_allocation_ratio`` :ref:`bug 1804125 <bug-1804125>`
401-
restriction.
402-
403-
404311
.. _AggregateTypeAffinityFilter:
405312

406313
AggregateTypeAffinityFilter
@@ -689,26 +596,6 @@ PciPassthroughFilter
689596
The filter schedules instances on a host if the host has devices that meet the
690597
device requests in the ``extra_specs`` attribute for the flavor.
691598

692-
RetryFilter
693-
-----------
694-
695-
.. deprecated:: 20.0.0
696-
697-
Since the 17.0.0 (Queens) release, the scheduler has provided alternate
698-
hosts for rescheduling so the scheduler does not need to be called during
699-
a reschedule which makes the ``RetryFilter`` useless. See the
700-
`Return Alternate Hosts`_ spec for details.
701-
702-
Filters out hosts that have already been attempted for scheduling purposes. If
703-
the scheduler selects a host to respond to a service request, and the host
704-
fails to respond to the request, this filter prevents the scheduler from
705-
retrying that host for the service request.
706-
707-
This filter is only useful if the :oslo.config:option:`scheduler.max_attempts`
708-
configuration option is set to a value greater than one.
709-
710-
.. _Return Alternate Hosts: https://specs.openstack.org/openstack/nova-specs/specs/queens/implemented/return-alternate-hosts.html
711-
712599
SameHostFilter
713600
--------------
714601

@@ -1012,23 +899,6 @@ The allocation ratio configuration is used both during reporting of compute
1012899
node `resource provider inventory`_ to the placement service and during
1013900
scheduling.
1014901

1015-
.. _bug-1804125:
1016-
1017-
.. note:: Regarding the `AggregateCoreFilter`_, `AggregateDiskFilter`_ and
1018-
`AggregateRamFilter`_, starting in 15.0.0 (Ocata) there is a behavior
1019-
change where aggregate-based overcommit ratios will no longer be honored
1020-
during scheduling for the FilterScheduler. Instead, overcommit values must
1021-
be set on a per-compute-node basis in the Nova configuration files.
1022-
1023-
If you have been relying on per-aggregate overcommit, during your upgrade,
1024-
you must change to using per-compute-node overcommit ratios in order for
1025-
your scheduling behavior to stay consistent. Otherwise, you may notice
1026-
increased NoValidHost scheduling failures as the aggregate-based overcommit
1027-
is no longer being considered.
1028-
1029-
See `bug 1804125 <https://bugs.launchpad.net/nova/+bug/1804125>`_ for more
1030-
details.
1031-
1032902
.. _resource provider inventory: https://docs.openstack.org/api-ref/placement/?expanded=#resource-provider-inventories
1033903

1034904
Usage scenarios
@@ -1060,8 +930,6 @@ here.
1060930
1061931
$ openstack resource provider inventory set --resource VCPU:allocation_ratio=1.0 815a5634-86fb-4e1e-8824-8a631fee3e06
1062932
1063-
Note the :ref:`bug 1804125 <bug-1804125>` restriction.
1064-
1065933
3. When the deployer wants to **always** use the placement API to set
1066934
allocation ratios, then the deployer should ensure that
1067935
``[DEFAULT]/xxx_allocation_ratio`` options are all set to None (the

doc/source/user/filter-scheduler.rst

Lines changed: 0 additions & 47 deletions
Original file line numberDiff line numberDiff line change
@@ -95,33 +95,12 @@ There are many standard filter classes which may be used
9595
use a comma. E.g., "value1,value2". All hosts are passed if no extra_specs
9696
are specified.
9797
* |ComputeFilter| - passes all hosts that are operational and enabled.
98-
* |AggregateCoreFilter| - DEPRECATED; filters hosts by CPU core number with per-aggregate
99-
:oslo.config:option:`cpu_allocation_ratio` setting. If no
100-
per-aggregate value is found, it will fall back to the global default
101-
:oslo.config:option:`cpu_allocation_ratio`.
102-
If more than one value is found for a host (meaning the host is in two
103-
different aggregates with different ratio settings), the minimum value
104-
will be used.
10598
* |IsolatedHostsFilter| - filter based on
10699
:oslo.config:option:`filter_scheduler.isolated_images`,
107100
:oslo.config:option:`filter_scheduler.isolated_hosts`
108101
and :oslo.config:option:`filter_scheduler.restrict_isolated_hosts_to_isolated_images`
109102
flags.
110103
* |JsonFilter| - allows simple JSON-based grammar for selecting hosts.
111-
* |AggregateRamFilter| - DEPRECATED; filters hosts by RAM with per-aggregate
112-
:oslo.config:option:`ram_allocation_ratio` setting. If no per-aggregate value
113-
is found, it will fall back to the global default
114-
:oslo.config:option:`ram_allocation_ratio`.
115-
If more than one value is found for a host (meaning the host is in two
116-
different aggregates with different ratio settings), the minimum value
117-
will be used.
118-
* |AggregateDiskFilter| - DEPRECATED; filters hosts by disk allocation with per-aggregate
119-
:oslo.config:option:`disk_allocation_ratio` setting. If no per-aggregate value
120-
is found, it will fall back to the global default
121-
:oslo.config:option:`disk_allocation_ratio`.
122-
If more than one value is found for a host (meaning the host is in two or more
123-
different aggregates with different ratio settings), the minimum value will
124-
be used.
125104
* |NumInstancesFilter| - filters compute nodes by number of instances.
126105
Nodes with too many instances will be filtered. The host will be
127106
ignored by the scheduler if more than
@@ -156,8 +135,6 @@ There are many standard filter classes which may be used
156135
set of instances.
157136
* |SameHostFilter| - puts the instance on the same host as another instance in
158137
a set of instances.
159-
* |RetryFilter| - DEPRECATED; filters hosts that have been attempted for
160-
scheduling. Only passes hosts that have not been previously attempted.
161138
* |AggregateTypeAffinityFilter| - limits instance_type by aggregate.
162139
This filter passes hosts if no instance_type key is set or
163140
the instance_type aggregate metadata value contains the name of the
@@ -281,26 +258,6 @@ creation of the new server for the user. The only exception for this rule is
281258
directly. Variable naming, such as the ``$free_ram_mb`` example above, should
282259
be based on those attributes.
283260

284-
The |RetryFilter| filters hosts that have already been attempted for
285-
scheduling. It only passes hosts that have not been previously attempted. If a
286-
compute node is raising an exception when spawning an instance, then the
287-
compute manager will reschedule it by adding the failing host to a retry
288-
dictionary so that the RetryFilter will not accept it as a possible
289-
destination. That means that if all of your compute nodes are failing, then the
290-
RetryFilter will return 0 hosts and the scheduler will raise a NoValidHost
291-
exception even if the problem is related to 1:N compute nodes. If you see that
292-
case in the scheduler logs, then your problem is most likely related to a
293-
compute problem and you should check the compute logs.
294-
295-
.. note:: The ``RetryFilter`` is deprecated since the 20.0.0 (Train) release
296-
and will be removed in an upcoming release. Since the 17.0.0 (Queens)
297-
release, the scheduler has provided alternate hosts for rescheduling
298-
so the scheduler does not need to be called during a reschedule which
299-
makes the ``RetryFilter`` useless. See the `Return Alternate Hosts`_
300-
spec for details.
301-
302-
.. _Return Alternate Hosts: https://specs.openstack.org/openstack/nova-specs/specs/queens/implemented/return-alternate-hosts.html
303-
304261
The |NUMATopologyFilter| considers the NUMA topology that was specified for the instance
305262
through the use of flavor extra_specs in combination with the image properties, as
306263
described in detail in the related nova-spec document:
@@ -647,11 +604,8 @@ in :mod:`nova.tests.scheduler`.
647604
.. |BaseHostFilter| replace:: :class:`BaseHostFilter <nova.scheduler.filters.BaseHostFilter>`
648605
.. |ComputeCapabilitiesFilter| replace:: :class:`ComputeCapabilitiesFilter <nova.scheduler.filters.compute_capabilities_filter.ComputeCapabilitiesFilter>`
649606
.. |ComputeFilter| replace:: :class:`ComputeFilter <nova.scheduler.filters.compute_filter.ComputeFilter>`
650-
.. |AggregateCoreFilter| replace:: :class:`AggregateCoreFilter <nova.scheduler.filters.core_filter.AggregateCoreFilter>`
651607
.. |IsolatedHostsFilter| replace:: :class:`IsolatedHostsFilter <nova.scheduler.filters.isolated_hosts_filter>`
652608
.. |JsonFilter| replace:: :class:`JsonFilter <nova.scheduler.filters.json_filter.JsonFilter>`
653-
.. |AggregateRamFilter| replace:: :class:`AggregateRamFilter <nova.scheduler.filters.ram_filter.AggregateRamFilter>`
654-
.. |AggregateDiskFilter| replace:: :class:`AggregateDiskFilter <nova.scheduler.filters.disk_filter.AggregateDiskFilter>`
655609
.. |NumInstancesFilter| replace:: :class:`NumInstancesFilter <nova.scheduler.filters.num_instances_filter.NumInstancesFilter>`
656610
.. |AggregateNumInstancesFilter| replace:: :class:`AggregateNumInstancesFilter <nova.scheduler.filters.num_instances_filter.AggregateNumInstancesFilter>`
657611
.. |IoOpsFilter| replace:: :class:`IoOpsFilter <nova.scheduler.filters.io_ops_filter.IoOpsFilter>`
@@ -660,7 +614,6 @@ in :mod:`nova.tests.scheduler`.
660614
.. |SimpleCIDRAffinityFilter| replace:: :class:`SimpleCIDRAffinityFilter <nova.scheduler.filters.affinity_filter.SimpleCIDRAffinityFilter>`
661615
.. |DifferentHostFilter| replace:: :class:`DifferentHostFilter <nova.scheduler.filters.affinity_filter.DifferentHostFilter>`
662616
.. |SameHostFilter| replace:: :class:`SameHostFilter <nova.scheduler.filters.affinity_filter.SameHostFilter>`
663-
.. |RetryFilter| replace:: :class:`RetryFilter <nova.scheduler.filters.retry_filter.RetryFilter>`
664617
.. |AggregateTypeAffinityFilter| replace:: :class:`AggregateTypeAffinityFilter <nova.scheduler.filters.type_filter.AggregateTypeAffinityFilter>`
665618
.. |ServerGroupAntiAffinityFilter| replace:: :class:`ServerGroupAntiAffinityFilter <nova.scheduler.filters.affinity_filter.ServerGroupAntiAffinityFilter>`
666619
.. |ServerGroupAffinityFilter| replace:: :class:`ServerGroupAffinityFilter <nova.scheduler.filters.affinity_filter.ServerGroupAffinityFilter>`

nova/scheduler/filters/core_filter.py

Lines changed: 0 additions & 98 deletions
This file was deleted.

0 commit comments

Comments
 (0)