<html xmlns:v="urn:schemas-microsoft-com:vml" xmlns:o="urn:schemas-microsoft-com:office:office" xmlns:w="urn:schemas-microsoft-com:office:word" xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" xmlns="http://www.w3.org/TR/REC-html40">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 15 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
        {font-family:"Cambria Math";
        panose-1:2 4 5 3 5 4 6 3 2 4;}
@font-face
        {font-family:Calibri;
        panose-1:2 15 5 2 2 2 4 3 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
        {margin:0in;
        margin-bottom:.0001pt;
        font-size:11.0pt;
        font-family:"Calibri",sans-serif;}
a:link, span.MsoHyperlink
        {mso-style-priority:99;
        color:#0563C1;
        text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
        {mso-style-priority:99;
        color:#954F72;
        text-decoration:underline;}
span.EmailStyle17
        {mso-style-type:personal-compose;
        font-family:"Calibri",sans-serif;
        color:windowtext;}
.MsoChpDefault
        {mso-style-type:export-only;}
@page WordSection1
        {size:8.5in 11.0in;
        margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
        {page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body lang="EN-US" link="#0563C1" vlink="#954F72">
<div class="WordSection1">
<p class="MsoNormal">I’m working on a list of filters ordered by cost. This is what I have so far. Does this look reasonably correct for Rocky?<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Cheap Filters: <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">AllHostsFilter - does no filtering. It passes all the available hosts.
<o:p></o:p></p>
<p class="MsoNormal">AvailabilityZoneFilter - filters hosts by availability zone.
<o:p></o:p></p>
<p class="MsoNormal">AggregateInstanceExtraSpecsFilter - checks aggregate metadata set with aggregate_instance_extra_specs.  All hosts are passed if no extra_specs are specified.
<o:p></o:p></p>
<p class="MsoNormal">AggregateCoreFilter - filters hosts by CPU core number with per-aggregate cpu_allocation_ratio setting.
<o:p></o:p></p>
<p class="MsoNormal">AggregateRamFilter - filters hosts by RAM with per-aggregate ram_allocation_ratio setting.
<o:p></o:p></p>
<p class="MsoNormal">AggregateDiskFilter - filters hosts by disk allocation with per-aggregate disk_allocation_ratio setting.
<o:p></o:p></p>
<p class="MsoNormal">AggregateNumInstancesFilter - filters hosts by number of instances with per-aggregate max_instances_per_host setting.
<o:p></o:p></p>
<p class="MsoNormal">AggregateIoOpsFilter - filters hosts by I/O operations with per-aggregate max_io_ops_per_host setting.
<o:p></o:p></p>
<p class="MsoNormal">AggregateMultiTenancyIsolation - isolate tenants in specific aggregates.
<o:p></o:p></p>
<p class="MsoNormal">AggregateTypeAffinityFilter - limits instance_type by aggregate.
<o:p></o:p></p>
<p class="MsoNormal">AggregateImagePropertiesIsolation - isolates hosts based on image properties and aggregate metadata.
<o:p></o:p></p>
<p class="MsoNormal">DifferentHostFilter - allows the instance on a different host from a set of instances.
<o:p></o:p></p>
<p class="MsoNormal">SameHostFilter - puts the instance on the same host as another instance in a set of instances.
<o:p></o:p></p>
<p class="MsoNormal">ComputeFilter - passes all hosts that are operational and enabled.
<o:p></o:p></p>
<p class="MsoNormal">NumInstancesFilter - filters compute nodes by number of running instances.
<o:p></o:p></p>
<p class="MsoNormal">IoOpsFilter - filters hosts by concurrent I/O operations. <o:p>
</o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">More Expensive Filters: <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">ServerGroupAntiAffinityFilter - This filter implements anti-affinity for a server group.
<o:p></o:p></p>
<p class="MsoNormal">ServerGroupAffinityFilter - This filter works the same way as ServerGroupAntiAffinityFilter. The difference is that when you create the server group, you should specify a policy of ‘affinity’.
<o:p></o:p></p>
<p class="MsoNormal">ImagePropertiesFilter - filters hosts based on properties defined on the instance’s image. Doc on setting image properties is here: https://docs.openstack.org/glance/rocky/admin/useful-image-properties.html
<o:p></o:p></p>
<p class="MsoNormal">IsolatedHostsFilter - filter based on isolated_images, isolated_hosts and restrict_isolated_hosts_to_isolated_images flags.
<o:p></o:p></p>
<p class="MsoNormal">SimpleCIDRAffinityFilter - allows a new instance on a host within the same IP block.
<o:p></o:p></p>
<p class="MsoNormal">MetricsFilter - filters hosts based on metrics weight_setting.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Most Expensive Filters: <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">PciPassthroughFilter - Filter that schedules instances on a host if the host has devices to meet the device requests in the ‘extra_specs’ for the flavor.
<o:p></o:p></p>
<p class="MsoNormal">ComputeCapabilitiesFilter - checks that the capabilities provided by the host compute service satisfy any extra specifications associated with the instance type.
<o:p></o:p></p>
<p class="MsoNormal">NUMATopologyFilter - filters hosts based on the NUMA topology requested by the instance, if any.
<o:p></o:p></p>
<p class="MsoNormal">JsonFilter - allows simple JSON-based grammar for selecting hosts.
<o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Deprecated Filters: <o:p></o:p></p>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Please don't use any of these; they are obsolete in Rocky: <o:p>
</o:p></p>
<p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal">RetryFilter - filters hosts that have already been attempted for scheduling. Obsolete since Queens.
<o:p></o:p></p>
<p class="MsoNormal">RamFilter - filters hosts by their RAM. Obsolete since Pike. 
<o:p></o:p></p>
<p class="MsoNormal">CoreFilter - filters based on CPU core utilization. Obsolete since Pike.
<o:p></o:p></p>
<p class="MsoNormal">DiskFilter - filters hosts by their disk allocation. Obsolete since Pike.  <o:p></o:p></p>
</div>
</body>
</html>