Client side of nova-cells RPC API (for talking to the nova-cells service within a cell).
This is different than communication between child and parent nova-cells services. That communication is handled by the cells driver via the messaging module.
Bases: object
Cells client-side RPC API
API version history:
1.0 - Initial version.
1.1 - Adds get_cell_info_for_neighbors() and sync_instances()
- 1.2 - Adds service_get_all(), service_get_by_compute_host(),
and proxy_rpc_to_compute_manager()
1.3 - Adds task_log_get_all()
- 1.4 - Adds compute_node_get(), compute_node_get_all(), and
compute_node_stats()
- 1.5 - Adds actions_get(), action_get_by_request_id(), and
action_events_get()
1.6 - Adds consoleauth_delete_tokens() and validate_console_port()
... Grizzly supports message version 1.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 1.6.
1.7 - Adds service_update()
1.8 - Adds build_instances(), deprecates schedule_run_instance()
1.9 - Adds get_capacities()
1.10 - Adds bdm_update_or_create_at_top(), and bdm_destroy_at_top()
1.11 - Adds get_migrations()
1.12 - Adds instance_start() and instance_stop()
- 1.13 - Adds cell_create(), cell_update(), cell_delete(), and
cell_get()
1.14 - Adds reboot_instance()
1.15 - Adds suspend_instance() and resume_instance()
1.16 - Adds instance_update_from_api()
1.17 - Adds get_host_uptime()
1.18 - Adds terminate_instance() and soft_delete_instance()
1.19 - Adds pause_instance() and unpause_instance()
1.20 - Adds resize_instance() and live_migrate_instance()
1.21 - Adds revert_resize() and confirm_resize()
1.22 - Adds reset_network()
1.23 - Adds inject_network_info()
1.24 - Adds backup_instance() and snapshot_instance()
... Havana supports message version 1.24. So, any changes to existing methods in 1.x after that point should be done such that they can handle the version_cap being set to 1.24.
- 1.25 - Adds rebuild_instance()
- 1.26 - Adds service_delete()
- 1.27 - Updates instance_delete_everywhere() for instance objects
... Icehouse supports message version 1.27. So, any changes to existing methods in 1.x after that point should be done such that they can handle the version_cap being set to 1.27.
- 1.28 - Make bdm_update_or_create_at_top and use bdm objects
- 1.29 - Adds set_admin_password()
... Juno supports message version 1.29. So, any changes to existing methods in 1.x after that point should be done such that they can handle the version_cap being set to 1.29.
1.30 - Make build_instances() use flavor object
1.31 - Add clean_shutdown to stop, resize, rescue, and shelve
1.32 - Send objects for instances in build_instances()
1.33 - Add clean_shutdown to resize_instance()
- 1.34 - build_instances uses BlockDeviceMapping objects, drops
legacy_bdm argument
... Kilo supports message version 1.34. So, any changes to existing methods in 1.x after that point should be done such that they can handle the version_cap being set to 1.34.
- 1.35 - Make instance_update_at_top, instance_destroy_at_top
and instance_info_cache_update_at_top use instance objects
1.36 - Added ‘delete_type’ parameter to terminate_instance()
1.37 - Add get_keypair_at_top to fetch keypair from api cell
... Liberty supports message version 1.37. So, any changes to existing methods in 1.x after that point should be done such that they can handle the version_cap being set to 1.37.
Broadcast upwards that a block device mapping was destroyed. One of device_name or volume_id should be specified.
Create or update a block device mapping in API cells. If create is True, only try to create. If create is None, try to update but fall back to create. If create is False, only attempt to update. This maps to nova-conductor’s behavior.
Build instances.
Broadcast upwards that bw_usage was updated.
Make a call to a compute API method in a certain cell.
Make a cast to a compute API method in a certain cell.
Get a compute node by ID in a specific cell.
Return list of compute nodes in all cells, optionally filtering by hypervisor host.
Return compute node stats from all cells.
Delete consoleauth tokens for an instance in API cells.
Get information about our neighbor cells from the manager.
Gets the host uptime in a particular cell. The cell name should be encoded within the host_name
Get all migrations applying the filters.
Inject networking for an instance.
Delete instance everywhere. delete_type may be ‘soft’ or ‘hard’. This is generally only used to resolve races when API cell doesn’t know to what cell an instance belongs.
Destroy instance at API level.
Create an instance fault at the top.
Broadcast up that an instance’s info_cache has changed.
Update instance at API level.
Update an instance in its cell.
This method takes a new-world instance object.
Pause an instance in its cell.
This method takes a new-world instance object.
Proxy RPC to a compute manager. The host in the topic should be encoded with the target cell name.
Reboot an instance in its cell.
This method takes a new-world instance object.
Reset networking for an instance.
Resume an instance in its cell.
This method takes a new-world instance object.
Deletes the specified service.
Ask all cells for their list of services.
Get the service entry for a host in a particular cell. The cell name should be encoded within the host_name.
Used to enable/disable a service. For compute services, setting to disabled stops new builds arriving on that host.
Parameters: |
|
---|
Soft-delete an instance in its cell.
This method takes a new-world instance object.
Start an instance in its cell.
This method takes a new-world instance object.
Stop an instance in its cell.
This method takes a new-world instance object.
Suspend an instance in its cell.
This method takes a new-world instance object.
Ask all cells to sync instance data.
Get the task logs from the DB in child cells.
Delete an instance in its cell.
This method takes a new-world instance object.
Unpause an instance in its cell.
This method takes a new-world instance object.
Validate console port with child cell compute node.