cinder.scheduler.filter_scheduler module¶
The FilterScheduler is for creating volumes.
You can customize this scheduler by specifying your own volume Filters and Weighing Functions.
- class FilterScheduler(*args, **kwargs)¶
Bases:
cinder.scheduler.driver.Scheduler
Scheduler that can be used for filtering and weighing.
- backend_passes_filters(context: cinder.context.RequestContext, backend: str, request_spec: dict, filter_properties: dict)¶
Check if the specified backend passes the filters.
- find_retype_backend(context: cinder.context.RequestContext, request_spec: dict, filter_properties: Optional[dict] = None, migration_policy: str = 'never') cinder.scheduler.host_manager.BackendState ¶
Find a backend that can accept the volume with its new type.
- get_backup_host(volume: cinder.objects.volume.Volume, driver=None)¶
Must override schedule method for scheduler to work.
- get_pools(context: cinder.context.RequestContext, filters: dict)¶
Must override schedule method for scheduler to work.
- populate_filter_properties(request_spec: dict, filter_properties: dict) None ¶
Stuff things into filter_properties.
Can be overridden in a subclass to add more data.
- schedule_create_group(context: cinder.context.RequestContext, group, group_spec, request_spec_list, group_filter_properties, filter_properties_list) None ¶
Must override schedule method for scheduler to work.
- schedule_create_volume(context: cinder.context.RequestContext, request_spec: dict, filter_properties: dict) None ¶
Must override schedule method for scheduler to work.