The nova.network.rpcapi Module

Client side of the network RPC API.

class NetworkAPI(topic=None)

Bases: object

Client side of the network rpc API.

API version history:

  • 1.0 - Initial version.

  • 1.1 - Adds migrate_instance_[start|finish]

  • 1.2 - Make migrate_instance_[start|finish] a little more flexible

  • 1.3 - Adds fanout cast update_dns for multi_host networks

  • 1.4 - Add get_backdoor_port()

  • 1.5 - Adds associate

  • 1.6 - Adds instance_uuid to _{dis,}associate_floating_ip

  • 1.7 - Adds method get_floating_ip_pools to replace get_floating_pools

  • 1.8 - Adds macs to allocate_for_instance

  • 1.9 - Adds rxtx_factor to [add|remove]_fixed_ip, removes

    instance_uuid from allocate_for_instance and instance_get_nw_info

... Grizzly supports message version 1.9. 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.9.

  • 1.10- Adds (optional) requested_networks to deallocate_for_instance

... Havana supports message version 1.10. 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.10.

  • NOTE: remove unused method get_vifs_by_instance()

  • NOTE: remove unused method get_vif_by_mac_address()

  • NOTE: remove unused method get_network()

  • NOTE: remove unused method get_all_networks()

  • 1.11 - Add instance to deallocate_for_instance().

    Remove instance_id, project_id, and host.

  • 1.12 - Add instance to deallocate_fixed_ip()

... Icehouse supports message version 1.12. 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.12.

  • 1.13 - Convert allocate_for_instance()

    to use NetworkRequestList objects

... Juno and Kilo supports message version 1.13. 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.13.

  • NOTE: remove unused method get_floating_ips_by_fixed_address()
  • NOTE: remove unused method get_instance_uuids_by_ip_filter()
  • NOTE: remove unused method disassociate_network()
  • NOTE: remove unused method get_fixed_ip()
  • NOTE: remove unused method get_fixed_ip_by_address()
  • NOTE: remove unused method get_floating_ip()
  • NOTE: remove unused method get_floating_ip_pools()
  • NOTE: remove unused method get_floating_ip_by_address()
  • NOTE: remove unused method get_floating_ips_by_project()
  • NOTE: remove unused method get_instance_id_by_floating_address()
  • NOTE: remove unused method allocate_floating_ip()
  • NOTE: remove unused method deallocate_floating_ip()
  • NOTE: remove unused method associate_floating_ip()
  • NOTE: remove unused method disassociate_floating_ip()
  • NOTE: remove unused method associate()
  • 1.14 - Add mac parameter to release_fixed_ip().
  • 1.15 - Convert set_network_host() to use Network objects.

... Liberty supports message version 1.15. 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.15.

  • 1.16 - Transfer instance in addition to instance_id in

    setup_networks_on_host

VERSION_ALIASES = {'juno': '1.13', 'icehouse': '1.12', 'havana': '1.10', 'grizzly': '1.9', 'kilo': '1.13', 'liberty': '1.15'}
add_dns_entry(ctxt, address, name, dns_type, domain)
add_fixed_ip_to_instance(ctxt, instance_id, rxtx_factor, host, network_id)
add_network_to_project(ctxt, project_id, network_uuid)
allocate_for_instance(ctxt, instance_id, project_id, host, rxtx_factor, vpn, requested_networks, macs=None, dhcp_options=None)
create_networks(ctxt, **kwargs)
create_private_dns_domain(ctxt, domain, av_zone)
create_public_dns_domain(ctxt, domain, project)
deallocate_fixed_ip(ctxt, address, host, instance)
deallocate_for_instance(ctxt, instance, requested_networks=None)
delete_dns_domain(ctxt, domain)
delete_dns_entry(ctxt, name, domain)
delete_network(ctxt, uuid, fixed_range)
get_dns_domains(ctxt)
get_dns_entries_by_address(ctxt, address, domain)
get_dns_entries_by_name(ctxt, name, domain)
get_instance_nw_info(ctxt, instance_id, rxtx_factor, host, project_id)
lease_fixed_ip(ctxt, address, host)
migrate_instance_finish(ctxt, instance_uuid, rxtx_factor, project_id, source_compute, dest_compute, floating_addresses, host=None)
migrate_instance_start(ctxt, instance_uuid, rxtx_factor, project_id, source_compute, dest_compute, floating_addresses, host=None)
modify_dns_entry(ctxt, address, name, domain)
release_fixed_ip(ctxt, address, host, mac)
remove_fixed_ip_from_instance(ctxt, instance_id, rxtx_factor, host, address)
rpc_setup_network_on_host(ctxt, network_id, teardown, host)
set_network_host(ctxt, network_ref)
setup_networks_on_host(ctxt, instance_id, host, teardown, instance)
update_dns(ctxt, network_ids)
validate_networks(ctxt, networks)

Previous topic

The nova.network.opts Module

Next topic

The nova.network.security_group.neutron_driver Module

Project Source

This Page