api-site/api-ref/src/docbkx/api-reference.xml

330 lines
14 KiB
XML

<?xml version="1.0" encoding="UTF-8"?>
<book xmlns="http://docbook.org/ns/docbook"
xmlns:xi="http://www.w3.org/2001/XInclude"
xmlns:xlink="http://www.w3.org/1999/xlink"
xmlns:wadl="http://wadl.dev.java.net/2009/02"
version="5.0-extension RackBook-2.0" xml:id="api.openstack.org">
<info>
<title>OpenStack APIs</title>
<copyright>
<year>2010-2012</year>
</copyright>
<legalnotice role="apache2">
<para/>
</legalnotice>
</info>
<preface xml:id="Overview">
<title>OpenStack API Reference</title>
<para>The OpenStack system has several key projects that are
separate installations but can work together depending on your
cloud needs: OpenStack Compute, OpenStack Object Storage,
OpenStack Identity Service, and OpenStack Image Service.</para>
<para>This page covers the basics for working with your OpenStack
cloud through the Compute API and Image API after authorizing
with the Identity Service API. You can build a cloud by
launching images and assigning metadata to instances, all
through an API. See the <link
xlink:href="http://docs.openstack.org/api/quick-start/content/"
>API Quick Start Guide</link> for details about using the APIs
referenced here, and go to <link
xlink:href="http://docs.openstack.org/api/"
>docs.openstack.org/api</link> for specifications of each API.
</para>
</preface>
<chapter xml:id="identity">
<title>Identity</title>
<para>With the Identity API, you obtain a token that lasts 24
hours so you can gain access to the Compute API. The version of
the Identity API is 2.0.</para>
<wadl:resources xmlns:wadl="http://wadl.dev.java.net/2009/02">
<wadl:resource
href="../wadls/identity-api/src/service/identity.wadl#tokens">
<wadl:method href="#authenticate"/>
</wadl:resource>
<wadl:resource
href="../wadls/identity-api/src/service/identity.wadl#tenants">
<wadl:method href="#listTenants"/>
</wadl:resource>
</wadl:resources>
</chapter>
<chapter xml:id="compute">
<title>Compute</title>
<para>With the Compute API, you launch virtual machines based on
the images uploaded to the system. You can reboot the server
when needed, resize it larger or smaller, and connect to the
server securely through SSH once it is started. The v1.1 API is
identical to the v2 API.</para>
<wadl:resources href="../wadls/compute-api/src/os-compute-2.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</chapter>
<chapter xml:id="compute-ext">
<title>Compute API Extensions</title>
<para>An extension adds capabilities to an API beyond those
defined in the core API. The introduction of new features, MIME
types, actions, states, headers, parameters, and resources can
all be accomplished by means of extensions to the core API. You
can query the Compute API to find out which extensions are
available with a GET request to v2/extensions.</para>
<section xml:id="ext-os-createserverext">
<title>Server - Extended Create</title>
<para>Provides extra information when creating a server.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-createserverext.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-console-output">
<title>Server Console Output</title>
<para>Gets the output from the console log for a server.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-console-output.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-server-diagnostics">
<title>Server Diagnostics</title>
<para>Retrieves the usage data for a server.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-diagnostics.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-consoles">
<title>Server VNC Console</title>
<para>Accesses a VNC console for a specific server.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-consoles.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-server-start-stop">
<title>Server Start/Stop</title>
<para>Starts and stops a server.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-server-start-stop.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-rescue">
<title>Server Rescue</title>
<para>Rescues and unrescues a server.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-rescue.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-admin-actions">
<title>Admin Actions</title>
<para>Permits admin to do actions to a server.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-admin-actions.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-disk-config">
<title>Disk Config</title>
<para>Extends servers and images with a diskConfig
attribute.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-disk-config.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-deferred-delete">
<title>Server Force Delete/Restore</title>
<para> When Nova is deployed with deferred delete on, restores
or forces the deletion of a server. </para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-deferred-delete.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-extended-status">
<title>Extended Instance Status</title>
<para>Adds vm_state, task_state, and power_state to detailed
server responses.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-extended-status.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-extended-server-attributes">
<title>Extended Server Attributes</title>
<para>Adds additional metadata to servers detail and show
response.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-extended-server-attributes.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-floating-ip-addresses">
<title>Floating IPs</title>
<para> The Floating IPs extension enables assigning and
allocation of floating IP addresses to instances running in an
OpenStack cloud. </para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-floating-ips.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-floating-ip-dns">
<title>Floating IP DNS</title>
<para> The Floating IP DNS extension provides an interface for
managing DNS records associated with IP addresses allocated by
the Floating Ips extension. Requests are dispatched to a DNS
driver selected at startup. </para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-floating-ip-dns.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-floating-ip-pools">
<title>Floating IP Pools</title>
<para>Manages groups of Floating IPs.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-floating-ip-pools.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-aggregates">
<title>Host Aggregates</title>
<para> Enables the creation and management of host aggregates.
An aggregate allows assigning metadata to groups of compute
nodes. Aggregates are only visible to the cloud provider. </para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-aggregates.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-cloudpipe">
<title>Cloudpipe</title>
<para>Manages virtual vpns for projects.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-cloudpipe.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-flavormanage">
<title>Flavor Management</title>
<para>Creates and deletes flavors.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-flavormanage.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="os-flavorextradata">
<title>Flavors - Extra Data</title>
<para> Allows extra attributes to be returned with flavor
objects. This includes 'swap', 'rxtx_factor' and
'OS-FLV-EXT-DATA:ephemeral'. </para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-flavorextradata.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-keypairs">
<title>Keypairs</title>
<para>Generates, imports, and deletes SSH keys.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-keypairs.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-hosts">
<title>Hosts</title>
<para>Manages physical hosts.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-hosts.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-hypervisors">
<title>Hypervisors</title>
<para>
The Hypervisors extension enables you to view extra statistical information
from the machine hosting the hypervisor through the hypervisor's
API (XenAPI or KVM/libvirt).
</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-hypervisors.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-networks">
<title>Networks</title>
<para> The Networks extension allows you to view and delete
networks. It also provides an action to disassociate a network
from a project if you are using vlan mode. </para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-networks.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-scheduler-hints">
<title>Scheduler Hints</title>
<para> Provides information directly to the scheduler when
creating a server. </para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-scheduler-hints.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-security-groups">
<title>Security Groups</title>
<para>Creates, modifies, and deletes security groups and
rules.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-security-groups.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-simple-tenant-usage">
<title>Simple Usage</title>
<para>Reports stats on compute and storage resources.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-simple-tenant-usage.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-virtual-interfaces">
<title>Virtual Interfaces</title>
<para>Enables listing of Virtual Interfaces of running
instances.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-virtual-interfaces.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="ext-os-used-limits">
<title>Used Limits</title>
<para>Extends limits to include information on the usage of per
project limits. Such as information on how much of the ram or
instances quotas are currently being used.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-used-limits.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
</chapter>
<chapter xml:id="image">
<title>Image</title>
<para>Loads images for use at launch time by the Compute API. Some
cloud implementations do not expose this API and offer
pre-tested images only. You can also assign metadata to images
with this API. </para>
<wadl:resources href="../wadls/image-api/src/os-image-1.0.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</chapter>
<chapter xml:id="volumes">
<title>Volumes</title>
<section xml:id="volume">
<title>Volume</title>
<para>Allows you to manage volumes and snapshots that can be
used with the Compute API.</para>
<wadl:resources href="../wadls/volume-api/src/volume-api.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="os-volume">
<title>Volume Extension to the Compute API</title>
<para>Allows you to manage volumes and snapshots that can be
used with the Compute API through an extension to the API.</para>
<wadl:resources href="../wadls/compute-api/src/ext/os-volume.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
<section xml:id="volume_attachments">
<title>Volume Attachments</title>
<para>Enables you to attach volumes created through the volume
API to server instances. You can also list volume attachments
for a server instance, get volume details for a volume
attachment, and delete a volume attachment.</para>
<wadl:resources
href="../wadls/compute-api/src/ext/os-volume_attachments.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</section>
</chapter>
<chapter xml:id="object">
<title>Object Storage</title>
<para>Enables you to manage the accounts, containers and objects
in the object storage system with APIs.</para>
<wadl:resources
href="../wadls/object-api/src/os-object-api-1.0.wadl"
xmlns:wadl="http://wadl.dev.java.net/2009/02"/>
</chapter>
</book>