Removing registry spec from docs
* Rewords how we refer to to our 'reference' implementation of the registry API. glance-registry is an implementation detail of the main glance API, not an example of a community-driven API spec * Remove duplicate 'gettingstarted' information * Fixes bug 954554 Change-Id: I889f61a399c398897f2146b756b2c3c310847718
This commit is contained in:
parent
1615a1fc57
commit
6e2f39d69b
|
@ -55,11 +55,9 @@ like so:
|
||||||
What is a Registry Server?
|
What is a Registry Server?
|
||||||
==========================
|
==========================
|
||||||
|
|
||||||
A registry server is any service that publishes image metadata that conforms
|
A registry server is a service that publishes image metadata for internal
|
||||||
to the Glance Registry REST-ful API. Glance comes with a reference
|
consumption by the Glance API server. The Glance registry server uses a
|
||||||
implementation of a registry server called ``glance-registry``, but this is
|
SQL database for its metdata storage.
|
||||||
only a reference implementation that uses a SQL database for its metdata
|
|
||||||
storage.
|
|
||||||
|
|
||||||
What is a Store?
|
What is a Store?
|
||||||
================
|
================
|
||||||
|
|
|
@ -602,9 +602,8 @@ to be run via cron on a regular basis. See more about this executable in
|
||||||
Configuring the Glance Registry
|
Configuring the Glance Registry
|
||||||
-------------------------------
|
-------------------------------
|
||||||
|
|
||||||
Glance ships with a default, reference implementation registry server. There
|
There are a number of configuration options in Glance that control how
|
||||||
are a number of configuration options in Glance that control how this registry
|
this registry server operates. These configuration options are specified in the
|
||||||
server operates. These configuration options are specified in the
|
|
||||||
``glance-registry.conf`` config file in the section ``[DEFAULT]``.
|
``glance-registry.conf`` config file in the section ``[DEFAULT]``.
|
||||||
|
|
||||||
* ``sql_connection=CONNECTION_STRING`` (``--sql-connection`` when specified
|
* ``sql_connection=CONNECTION_STRING`` (``--sql-connection`` when specified
|
||||||
|
|
|
@ -24,13 +24,13 @@ Starting a server
|
||||||
-----------------
|
-----------------
|
||||||
|
|
||||||
There are two ways to start a Glance server (either the API server or the
|
There are two ways to start a Glance server (either the API server or the
|
||||||
reference implementation registry server that ships with Glance):
|
registry server):
|
||||||
|
|
||||||
* Manually calling the server program
|
* Manually calling the server program
|
||||||
|
|
||||||
* Using the ``glance-control`` server daemon wrapper program
|
* Using the ``glance-control`` server daemon wrapper program
|
||||||
|
|
||||||
We recommend using the second way.
|
We recommend using the second method.
|
||||||
|
|
||||||
Manually starting the server
|
Manually starting the server
|
||||||
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
||||||
|
|
|
@ -1,83 +0,0 @@
|
||||||
..
|
|
||||||
Copyright 2010 OpenStack, LLC
|
|
||||||
All Rights Reserved.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
not use this file except in compliance with the License. You may obtain
|
|
||||||
a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
License for the specific language governing permissions and limitations
|
|
||||||
under the License.
|
|
||||||
|
|
||||||
Quick Guide to Getting Started with Glance
|
|
||||||
==========================================
|
|
||||||
|
|
||||||
Glance is a server that provides the following services:
|
|
||||||
|
|
||||||
* Ability to store and retrieve virtual machine images
|
|
||||||
* Ability to store and retrieve metadata about these virtual machine images
|
|
||||||
* FUTURE: Convert a virtual machine image from one format to another
|
|
||||||
* FUTURE: Help caching proxies such as Varnish or Squid cache machine images
|
|
||||||
|
|
||||||
Communication with Glance occurs via a REST-like HTTP interface.
|
|
||||||
|
|
||||||
However, Glance includes a :doc:`Client <client>` class that makes working with Glance
|
|
||||||
easy and straightforward.
|
|
||||||
|
|
||||||
In the Cactus release, there will be also command-line tools for
|
|
||||||
interacting with Glance.
|
|
||||||
|
|
||||||
Overview of Glance Architecture
|
|
||||||
-------------------------------
|
|
||||||
|
|
||||||
There are two main parts to Glance's architecture:
|
|
||||||
|
|
||||||
* Glance API server
|
|
||||||
* Glance Registry server(s)
|
|
||||||
|
|
||||||
Glance API Server
|
|
||||||
*****************
|
|
||||||
|
|
||||||
The API server is the main interface for Glance. It routes requests from
|
|
||||||
clients to registries of image metadata and to its **backend stores**, which
|
|
||||||
are the mechanisms by which Glance actually saves incoming virtual machine
|
|
||||||
images.
|
|
||||||
|
|
||||||
The backend stores that Glance can work with are as follows:
|
|
||||||
|
|
||||||
* **Swift**
|
|
||||||
|
|
||||||
Swift is the highly-available object storage project in OpenStack. More
|
|
||||||
information can be found about Swift `here <http://swift.openstack.org>`_.
|
|
||||||
|
|
||||||
* **Filesystem**
|
|
||||||
|
|
||||||
The default backend that Glance uses to store virtual machine images
|
|
||||||
is the filesystem backend. This simple backend writes image files to the
|
|
||||||
local filesystem.
|
|
||||||
|
|
||||||
* **S3**
|
|
||||||
|
|
||||||
This backend allows Glance to store virtual machine images in Amazon's
|
|
||||||
S3 service.
|
|
||||||
|
|
||||||
* **HTTP**
|
|
||||||
|
|
||||||
Glance can read virtual machine images that are available via
|
|
||||||
HTTP somewhere on the Internet. This store is **readonly**
|
|
||||||
|
|
||||||
Glance Registry Servers
|
|
||||||
***********************
|
|
||||||
|
|
||||||
Glance registry servers are servers that conform to the Glance Registry API.
|
|
||||||
Glance ships with a reference implementation of a registry server that
|
|
||||||
complies with this API (``glance-registry``).
|
|
||||||
|
|
||||||
For more details on Glance's architecture see :doc:`here <architecture>`. For
|
|
||||||
more information on what a Glance registry server is, see
|
|
||||||
:doc:`here <registries>`.
|
|
|
@ -48,7 +48,6 @@ Concepts
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
identifiers
|
identifiers
|
||||||
registries
|
|
||||||
statuses
|
statuses
|
||||||
formats
|
formats
|
||||||
|
|
||||||
|
@ -58,7 +57,6 @@ Using Glance
|
||||||
.. toctree::
|
.. toctree::
|
||||||
:maxdepth: 1
|
:maxdepth: 1
|
||||||
|
|
||||||
gettingstarted
|
|
||||||
installing
|
installing
|
||||||
controllingservers
|
controllingservers
|
||||||
configuring
|
configuring
|
||||||
|
|
|
@ -21,8 +21,8 @@ SYNOPSIS
|
||||||
DESCRIPTION
|
DESCRIPTION
|
||||||
===========
|
===========
|
||||||
|
|
||||||
glance-registry is the reference implementation of a server daemon that serves
|
glance-registry is a server daemon that serves image metadata through a
|
||||||
image metadata based on the Glance Registry REST-like API.
|
REST-like API.
|
||||||
|
|
||||||
OPTIONS
|
OPTIONS
|
||||||
=======
|
=======
|
||||||
|
|
|
@ -1,138 +0,0 @@
|
||||||
..
|
|
||||||
Copyright 2010 OpenStack, LLC
|
|
||||||
All Rights Reserved.
|
|
||||||
|
|
||||||
Licensed under the Apache License, Version 2.0 (the "License"); you may
|
|
||||||
not use this file except in compliance with the License. You may obtain
|
|
||||||
a copy of the License at
|
|
||||||
|
|
||||||
http://www.apache.org/licenses/LICENSE-2.0
|
|
||||||
|
|
||||||
Unless required by applicable law or agreed to in writing, software
|
|
||||||
distributed under the License is distributed on an "AS IS" BASIS, WITHOUT
|
|
||||||
WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the
|
|
||||||
License for the specific language governing permissions and limitations
|
|
||||||
under the License.
|
|
||||||
|
|
||||||
Image Registries
|
|
||||||
================
|
|
||||||
|
|
||||||
Image metadata made available through Glance can be stored in image
|
|
||||||
`registries`. Image registries are any web service that adheres to the
|
|
||||||
Glance REST-like API for image metadata.
|
|
||||||
|
|
||||||
Glance comes with a server program ``glance-registry`` that acts
|
|
||||||
as a reference implementation of a Glance Registry.
|
|
||||||
|
|
||||||
Please see the document :doc:`on Controlling Servers <controllingservers>`
|
|
||||||
for more information on starting up the Glance registry server that ships
|
|
||||||
with Glance.
|
|
||||||
|
|
||||||
Glance Registry API
|
|
||||||
-------------------
|
|
||||||
|
|
||||||
Any web service that publishes an API that conforms to the following
|
|
||||||
REST-like API specification can be used by Glance as a registry.
|
|
||||||
|
|
||||||
API in Summary
|
|
||||||
**************
|
|
||||||
|
|
||||||
The following is a brief description of the Glance API::
|
|
||||||
|
|
||||||
GET /images Return brief information about public images
|
|
||||||
GET /images/detail Return detailed information about public images
|
|
||||||
GET /images/<ID> Return metadata about an image in HTTP headers
|
|
||||||
POST /images Register metadata about a new image
|
|
||||||
PUT /images/<ID> Update metadata about an existing image
|
|
||||||
DELETE /images/<ID> Remove an image's metadata from the registry
|
|
||||||
|
|
||||||
Filtering Images Returned via ``GET /images`` and ``GET /images/detail``
|
|
||||||
------------------------------------------------------------------------
|
|
||||||
|
|
||||||
Both the ``GET /images`` and ``GET /images/detail`` requests take query
|
|
||||||
parameters that serve to filter the returned list of images. The following
|
|
||||||
list details these query parameters.
|
|
||||||
|
|
||||||
* ``name=NAME``
|
|
||||||
|
|
||||||
Filters images having a ``name`` attribute matching ``NAME``.
|
|
||||||
|
|
||||||
* ``container_format=FORMAT``
|
|
||||||
|
|
||||||
Filters images having a ``container_format`` attribute matching ``FORMAT``
|
|
||||||
|
|
||||||
For more information, see :doc:`About Disk and Container Formats <formats>`
|
|
||||||
|
|
||||||
* ``disk_format=FORMAT``
|
|
||||||
|
|
||||||
Filters images having a ``disk_format`` attribute matching ``FORMAT``
|
|
||||||
|
|
||||||
For more information, see :doc:`About Disk and Container Formats <formats>`
|
|
||||||
|
|
||||||
* ``status=STATUS``
|
|
||||||
|
|
||||||
Filters images having a ``status`` attribute matching ``STATUS``
|
|
||||||
|
|
||||||
For more information, see :doc:`About Image Statuses <statuses>`
|
|
||||||
|
|
||||||
* ``size_min=BYTES``
|
|
||||||
|
|
||||||
Filters images having a ``size`` attribute greater than or equal to ``BYTES``
|
|
||||||
|
|
||||||
* ``size_max=BYTES``
|
|
||||||
|
|
||||||
Filters images having a ``size`` attribute less than or equal to ``BYTES``
|
|
||||||
|
|
||||||
These two resources also accept sort parameters:
|
|
||||||
|
|
||||||
* ``sort_key=KEY``
|
|
||||||
|
|
||||||
Results will be ordered by the specified image attribute ``KEY``. Accepted
|
|
||||||
values include ``id``, ``name``, ``status``, ``disk_format``,
|
|
||||||
``container_format``, ``size``, ``created_at`` (default) and ``updated_at``.
|
|
||||||
|
|
||||||
* ``sort_dir=DIR``
|
|
||||||
|
|
||||||
Results will be sorted in the direction ``DIR``. Accepted values are ``asc``
|
|
||||||
for ascending or ``desc`` (default) for descending.
|
|
||||||
|
|
||||||
|
|
||||||
``POST /images``
|
|
||||||
----------------
|
|
||||||
|
|
||||||
The body of the request will be a JSON-encoded set of data about
|
|
||||||
the image to add to the registry. It will be in the following format::
|
|
||||||
|
|
||||||
{'image':
|
|
||||||
{'id': <ID>|None,
|
|
||||||
'name': <NAME>,
|
|
||||||
'status': <STATUS>,
|
|
||||||
'disk_format': <DISK_FORMAT>,
|
|
||||||
'container_format': <CONTAINER_FORMAT>,
|
|
||||||
'properties': [ ... ]
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
The request shall validate the following conditions and return a
|
|
||||||
``400 Bad request`` when any of the conditions are not met:
|
|
||||||
|
|
||||||
* ``status`` must be non-empty, and must be one of **active**, **saving**,
|
|
||||||
**queued**, or **killed**
|
|
||||||
|
|
||||||
* ``disk_format`` must be non-empty, and must be one of **ari**, **aki**,
|
|
||||||
**ami**, **raw**, **iso**, **vhd**, **vdi**, **qcow2**, or **vmdk**
|
|
||||||
|
|
||||||
* ``container_format`` must be non-empty, and must be on of **ari**,
|
|
||||||
**aki**, **ami**, **bare**, or **ovf**
|
|
||||||
|
|
||||||
* If ``disk_format`` *or* ``container_format`` is **ari**, **aki**,
|
|
||||||
**ami**, then *both* ``disk_format`` and ``container_format`` must be
|
|
||||||
the same.
|
|
||||||
|
|
||||||
* ``id`` must be a uuid in hexadecimal string notation
|
|
||||||
(i.e. '71c675ab-d94f-49cd-a114-e12490b328d9')
|
|
||||||
|
|
||||||
Examples
|
|
||||||
********
|
|
||||||
|
|
||||||
.. todo:: Complete examples for Glance registry API
|
|
Loading…
Reference in New Issue