
While we should not start using this for cloning things in the gate yet, the opendev.org links provide for a nicer browsing experience already even though the service is in beta. Go ahead and swap our browsing links. While in there, remove some masakari references to github links to the source code. Masakari now publishes api docs to developer.openstack.org so there is no need to point people to source code for api docs. Change-Id: I14afa3476f9832ef433ec744e888348fc9a359e3
90 lines
2.6 KiB
ReStructuredText
90 lines
2.6 KiB
ReStructuredText
Using OpenStack Compute
|
||
=======================
|
||
|
||
Before working with the Compute service, you'll need to create a connection
|
||
to your OpenStack cloud by following the :doc:`connect` user guide. This will
|
||
provide you with the ``conn`` variable used in the examples below.
|
||
|
||
.. contents:: Table of Contents
|
||
:local:
|
||
|
||
The primary resource of the Compute service is the server.
|
||
|
||
List Servers
|
||
------------
|
||
|
||
A **server** is a virtual machine that provides access to a compute instance
|
||
being run by your cloud provider.
|
||
|
||
.. literalinclude:: ../examples/compute/list.py
|
||
:pyobject: list_servers
|
||
|
||
Full example: `compute resource list`_
|
||
|
||
List Images
|
||
-----------
|
||
|
||
An **image** is the operating system you want to use for your server.
|
||
|
||
.. literalinclude:: ../examples/compute/list.py
|
||
:pyobject: list_images
|
||
|
||
Full example: `compute resource list`_
|
||
|
||
List Flavors
|
||
------------
|
||
|
||
A **flavor** is the resource configuration for a server. Each flavor is a
|
||
unique combination of disk, memory, vCPUs, and network bandwidth.
|
||
|
||
.. literalinclude:: ../examples/compute/list.py
|
||
:pyobject: list_flavors
|
||
|
||
Full example: `compute resource list`_
|
||
|
||
List Networks
|
||
-------------
|
||
|
||
A **network** provides connectivity to servers.
|
||
|
||
.. literalinclude:: ../examples/network/list.py
|
||
:pyobject: list_networks
|
||
|
||
Full example: `network resource list`_
|
||
|
||
Create Key Pair
|
||
---------------
|
||
|
||
A **key pair** is the public key and private key of
|
||
`public–key cryptography`_. They are used to encrypt and decrypt login
|
||
information when connecting to your server.
|
||
|
||
.. literalinclude:: ../examples/compute/create.py
|
||
:pyobject: create_keypair
|
||
|
||
Full example: `compute resource create`_
|
||
|
||
Create Server
|
||
-------------
|
||
|
||
At minimum, a server requires a name, an image, a flavor, and a network on
|
||
creation. You can discover the names and IDs of these attributes by listing
|
||
them as above and then using the find methods to get the appropriate
|
||
resources.
|
||
|
||
Ideally you'll also create a server using a keypair so you can login to that
|
||
server with the private key.
|
||
|
||
Servers take time to boot so we call ``wait_for_server`` to wait
|
||
for it to become active.
|
||
|
||
.. literalinclude:: ../examples/compute/create.py
|
||
:pyobject: create_server
|
||
|
||
Full example: `compute resource create`_
|
||
|
||
.. _compute resource list: https://opendev.org/openstack/openstacksdk/src/branch/master/examples/compute/list.py
|
||
.. _network resource list: https://opendev.org/openstack/openstacksdk/src/branch/master/examples/network/list.py
|
||
.. _compute resource create: https://opendev.org/openstack/openstacksdk/src/branch/master/examples/compute/create.py
|
||
.. _public–key cryptography: https://en.wikipedia.org/wiki/Public-key_cryptography
|