2011-02-04 18:59:52 -05:00
|
|
|
..
|
|
|
|
Copyright 2011 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.
|
|
|
|
|
|
|
|
Configuring Glance
|
|
|
|
==================
|
|
|
|
|
2011-05-09 14:55:46 -04:00
|
|
|
Glance has a number of options that you can use to configure the Glance API
|
|
|
|
server, the Glance Registry server, and the various storage backends that
|
|
|
|
Glance can use to store images.
|
|
|
|
|
|
|
|
Most configuration is done via configuration files, with the Glance API
|
|
|
|
server and Glance Registry server using separate configuration files.
|
|
|
|
|
|
|
|
When starting up a Glance server, you can specify the configuration file to
|
|
|
|
use (see `the documentation on controller Glance servers <controllingservers>`_).
|
|
|
|
If you do **not** specify a configuration file, Glance will look in the following
|
|
|
|
directories for a configuration file, in order:
|
|
|
|
|
|
|
|
* ``$CWD``
|
|
|
|
* ``~/.glance``
|
|
|
|
* ``~/``
|
|
|
|
* ``/etc/glance``
|
|
|
|
* ``/etc``
|
|
|
|
|
|
|
|
The Glance API server configuration file should be named ``glance-api.conf``.
|
|
|
|
Similarly, the Glance Registry server configuration file should be named
|
|
|
|
``glance-registry.conf``. If you installed Glance via your operating system's
|
|
|
|
package management system, it is likely that you will have sample
|
|
|
|
configuration files installed in ``/etc/glance``.
|
|
|
|
|
2011-04-04 13:00:26 -04:00
|
|
|
In addition to this documentation page, you can check the
|
2011-05-09 14:55:46 -04:00
|
|
|
``etc/glance-api.conf`` and ``etc/glance-registry.conf`` sample configuration
|
|
|
|
files distributed with Glance for example configuration files for each server
|
|
|
|
application with detailed comments on what each options does.
|
2011-04-04 13:00:26 -04:00
|
|
|
|
|
|
|
Common Configuration Options in Glance
|
|
|
|
--------------------------------------
|
|
|
|
|
|
|
|
Glance has a few command-line options that are common to all Glance programs:
|
|
|
|
|
|
|
|
* ``--verbose``
|
|
|
|
|
|
|
|
Optional. Default: ``False``
|
|
|
|
|
|
|
|
Can be specified on the command line and in configuration files.
|
|
|
|
|
|
|
|
Turns on the INFO level in logging and prints more verbose command-line
|
|
|
|
interface printouts.
|
|
|
|
|
|
|
|
* ``--debug``
|
|
|
|
|
|
|
|
Optional. Default: ``False``
|
|
|
|
|
|
|
|
Can be specified on the command line and in configuration files.
|
|
|
|
|
|
|
|
Turns on the DEBUG level in logging.
|
|
|
|
|
|
|
|
* ``--config-file=PATH``
|
|
|
|
|
|
|
|
Optional. Default: ``None``
|
|
|
|
|
|
|
|
Specified on the command line only.
|
|
|
|
|
|
|
|
Takes a path to a configuration file to use when running the program. If this
|
|
|
|
CLI option is not specified, then we check to see if the first argument is a
|
|
|
|
file. If it is, then we try to use that as the configuration file. If there is
|
|
|
|
no file or there were no arguments, we search for a configuration file in the
|
|
|
|
following order:
|
|
|
|
|
2011-05-10 12:26:29 -04:00
|
|
|
* ``$CWD``
|
|
|
|
* ``~/.glance``
|
|
|
|
* ``~/``
|
|
|
|
* ``/etc/glance``
|
|
|
|
* ``/etc``
|
|
|
|
|
|
|
|
The filename that is searched for depends on the server application name. So,
|
|
|
|
if you are starting up the API server, ``glance-api.conf`` is searched for,
|
|
|
|
otherwise ``glance-registry.conf``.
|
2011-03-08 16:52:38 -05:00
|
|
|
|
|
|
|
Configuring Logging in Glance
|
|
|
|
-----------------------------
|
|
|
|
|
|
|
|
There are a number of configuration options in Glance that control how Glance
|
2011-04-26 16:10:33 -07:00
|
|
|
servers log messages.
|
2011-03-08 16:52:38 -05:00
|
|
|
|
|
|
|
* ``--log-config=PATH``
|
|
|
|
|
|
|
|
Optional. Default: ``None``
|
|
|
|
|
|
|
|
Specified on the command line only.
|
|
|
|
|
|
|
|
Takes a path to a configuration file to use for configuring logging.
|
|
|
|
|
2011-05-11 19:52:06 -04:00
|
|
|
Logging Options Available Only in Configuration Files
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
2011-03-08 16:52:38 -05:00
|
|
|
|
2011-05-11 19:52:06 -04:00
|
|
|
You will want to place the different logging options in the **[DEFAULT]** section
|
|
|
|
in your application configuration file. As an example, you might do the following
|
|
|
|
for the API server, in a configuration file called ``etc/glance-api.conf``::
|
2011-03-08 16:52:38 -05:00
|
|
|
|
2011-05-11 19:52:06 -04:00
|
|
|
[DEFAULT]
|
2011-04-26 16:10:33 -07:00
|
|
|
log_file = /var/log/glance/api.log
|
2011-03-08 16:52:38 -05:00
|
|
|
|
2011-04-26 16:10:33 -07:00
|
|
|
* ``log_file``
|
2011-03-08 16:52:38 -05:00
|
|
|
|
|
|
|
The filepath of the file to use for logging messages from Glance's servers. If
|
|
|
|
missing, the default is to output messages to ``stdout``, so if you are running
|
|
|
|
Glance servers in a daemon mode (using ``glance-control``) you should make
|
|
|
|
sure that the ``log_file`` option is set appropriately.
|
|
|
|
|
2011-04-26 16:10:33 -07:00
|
|
|
* ``log_dir``
|
2011-03-08 16:52:38 -05:00
|
|
|
|
|
|
|
The filepath of the directory to use for log files. If not specified (the default)
|
|
|
|
the ``log_file`` is used as an absolute filepath.
|
|
|
|
|
2011-04-26 16:10:33 -07:00
|
|
|
* ``log_date_format``
|
2011-03-08 16:52:38 -05:00
|
|
|
|
|
|
|
The format string for timestamps in the log output.
|
|
|
|
|
|
|
|
Defaults to ``%Y-%m-%d %H:%M:%S``. See the
|
|
|
|
`logging module <http://docs.python.org/library/logging.html>`_ documentation for
|
|
|
|
more information on setting this format string.
|
2011-04-04 13:00:26 -04:00
|
|
|
|
|
|
|
Configuring Glance Storage Backends
|
|
|
|
-----------------------------------
|
|
|
|
|
|
|
|
There are a number of configuration options in Glance that control how Glance
|
|
|
|
stores disk images. These configuration options are specified in the
|
2011-05-09 14:55:46 -04:00
|
|
|
``glance-api.conf`` config file in the section ``[DEFAULT]``.
|
2011-04-04 13:00:26 -04:00
|
|
|
|
|
|
|
* ``default_store=STORE``
|
|
|
|
|
|
|
|
Optional. Default: ``file``
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
Sets the storage backend to use by default when storing images in Glance.
|
|
|
|
Available options for this option are (``file``, ``swift``, or ``s3``).
|
|
|
|
|
2011-07-25 13:45:35 -04:00
|
|
|
Configuring the Filesystem Storage Backend
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2011-04-04 13:00:26 -04:00
|
|
|
* ``filesystem_store_datadir=PATH``
|
|
|
|
|
|
|
|
Optional. Default: ``/var/lib/glance/images/``
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the filesystem storage backend.`
|
|
|
|
|
|
|
|
Sets the path where the filesystem storage backend write disk images. Note that
|
|
|
|
the filesystem storage backend will attempt to create this directory if it does
|
|
|
|
not exist. Ensure that the user that ``glance-api`` runs under has write
|
|
|
|
permissions to this directory.
|
|
|
|
|
2011-07-25 13:45:35 -04:00
|
|
|
Configuring the Swift Storage Backend
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
2011-04-04 13:00:26 -04:00
|
|
|
* ``swift_store_auth_address=URL``
|
|
|
|
|
|
|
|
Required when using the Swift storage backend.
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the Swift storage backend.`
|
|
|
|
|
|
|
|
Sets the authentication URL supplied to Swift when making calls to its storage
|
|
|
|
system. For more information about the Swift authentication system, please
|
|
|
|
see the `Swift auth <http://swift.openstack.org/overview_auth.html>`_
|
|
|
|
documentation and the
|
|
|
|
`overview of Swift authentication <http://docs.openstack.org/openstack-object-storage/admin/content/ch02s02.html>`_.
|
|
|
|
|
|
|
|
* ``swift_store_user=USER``
|
|
|
|
|
|
|
|
Required when using the Swift storage backend.
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the Swift storage backend.`
|
|
|
|
|
|
|
|
Sets the user to authenticate against the ``swift_store_auth_address`` with.
|
|
|
|
|
|
|
|
* ``swift_store_key=KEY``
|
|
|
|
|
|
|
|
Required when using the Swift storage backend.
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the Swift storage backend.`
|
|
|
|
|
|
|
|
Sets the authentication key to authenticate against the
|
|
|
|
``swift_store_auth_address`` with for the user ``swift_store_user``.
|
|
|
|
|
|
|
|
* ``swift_store_container=CONTAINER``
|
|
|
|
|
|
|
|
Optional. Default: ``glance``
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the Swift storage backend.`
|
|
|
|
|
|
|
|
Sets the name of the container to use for Glance images in Swift.
|
|
|
|
|
|
|
|
* ``swift_store_create_container_on_put``
|
|
|
|
|
|
|
|
Optional. Default: ``False``
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the Swift storage backend.`
|
|
|
|
|
|
|
|
If true, Glance will attempt to create the container ``swift_store_container``
|
|
|
|
if it does not exist.
|
|
|
|
|
2011-07-25 13:45:35 -04:00
|
|
|
Configuring the S3 Storage Backend
|
|
|
|
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
|
|
|
|
|
|
|
|
* ``s3_store_host=URL``
|
|
|
|
|
|
|
|
Required when using the S3 storage backend.
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the S3 storage backend.`
|
|
|
|
|
|
|
|
Default: s3.amazonaws.com
|
|
|
|
|
|
|
|
Sets the main service URL supplied to S3 when making calls to its storage
|
|
|
|
system. For more information about the S3 authentication system, please
|
|
|
|
see the `S3 documentation <http://aws.amazon.com/documentation/s3/>`_
|
|
|
|
|
|
|
|
* ``s3_store_access_key=ACCESS_KEY``
|
|
|
|
|
|
|
|
Required when using the S3 storage backend.
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the S3 storage backend.`
|
|
|
|
|
|
|
|
Sets the access key to authenticate against the ``s3_store_host`` with.
|
|
|
|
|
|
|
|
You should set this to your 20-character Amazon AWS access key.
|
|
|
|
|
|
|
|
* ``s3_store_secret_key=SECRET_KEY``
|
|
|
|
|
|
|
|
Required when using the S3 storage backend.
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the S3 storage backend.`
|
|
|
|
|
|
|
|
Sets the secret key to authenticate against the
|
|
|
|
``s3_store_host`` with for the access key ``s3_store_access_key``.
|
|
|
|
|
|
|
|
You should set this to your 40-character Amazon AWS secret key.
|
|
|
|
|
|
|
|
* ``s3_store_bucket=BUCKET``
|
|
|
|
|
|
|
|
Required when using the S3 storage backend.
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the S3 storage backend.`
|
|
|
|
|
|
|
|
Sets the name of the bucket to use for Glance images in S3.
|
|
|
|
|
|
|
|
Note that the namespace for S3 buckets is **global**, and
|
|
|
|
therefore you must use a name for the bucket that is unique. It
|
|
|
|
is recommended that you use a combination of your AWS access key,
|
2011-07-26 10:26:19 -04:00
|
|
|
**lowercased** with "glance".
|
2011-07-25 13:45:35 -04:00
|
|
|
|
|
|
|
For instance if your Amazon AWS access key is:
|
|
|
|
|
|
|
|
``ABCDEFGHIJKLMNOPQRST``
|
|
|
|
|
|
|
|
then make your bucket value be:
|
|
|
|
|
2011-07-26 10:26:19 -04:00
|
|
|
``abcdefghijklmnopqrstglance``
|
2011-07-25 13:45:35 -04:00
|
|
|
|
|
|
|
* ``s3_store_create_bucket_on_put``
|
|
|
|
|
|
|
|
Optional. Default: ``False``
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
`This option is specific to the S3 storage backend.`
|
|
|
|
|
|
|
|
If true, Glance will attempt to create the bucket ``s3_store_bucket``
|
|
|
|
if it does not exist.
|
|
|
|
|
2011-04-04 13:00:26 -04:00
|
|
|
Configuring the Glance Registry
|
|
|
|
-------------------------------
|
|
|
|
|
|
|
|
Glance ships with a default, reference implementation registry server. There
|
|
|
|
are a number of configuration options in Glance that control how this registry
|
|
|
|
server operates. These configuration options are specified in the
|
2011-05-09 14:55:46 -04:00
|
|
|
``glance-registry.conf`` config file in the section ``[DEFAULT]``.
|
2011-04-04 13:00:26 -04:00
|
|
|
|
|
|
|
* ``sql_connection=CONNECTION_STRING`` (``--sql-connection`` when specified
|
|
|
|
on command line)
|
|
|
|
|
|
|
|
Optional. Default: ``None``
|
|
|
|
|
|
|
|
Can be specified in configuration files. Can also be specified on the
|
|
|
|
command-line for the ``glance-manage`` program.
|
|
|
|
|
|
|
|
Sets the SQLAlchemy connection string to use when connecting to the registry
|
|
|
|
database. Please see the documentation for
|
|
|
|
`SQLAlchemy connection strings <http://www.sqlalchemy.org/docs/05/reference/sqlalchemy/connections.html>`_
|
|
|
|
online.
|
|
|
|
|
|
|
|
* ``sql_timeout=SECONDS``
|
|
|
|
on command line)
|
|
|
|
|
|
|
|
Optional. Default: ``3600``
|
|
|
|
|
|
|
|
Can only be specified in configuration files.
|
|
|
|
|
|
|
|
Sets the number of seconds after which SQLAlchemy should reconnect to the
|
|
|
|
datastore if no activity has been made on the connection.
|
2011-07-22 15:43:44 +00:00
|
|
|
|
|
|
|
Configuring Notifications
|
|
|
|
-------------------------
|
|
|
|
|
|
|
|
Glance can optionally generate notifications to be logged or sent to
|
|
|
|
a RabbitMQ queue. The configuration options are specified in the
|
|
|
|
``glance-api.conf`` config file in the section ``[DEFAULT]``.
|
|
|
|
|
|
|
|
* ``notifier_strategy``
|
|
|
|
|
|
|
|
Optional. Default: ``noop``
|
|
|
|
|
|
|
|
Sets the strategy used for notifications. Options are ``logging``,
|
|
|
|
``rabbit`` and ``noop``.
|
|
|
|
For more information :doc:`Glance notifications <notifications>`
|
|
|
|
|
|
|
|
* ``rabbit_host``
|
|
|
|
|
|
|
|
Optional. Default: ``localhost``
|
|
|
|
|
|
|
|
Host to connect to when using ``rabbit`` strategy.
|
|
|
|
|
|
|
|
* ``rabbit_port``
|
|
|
|
|
|
|
|
Optional. Default: ``5672``
|
|
|
|
|
|
|
|
Port to connect to when using ``rabbit`` strategy.
|
|
|
|
|
|
|
|
* ``rabbit_use_ssl``
|
|
|
|
|
|
|
|
Optional. Default: ``false``
|
|
|
|
|
|
|
|
Boolean to use SSL for connecting when using ``rabbit`` strategy.
|
|
|
|
|
|
|
|
* ``rabbit_userid``
|
|
|
|
|
|
|
|
Optional. Default: ``guest``
|
|
|
|
|
|
|
|
Userid to use for connection when using ``rabbit`` strategy.
|
|
|
|
|
|
|
|
* ``rabbit_password``
|
|
|
|
|
|
|
|
Optional. Default: ``guest``
|
|
|
|
|
|
|
|
Password to use for connection when using ``rabbit`` strategy.
|
|
|
|
|
|
|
|
* ``rabbit_virtual_host``
|
|
|
|
|
|
|
|
Optional. Default: ``/``
|
|
|
|
|
|
|
|
Virtual host to use for connection when using ``rabbit`` strategy.
|
|
|
|
|
|
|
|
* ``rabbit_notification_topic``
|
|
|
|
|
|
|
|
Optional. Default: ``glance_notifications``
|
|
|
|
|
|
|
|
Topic to use for connection when using ``rabbit`` strategy.
|