Compute API¶
For details on how to use compute, see Using OpenStack Compute
The Compute Class¶
The compute high-level interface is available through the compute
member of a Connection object. The
compute member will only be added if the service is detected.
-
class
openstack.compute.v2._proxy.Proxy(session)¶ -
find_extension(name_or_id, ignore_missing=True)¶ Find a single extension
Parameters: - name_or_id – The name or ID of an extension.
- ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the resource does not exist. When set toTrue, None will be returned when attempting to find a nonexistent resource.
Returns: One
Extensionor None
-
extensions(**query)¶ Retrieve a generator of extensions
Parameters: **query (kwargs) – Optional query parameters to be sent to limit the resources being returned. Returns: A generator of extension instances. Return type: Extension
-
find_flavor(name_or_id, ignore_missing=True)¶ Find a single flavor
Parameters: - name_or_id – The name or ID of a flavor.
- ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the resource does not exist. When set toTrue, None will be returned when attempting to find a nonexistent resource.
Returns: One
Flavoror None
-
create_flavor(**attrs)¶ Create a new flavor from attributes
Parameters: attrs (dict) – Keyword arguments which will be used to create a Flavor, comprised of the properties on the Flavor class.Returns: The results of flavor creation Return type: Flavor
-
delete_flavor(flavor, ignore_missing=True)¶ Delete a flavor
Parameters: - flavor – The value can be either the ID of a flavor or a
Flavorinstance. - ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the flavor does not exist. When set toTrue, no exception will be set when attempting to delete a nonexistent flavor.
Returns: None- flavor – The value can be either the ID of a flavor or a
-
get_flavor(flavor)¶ Get a single flavor
Parameters: flavor – The value can be the ID of a flavor or a Flavorinstance.Returns: One FlavorRaises: ResourceNotFoundwhen no resource can be found.
-
flavors(details=True, **query)¶ Return a generator of flavors
Parameters: - details (bool) – When
True, returnsFlavorDetailobjects, otherwiseFlavor. Default: ``True`` - **query (kwargs) – Optional query parameters to be sent to limit the flavors being returned.
Returns: A generator of flavor objects
- details (bool) – When
-
update_flavor(flavor, **attrs)¶ Update a flavor
Parameters: flavor – Either the ID of a flavor or a Flavorinstance.Attrs kwargs: The attributes to update on the flavor represented by value.Returns: The updated flavor Return type: Flavor
-
delete_image(image, ignore_missing=True)¶ Delete an image
Parameters: - image – The value can be either the ID of an image or a
Imageinstance. - ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the image does not exist. When set toTrue, no exception will be set when attempting to delete a nonexistent image.
Returns: None- image – The value can be either the ID of an image or a
-
find_image(name_or_id, ignore_missing=True)¶ Find a single image
Parameters: - name_or_id – The name or ID of a image.
- ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the resource does not exist. When set toTrue, None will be returned when attempting to find a nonexistent resource.
Returns: One
Imageor None
-
get_image(image)¶ Get a single image
Parameters: image – The value can be the ID of an image or a Imageinstance.Returns: One ImageRaises: ResourceNotFoundwhen no resource can be found.
-
images(details=True, **query)¶ Return a generator of images
Parameters: - details (bool) – When
True, returnsImageDetailobjects, otherwiseImage. Default: ``True`` - **query (kwargs) – Optional query parameters to be sent to limit the resources being returned.
Returns: A generator of image objects
- details (bool) – When
-
get_image_metadata(image, key=None)¶ Return a dictionary of metadata for an image
Parameters: - server – Either the ID of an image or a
ImageorImageDetailinstance. - key – An optional key to retrieve from the image’s metadata.
When no
keyis specified, all metadata is retrieved.
Returns: A dictionary of the image’s metadata. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of an image or a
-
create_image_metadata(image, **metadata)¶ Create metadata for an image
Parameters: - server – Either the ID of an image or a
ImageorImageDetailinstance. - metadata (kwargs) – Key/value pairs to be added as metadata on the image. All keys and values are stored as Unicode.
Returns: A dictionary of the metadata that was created on the image. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of an image or a
-
replace_image_metadata(image, **metadata)¶ Replace metadata for an image
Parameters: - server – Either the ID of a image or a
ImageorImageDetailinstance. - metadata (kwargs) – Key/value pairs to be added as metadata on the image. Any other existing metadata is removed. All keys and values are stored as Unicode.
Returns: A dictionary of the metadata for the image. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of a image or a
-
update_image_metadata(image, **metadata)¶ Update metadata for an image
Parameters: - server – Either the ID of an image or a
ImageorImageDetailinstance. - metadata (kwargs) – Key/value pairs to be updated in the image’s metadata. No other metadata is modified by this call. All keys and values are stored as Unicode.
Returns: A dictionary of the metadata for the image. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of an image or a
-
delete_image_metadata(image, key)¶ Delete metadata for an image
Parameters: - server – Either the ID of an image or a
ImageorImageDetailinstance. - key – The key to delete
Return type: None- server – Either the ID of an image or a
-
create_keypair(**attrs)¶ Create a new keypair from attributes
Parameters: attrs (dict) – Keyword arguments which will be used to create a Keypair, comprised of the properties on the Keypair class.Returns: The results of keypair creation Return type: Keypair
-
delete_keypair(keypair, ignore_missing=True)¶ Delete a keypair
Parameters: - keypair – The value can be either the ID of a keypair or a
Keypairinstance. - ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the keypair does not exist. When set toTrue, no exception will be set when attempting to delete a nonexistent keypair.
Returns: None- keypair – The value can be either the ID of a keypair or a
-
get_keypair(keypair)¶ Get a single keypair
Parameters: keypair – The value can be the ID of a keypair or a Keypairinstance.Returns: One KeypairRaises: ResourceNotFoundwhen no resource can be found.
-
find_keypair(name_or_id, ignore_missing=True)¶ Find a single keypair
Parameters: - name_or_id – The name or ID of a keypair.
- ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the resource does not exist. When set toTrue, None will be returned when attempting to find a nonexistent resource.
Returns: One
Keypairor None
-
keypairs(**query)¶ Return a generator of keypairs
Parameters: **query (kwargs) – Optional query parameters to be sent to limit the resources being returned. Returns: A generator of keypair objects Return type: Keypair
-
update_keypair(keypair, **attrs)¶ Update a keypair
Parameters: keypair – Either the ID of a keypair or a Keypairinstance.Attrs kwargs: The attributes to update on the keypair represented by keypair.Returns: The updated keypair Return type: Keypair
-
get_limits()¶ Retrieve limits that are applied to the project’s account
Returns: A Limits object, including both AbsoluteLimitsandRateLimitsReturn type: Limits
-
create_server(**attrs)¶ Create a new server from attributes
Parameters: attrs (dict) – Keyword arguments which will be used to create a Server, comprised of the properties on the Server class.Returns: The results of server creation Return type: Server
-
delete_server(server, ignore_missing=True)¶ Delete a server
Parameters: - server – The value can be either the ID of a server or a
Serverinstance. - ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the server does not exist. When set toTrue, no exception will be set when attempting to delete a nonexistent server.
Returns: None- server – The value can be either the ID of a server or a
-
find_server(name_or_id, ignore_missing=True)¶ Find a single server
Parameters: - name_or_id – The name or ID of a server.
- ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the resource does not exist. When set toTrue, None will be returned when attempting to find a nonexistent resource.
Returns: One
Serveror None
-
get_server(server)¶ Get a single server
Parameters: server – The value can be the ID of a server or a Serverinstance.Returns: One ServerRaises: ResourceNotFoundwhen no resource can be found.
-
servers(details=True, **query)¶ Retrieve a generator of servers
Parameters: - details (bool) – When set to
FalseServerinstances will be returned. The default,True, will causeServerDetailinstances to be returned. - **query (kwargs) –
Optional query parameters to be sent to limit the servers being returned. Available parameters include:
- changes_since: A time/date stamp for when the server last changed
- status.
- image: An image resource or ID.
- flavor: A flavor resource or ID.
- name: Name of the server as a string. Can be queried with
- regular expressions. The regular expression ?name=bob returns both bob and bobb. If you must match on only bob, you can use a regular expression that matches the syntax of the underlying database server that is implemented for Compute, such as MySQL or PostgreSQL.
- status: Value of the status of the server so that you can filter
- on “ACTIVE” for example.
- host: Name of the host as a string.
- limit: Requests a specified page size of returned items from the
- query. Returns a number of items up to the specified limit value. Use the limit parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.
- marker: Specifies the ID of the last-seen item. Use the limit
- parameter to make an initial limited request and use the ID of the last-seen item from the response as the marker parameter value in a subsequent limited request.
Returns: A generator of server instances.
- details (bool) – When set to
-
update_server(server, **attrs)¶ Update a server
Parameters: server – Either the ID of a server or a Serverinstance.Attrs kwargs: The attributes to update on the server represented by server.Returns: The updated server Return type: Server
-
create_server_interface(server, **attrs)¶ Create a new server interface from attributes
Parameters: - server – The server can be either the ID of a server or a
Serverinstance that the interface belongs to. - attrs (dict) – Keyword arguments which will be used to create
a
ServerInterface, comprised of the properties on the ServerInterface class.
Returns: The results of server interface creation
Return type: - server – The server can be either the ID of a server or a
-
delete_server_interface(server_interface, server=None, ignore_missing=True)¶ Delete a server interface
Parameters: - server_interface – The value can be either the ID of a server interface or a
ServerInterfaceinstance. - server – This parameter need to be specified when ServerInterface
ID is given as value. It can be either the ID of a
server or a
Serverinstance that the interface belongs to. - ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the server interface does not exist. When set toTrue, no exception will be set when attempting to delete a nonexistent server interface.
Returns: None- server_interface – The value can be either the ID of a server interface or a
-
get_server_interface(server_interface, server=None)¶ Get a single server interface
Parameters: - server_interface – The value can be the ID of a server interface or a
ServerInterfaceinstance. - server – This parameter need to be specified when ServerInterface
ID is given as value. It can be either the ID of a
server or a
Serverinstance that the interface belongs to.
Returns: One
ServerInterfaceRaises: ResourceNotFoundwhen no resource can be found.- server_interface – The value can be the ID of a server interface or a
-
server_interfaces(server, **query)¶ Return a generator of server interfaces
Parameters: - server – The server can be either the ID of a server or a
Server. - **query (kwargs) – Optional query parameters to be sent to limit the resources being returned.
Returns: A generator of ServerInterface objects
Return type: - server – The server can be either the ID of a server or a
-
find_server_ip(name_or_id, ignore_missing=True)¶ Find a single server IP
Parameters: - name_or_id – The name or ID of a server IP.
- ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the resource does not exist. When set toTrue, None will be returned when attempting to find a nonexistent resource.
Returns: One
ServerIPor None
-
server_ips(**query)¶ Return a generator of server IPs
Parameters: **query (kwargs) – Optional query parameters to be sent to limit the resources being returned. Returns: A generator of ServerIP objects Return type: ServerIP
-
resize_server(server, flavor)¶ Resize a server
Parameters: - server – Either the ID of a server or a
Serverinstance. - falvor – The ID or name of the flavor used to resize the server.
Returns: None
- server – Either the ID of a server or a
-
confirm_resize_server(server)¶ Confirm a pending resize_server action
Parameters: server – Either the ID of a server or a Serverinstance.Returns: None
-
revert_resize_server(server)¶ Cancel and revert a pending resize_server action
Parameters: server – Either the ID of a server or a Serverinstance.Returns: None
-
rebuild_server(server, image, name=None, admin_password=None, **attrs)¶ Rebuild a server
Parameters: Returns: The rebuilt server
Return type:
-
availability_zones(**query)¶ Return a generator of availability zones
Parameters: **query (kwargs) – Optional query parameters to be sent to limit the resources being returned. Returns: A generator of availability zone Return type: :class:`~openstack.compute.v2.availability_zone. AvailabilityZone`
-
get_server_metadata(server, key=None)¶ Return a dictionary of metadata for a server
Parameters: - server – Either the ID of a server or a
ServerorServerDetailinstance. - key – An optional key to retrieve from the server’s metadata.
When no
keyis specified, all metadata is retrieved.
Returns: A dictionary of the server’s metadata. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of a server or a
-
create_server_metadata(server, **metadata)¶ Create metadata for a server
Parameters: - server – Either the ID of a server or a
ServerorServerDetailinstance. - metadata (kwargs) – Key/value pairs to be added as metadata on the server. All keys and values are stored as Unicode.
Returns: A dictionary of the metadata that was created on the server. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of a server or a
-
replace_server_metadata(server, **metadata)¶ Replace metadata for a server
Parameters: - server – Either the ID of a server or a
ServerorServerDetailinstance. - metadata (kwargs) – Key/value pairs to be added as metadata on the server. Any other existing metadata is removed. All keys and values are stored as Unicode.
Returns: A dictionary of the metadata for the server. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of a server or a
-
update_server_metadata(server, **metadata)¶ Update metadata for a server
Parameters: - server – Either the ID of a server or a
ServerorServerDetailinstance. - metadata (kwargs) – Key/value pairs to be updated in the server’s metadata. No other metadata is modified by this call. All keys and values are stored as Unicode.
Returns: A dictionary of the metadata for the server. All keys and values are Unicode text.
Return type: dict
- server – Either the ID of a server or a
-
delete_server_metadata(server, key)¶ Delete metadata for a server
Parameters: - server – Either the ID of a server or a
ServerorServerDetailinstance. - key – The key to delete
Return type: None- server – Either the ID of a server or a
-
create_server_group(**attrs)¶ Create a new server group from attributes
Parameters: attrs (dict) – Keyword arguments which will be used to create a ServerGroup, comprised of the properties on the ServerGroup class.Returns: The results of server group creation Return type: ServerGroup
-
delete_server_group(server_group, ignore_missing=True)¶ Delete a server group
Parameters: - server_group – The value can be either the ID of a server group
or a
ServerGroupinstance. - ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the server group does not exist. When set toTrue, no exception will be set when attempting to delete a nonexistent server group.
Returns: None- server_group – The value can be either the ID of a server group
or a
-
find_server_group(name_or_id, ignore_missing=True)¶ Find a single server group
Parameters: - name_or_id – The name or ID of a server group.
- ignore_missing (bool) – When set to
FalseResourceNotFoundwill be raised when the resource does not exist. When set toTrue, None will be returned when attempting to find a nonexistent resource.
Returns: One
ServerGroupobject or None
-
get_server_group(server_group)¶ Get a single server group
Parameters: server_group – The value can be the ID of a server group or a ServerGroupinstance.Returns: A ServerGroupobject.Raises: ResourceNotFoundwhen no resource can be found.
-
server_groups(**query)¶ Return a generator of server groups
Parameters: **query (kwargs) – Optional query parameters to be sent to limit the resources being returned. Returns: A generator of ServerGroup objects Return type: ServerGroup
-
hypervisors(**query)¶ Return a generator of hypervisor
Returns: A generator of hypervisor Return type: class: ~openstack.compute.v2.hypervisor.Hypervisor
-
find_hypervisor(name_or_id, ignore_missing=True)¶ Find a hypervisor from name or id to get the corresponding info
Parameters: name_or_id – The name or id of a hypervisor Returns: One: class:~openstack.compute.v2.hypervisor.Hypervisor object or None
-
get_hypervisor(hypervisor)¶ Get a single hypervisor
Parameters: hypervisor – The value can be the ID of a hypervisor or a Hypervisorinstance.Returns: A Hypervisorobject.Raises: ResourceNotFoundwhen no resource can be found.
-