The nova.cells.rpcapi Module

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 messging module.

class CellsAPI

Bases: nova.openstack.common.rpc.proxy.RpcProxy

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()

BASE_RPC_API_VERSION = '1.0'
action_events_get(ctxt, instance, action_id)
action_get_by_request_id(ctxt, instance, request_id)
actions_get(ctxt, instance)
bw_usage_update_at_top(ctxt, uuid, mac, start_period, bw_in, bw_out, last_ctr_in, last_ctr_out, last_refreshed=None)

Broadcast upwards that bw_usage was updated.

call_compute_api_method(ctxt, cell_name, method, *args, **kwargs)

Make a call to a compute API method in a certain cell.

cast_compute_api_method(ctxt, cell_name, method, *args, **kwargs)

Make a cast to a compute API method in a certain cell.

compute_node_get(ctxt, compute_id)

Get a compute node by ID in a specific cell.

compute_node_get_all(ctxt, hypervisor_match=None)

Return list of compute nodes in all cells, optionally filtering by hypervisor host.

compute_node_stats(ctxt)

Return compute node stats from all cells.

consoleauth_delete_tokens(ctxt, instance_uuid)

Delete consoleauth tokens for an instance in API cells.

get_cell_info_for_neighbors(ctxt)

Get information about our neighbor cells from the manager.

instance_delete_everywhere(ctxt, instance, delete_type)

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.

instance_destroy_at_top(ctxt, instance)

Destroy instance at API level.

instance_fault_create_at_top(ctxt, instance_fault)

Create an instance fault at the top.

instance_info_cache_update_at_top(ctxt, instance_info_cache)

Broadcast up that an instance’s info_cache has changed.

instance_update_at_top(ctxt, instance)

Update instance at API level.

proxy_rpc_to_manager(ctxt, rpc_message, topic, call=False, timeout=None)

Proxy RPC to a compute manager. The host in the topic should be encoded with the target cell name.

schedule_run_instance(ctxt, **kwargs)

Schedule a new instance for creation.

service_get_all(ctxt, filters=None)

Ask all cells for their list of services.

service_get_by_compute_host(ctxt, host_name)

Get the service entry for a host in a particular cell. The cell name should be encoded within the host_name.

sync_instances(ctxt, project_id=None, updated_since=None, deleted=False)

Ask all cells to sync instance data.

task_log_get_all(ctxt, task_name, period_beginning, period_ending, host=None, state=None)

Get the task logs from the DB in child cells.

validate_console_port(ctxt, instance_uuid, console_port, console_type)

Validate console port with child cell compute node.

Previous topic

The nova.cells.rpc_driver Module

Next topic

The nova.cells.scheduler Module

This Page