Monty Taylor bb8b4bf5a5 Swap human-facing links to use opendev.org
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
2019-03-09 13:29:57 +00:00

90 lines
2.6 KiB
ReStructuredText
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

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
`publickey 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
.. _publickey cryptography: https://en.wikipedia.org/wiki/Public-key_cryptography