The nova.scheduler.rpcapi Module

Client side of the scheduler manager RPC API.

class SchedulerAPI

Bases: object

Client side of the scheduler rpc API.

API version history:

  • 1.0 - Initial version.

  • 1.1 - Changes to prep_resize():
    • remove instance_uuid, add instance
    • remove instance_type_id, add instance_type
    • remove topic, it was unused
  • 1.2 - Remove topic from run_instance, it was unused

  • 1.3 - Remove instance_id, add instance to live_migration

  • 1.4 - Remove update_db from prep_resize

  • 1.5 - Add reservations argument to prep_resize()

  • 1.6 - Remove reservations argument to run_instance()

  • 1.7 - Add create_volume() method, remove topic from live_migration()

  • 2.0 - Remove 1.x backwards compat

  • 2.1 - Add image_id to create_volume()

  • 2.2 - Remove reservations argument to create_volume()

  • 2.3 - Remove create_volume()

  • 2.4 - Change update_service_capabilities()
    • accepts a list of capabilities
  • 2.5 - Add get_backdoor_port()

  • 2.6 - Add select_hosts()

... Grizzly supports message version 2.6. So, any changes to existing methods in 2.x after that point should be done such that they can handle the version_cap being set to 2.6.

  • 2.7 - Add select_destinations()

  • 2.8 - Deprecate prep_resize() – JUST KIDDING. It is still used

    by the compute manager for retries.

  • 2.9 - Added the legacy_bdm_in_spec parameter to run_instance()

... Havana supports message version 2.9. So, any changes to existing methods in 2.x after that point should be done such that they can handle the version_cap being set to 2.9.

  • Deprecated live_migration() call, moved to conductor
  • Deprecated select_hosts()

3.0 - Removed backwards compat

... Icehouse and Juno support message version 3.0. So, any changes to existing methods in 3.x after that point should be done such that they can handle the version_cap being set to 3.0.

  • 3.1 - Made select_destinations() send flavor object

  • 4.0 - Removed backwards compat for Icehouse

  • 4.1 - Add update_aggregates() and delete_aggregate()

  • 4.2 - Added update_instance_info(), delete_instance_info(), and

    sync_instance_info() methods

... Kilo and Liberty support message version 4.2. So, any changes to existing methods in 4.x after that point should be done such that they can handle the version_cap being set to 4.2.

  • 4.3 - Modify select_destinations() signature by providing a

    RequestSpec obj

VERSION_ALIASES = {'juno': '3.0', 'icehouse': '3.0', 'havana': '2.9', 'grizzly': '2.6', 'kilo': '4.2', 'liberty': '4.2'}
delete_aggregate(ctxt, aggregate)
delete_instance_info(ctxt, host_name, instance_uuid)
select_destinations(ctxt, spec_obj)
sync_instance_info(ctxt, host_name, instance_uuids)
update_aggregates(ctxt, aggregates)
update_instance_info(ctxt, host_name, instance_info)

Previous topic

The nova.scheduler.manager Module

Next topic

The nova.scheduler.scheduler_options Module

Project Source

This Page