Add Zaqar to RST Config Reference

This patch adds Zaqar Config Reference in RST format to the official
repository.

Implements: blueprint zaqar-config-ref
Change-Id: I809b7fed10fef3048fabbdd9d867799026a865cb
This commit is contained in:
Eva Balycheva 2015-12-20 05:11:48 +03:00 committed by Andreas Jaeger
parent bbc38b417f
commit 85849a03df
28 changed files with 1038 additions and 1 deletions

View File

@ -23,7 +23,8 @@ Next release: Mitaka
Configuration Reference
-----------------------
* RST conversion completed
* RST conversion completed.
* Message service (zaqar) is documented.
HA Guide
--------

View File

@ -28,6 +28,7 @@ Contents
data-processing-service.rst
identity.rst
image-service.rst
messaging.rst
networking.rst
object-storage.rst
orchestration.rst

View File

@ -0,0 +1,88 @@
===============
Message service
===============
.. toctree::
:maxdepth: 1
messaging/zaqar-conf.rst
messaging/zaqar-api.rst
messaging/zaqar-logging.rst
messaging/zaqar-drivers.rst
messaging/zaqar-storage-drivers.rst
messaging/zaqar-transport-drivers.rst
messaging/zaqar-authentication.rst
messaging/zaqar-pooling.rst
messaging/zaqar-cache.rst
The Message service is multi-tenant, fast, reliable, and scalable. It allows
developers to share data between distributed application components performing
different tasks, without losing messages or requiring each component to be
always available.
The service features a RESTful API, which developers can use to send messages
between various components of their SaaS and mobile applications, by using a
variety of communication patterns.
Key features
~~~~~~~~~~~~
The Message service provides the following key features:
* Choice between two communication transports. Both with Identity service
support:
* Firewall-friendly, **HTTP-based RESTful API**. Many of today's developers
prefer a more web-friendly HTTP API. They value the simplicity and
transparency of the protocol, its firewall-friendly nature, and its huge
ecosystem of tools, load balancers and proxies. In addition, cloud
operators appreciate the scalability aspects of the REST architectural
style.
* **Websocket-based API** for persistent connections. Websocket protocol
provides communication over persistent connections. Unlike HTTP, where
new connections are opened for each request/response pair, Websocket can
transfer multiple requests/responses over single TCP connection. It saves
much network traffic and minimizes delays.
* Multi-tenant queues based on Identity service IDs.
* Support for several common patterns including event broadcasting, task
distribution, and point-to-point messaging.
* Component-based architecture with support for custom back ends and message
filters.
* Efficient reference implementation with an eye toward low latency and high
throughput (dependent on back end).
* Highly-available and horizontally scalable.
* Support for subscriptions to queues. Several notification types are
available:
* Email notifications.
* Webhook notifications.
* Websocket notifications.
Components
~~~~~~~~~~
The Message service contains the following components:
* **Transport back end**. The Message service requires the selection of a
transport specification responsible of the communication between the
endpoints. In addition to the base driver implementation, the Message
service also provides the means to add support for other transport
mechanisms. The default option is WSGI.
* **Storage back end**. The Message service depends on a storage engine for
message persistence. In addition to the base driver implementation, the
Message service also provides the means to add support for other storage
solutions. The default storage option is MongoDB.
To configure your Message service installation, you must define configuration
options in these files:
* ``zaqar.conf``. Contains most of the Message service configuration options.
Resides in the ``/etc/zaqar`` directory. If there is a file ``zaqar.conf``
in ``~/.zaqar`` directory, it is used instead of the one in ``/etc/zaqar``
directory.
* ``policy.json``. Contains RBAC policy for all actions. Only applies to API
v2. Resides in the ``/etc/zaqar`` directory. If there is a file
``policy.json`` in ``~/.zaqar`` directory, it is used instead of the one in
``/etc/zaqar`` directory. See :doc:`../policy-json-file`.

View File

@ -0,0 +1,31 @@
===========
API options
===========
The Message service has two APIs: the HTTP REST API for WSGI transport driver,
and the Websocket API for Websocket transport driver. The Message service can
use only one transport driver at the same time. See :doc:`zaqar-drivers` for
driver options.
The functionality and behavior of the APIs are defined by API versions. For
example, the Websocket API v2 acts the same as the HTTP REST API v2. For now
there are v1, v1.1 and v2 versions of HTTP REST API and only v2 version of
Websocket API.
Permission control options in each API version:
* The v1 does not have any permission options.
* The v1.1 has only ``admin_mode`` option which controls the global
permission to access the pools and flavors functionality.
* The v2 has only:
* RBAC policy options: ``policy_default_rule``, ``policy_dirs``,
``policy_file`` which controls the permissions to access each type of
functionality for different types of users. See :doc:`../policy-json-file`.
* ``secret_key`` option which defines a secret key to use for signing
special URLs. These are called pre-signed URLs and give temporary
permissions to outsiders of the system.
The Message service can be configured by changing the following options:
.. include:: ../tables/zaqar-api.rst

View File

@ -0,0 +1,42 @@
================================
Authentication and authorization
================================
All requests to the API may only be performed by an authenticated agent.
The preferred authentication system is the OpenStack Identity service,
code-named keystone.
Identity service authentication
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
To authenticate, an agent issues an authentication request to an Identity
service endpoint. In response to valid credentials, Identity service responds
with an authentication token and a service catalog that contains a list of
all services and endpoints available for the given token.
Multiple endpoints may be returned for Message service according to physical
locations and performance/availability characteristics of different
deployments.
Normally, Identity service middleware provides the ``X-Project-Id`` header
based on the authentication token submitted by the Message service client.
For this to work, clients must specify a valid authentication token in the
``X-Auth-Token`` header for each request to the Message service API. The API
validates authentication tokens against Identity service before servicing each
request.
No authentication
~~~~~~~~~~~~~~~~~
If authentication is not enabled, clients must provide the ``X-Project-Id``
header themselves.
Options
~~~~~~~
Configure the authentication and authorization strategy through these options:
.. include:: ../tables/zaqar-authentication.rst
.. include:: ../tables/zaqar-auth_token.rst

View File

@ -0,0 +1,7 @@
===============
Caching options
===============
The caching used in the Message service is determined by the following options:
.. include:: ../tables/zaqar-cache.rst

View File

@ -0,0 +1,90 @@
======================
Overview of zaqar.conf
======================
The ``zaqar.conf`` configuration file is an
`INI file format <https://en.wikipedia.org/wiki/INI_file>`_
as explained in :doc:`../config-format`.
This file is located in ``/etc/zaqar``. If there is a file ``zaqar.conf`` in
``~/.zaqar`` directory, it is used instead of the one in ``/etc/zaqar``
directory. When you manually install the Message service, you must generate
the zaqar.conf file using the config samples generator located inside Zaqar
installation directory and customize it according to your preferences.
To generate the sample configuration file ``zaqar/etc/zaqar.conf.sample``:
.. code-block:: console
# pip install tox
$ cd zaqar
$ tox -e genconfig
Where :samp:`{zaqar}` is your Message service installation directory.
Then copy Message service configuration sample to the directory ``/etc/zaqar``:
.. code-block:: console
# cp etc/zaqar.conf.sample /etc/zaqar/zaqar.conf
For a list of configuration options, see the tables in this guide.
.. important::
Do not specify quotes around configuration options.
Sections
~~~~~~~~
Configuration options are grouped by section. Message service configuration
file supports the following sections:
[DEFAULT]
Contains most configuration options. If the documentation for a configuration
option does not specify its section, assume that it appears in this section.
[cache]
Configures caching.
[drivers]
Select drivers.
[transport]
Configures general transport options.
[drivers:transport:wsgi]
Configures the WSGI transport driver.
[drivers:transport:websocket]
Configures the Websocket transport driver.
[storage]
Configures general storage options.
[drivers:management_store:mongodb]
Configures the MongoDB management storage driver.
[drivers:message_store:mongodb]
Configures the MongoDB message storage driver.
[drivers:management_store:redis]
Configures the Redis management storage driver.
[drivers:message_store:redis]
Configures the Redis message storage driver.
[drivers:management_store:sqlalchemy]
Configures the SQLalchemy management storage driver.
[keystone_authtoken]
Configures the Identity service endpoint.
[oslo_policy]
Configures the RBAC policy.
[pooling:catalog]
Configures the pooling catalog.
[signed_url]
Configures signed URLs.

View File

@ -0,0 +1,8 @@
===============
Drivers options
===============
The transport and storage drivers used by the Message service are determined
by the following options:
.. include:: ../tables/zaqar-drivers.rst

View File

@ -0,0 +1,11 @@
===============
Logging options
===============
You can use the ``zaqar.conf`` file to configure where the Messaging and
Notifications service logs events, the logging levels and log formats.
To customize logging for the Message service, use the following configuration
settings in the ``[DEFAULT]`` section:
.. include:: ../tables/zaqar-logging.rst

View File

@ -0,0 +1,12 @@
===============
Pooling options
===============
The Message service supports pooling.
Pooling aims to make the Message service highly scalable without losing any of
its flexibility by allowing users to use multiple-backends.
You can enable and configure pooling with the following options:
.. include:: ../tables/zaqar-pooling.rst

View File

@ -0,0 +1,12 @@
=======================
Storage drivers options
=======================
The Message service supports several different backends for storing messages
and their metadata. The recommended storage backend is MongoDB. The following
tables detail the available options:
.. include:: ../tables/zaqar-storage.rst
.. include:: ../tables/zaqar-mongodb.rst
.. include:: ../tables/zaqar-redis.rst
.. include:: ../tables/zaqar-sqlalchemy.rst

View File

@ -0,0 +1,10 @@
=========================
Transport drivers options
=========================
The Message service uses WSGI as the default transport mechanism. The following
tables detail the available options:
.. include:: ../tables/zaqar-transport.rst
.. include:: ../tables/zaqar-wsgi.rst
.. include:: ../tables/zaqar-websocket.rst

View File

@ -0,0 +1,42 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-api:
.. list-table:: Description of API configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[DEFAULT]**
-
* - ``admin_mode`` = ``False``
- (BoolOpt) Activate privileged endpoints.
* - ``daemon`` = ``False``
- (BoolOpt) Run Zaqar server in the background.
* - ``unreliable`` = ``False``
- (BoolOpt) Disable all reliability constraints.
* - **[notification]**
-
* - ``smtp_command`` = ``/usr/sbin/sendmail -t -oi``
- (StrOpt) The command of smtp to send email. The format is "command_name arg1 arg2".
* - **[oslo_policy]**
-
* - ``policy_default_rule`` = ``default``
- (StrOpt) Default rule. Enforced when a requested rule is not found.
* - ``policy_dirs`` = ``['policy.d']``
- (MultiStrOpt) Directories where policy configuration files are stored. They can be relative to any directory in the search path defined by the config_dir option, or absolute paths. The file defined by policy_file must exist for these directories to be searched. Missing or empty directories are ignored.
* - ``policy_file`` = ``policy.json``
- (StrOpt) The JSON file that defines policies.
* - **[signed_url]**
-
* - ``secret_key`` = ``None``
- (StrOpt) Secret key used to encrypt pre-signed URLs.

View File

@ -0,0 +1,100 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-auth_token:
.. list-table:: Description of authorization token configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[DEFAULT]**
-
* - ``memcached_servers`` = ``None``
- (ListOpt) Memcached servers or None for in process cache.
* - **[keystone_authtoken]**
-
* - ``admin_password`` = ``None``
- (StrOpt) Service user password.
* - ``admin_tenant_name`` = ``admin``
- (StrOpt) Service tenant name.
* - ``admin_token`` = ``None``
- (StrOpt) This option is deprecated and may be removed in a future release. Single shared secret with the Keystone configuration used for bootstrapping a Keystone installation, or otherwise bypassing the normal authentication process. This option should not be used, use `admin_user` and `admin_password` instead.
* - ``admin_user`` = ``None``
- (StrOpt) Service username.
* - ``auth_admin_prefix`` =
- (StrOpt) Prefix to prepend at the beginning of the path. Deprecated, use identity_uri.
* - ``auth_host`` = ``127.0.0.1``
- (StrOpt) Host providing the admin Identity API endpoint. Deprecated, use identity_uri.
* - ``auth_port`` = ``35357``
- (IntOpt) Port of the admin Identity API endpoint. Deprecated, use identity_uri.
* - ``auth_protocol`` = ``https``
- (StrOpt) Protocol of the admin Identity API endpoint (http or https). Deprecated, use identity_uri.
* - ``auth_section`` = ``None``
- (Opt) Config Section from which to load plugin specific options
* - ``auth_type`` = ``None``
- (Opt) Authentication type to load
* - ``auth_uri`` = ``None``
- (StrOpt) Complete public Identity API endpoint.
* - ``auth_version`` = ``None``
- (StrOpt) API version of the admin Identity API endpoint.
* - ``cache`` = ``None``
- (StrOpt) Env key for the swift cache.
* - ``cafile`` = ``None``
- (StrOpt) A PEM encoded Certificate Authority to use when verifying HTTPs connections. Defaults to system CAs.
* - ``certfile`` = ``None``
- (StrOpt) Required if identity server requires client certificate
* - ``check_revocations_for_cached`` = ``False``
- (BoolOpt) If true, the revocation list will be checked for cached tokens. This requires that PKI tokens are configured on the identity server.
* - ``delay_auth_decision`` = ``False``
- (BoolOpt) Do not handle authorization requests within the middleware, but delegate the authorization decision to downstream WSGI components.
* - ``enforce_token_bind`` = ``permissive``
- (StrOpt) Used to control the use and type of token binding. Can be set to: "disabled" to not check token binding. "permissive" (default) to validate binding information if the bind type is of a form known to the server and ignore it if not. "strict" like "permissive" but if the bind type is unknown the token will be rejected. "required" any form of token binding is needed to be allowed. Finally the name of a binding method that must be present in tokens.
* - ``hash_algorithms`` = ``md5``
- (ListOpt) Hash algorithms to use for hashing PKI tokens. This may be a single algorithm or multiple. The algorithms are those supported by Python standard hashlib.new(). The hashes will be tried in the order given, so put the preferred one first for performance. The result of the first hash will be stored in the cache. This will typically be set to multiple values only while migrating from a less secure algorithm to a more secure one. Once all the old tokens are expired this option should be set to a single value for better performance.
* - ``http_connect_timeout`` = ``None``
- (IntOpt) Request timeout value for communicating with Identity API server.
* - ``http_request_max_retries`` = ``3``
- (IntOpt) How many times are we trying to reconnect when communicating with Identity API Server.
* - ``identity_uri`` = ``None``
- (StrOpt) Complete admin Identity API endpoint. This should specify the unversioned root endpoint e.g. https://localhost:35357/
* - ``include_service_catalog`` = ``True``
- (BoolOpt) (Optional) Indicate whether to set the X-Service-Catalog header. If False, middleware will not ask for service catalog on token validation and will not set the X-Service-Catalog header.
* - ``insecure`` = ``False``
- (BoolOpt) Verify HTTPS connections.
* - ``keyfile`` = ``None``
- (StrOpt) Required if identity server requires client certificate
* - ``memcache_pool_conn_get_timeout`` = ``10``
- (IntOpt) (Optional) Number of seconds that an operation will wait to get a memcached client connection from the pool.
* - ``memcache_pool_dead_retry`` = ``300``
- (IntOpt) (Optional) Number of seconds memcached server is considered dead before it is tried again.
* - ``memcache_pool_maxsize`` = ``10``
- (IntOpt) (Optional) Maximum total number of open connections to every memcached server.
* - ``memcache_pool_socket_timeout`` = ``3``
- (IntOpt) (Optional) Socket timeout in seconds for communicating with a memcached server.
* - ``memcache_pool_unused_timeout`` = ``60``
- (IntOpt) (Optional) Number of seconds a connection to memcached is held unused in the pool before it is closed.
* - ``memcache_secret_key`` = ``None``
- (StrOpt) (Optional, mandatory if memcache_security_strategy is defined) This string is used for key derivation.
* - ``memcache_security_strategy`` = ``None``
- (StrOpt) (Optional) If defined, indicate whether token data should be authenticated or authenticated and encrypted. Acceptable values are MAC or ENCRYPT. If MAC, token data is authenticated (with HMAC) in the cache. If ENCRYPT, token data is encrypted and authenticated in the cache. If the value is not one of these options or empty, auth_token will raise an exception on initialization.
* - ``memcache_use_advanced_pool`` = ``False``
- (BoolOpt) (Optional) Use the advanced (eventlet safe) memcached client pool. The advanced pool will only work under python 2.x.
* - ``memcached_servers`` = ``None``
- (ListOpt) Optionally specify a list of memcached server(s) to use for caching. If left undefined, tokens will instead be cached in-process.
* - ``region_name`` = ``None``
- (StrOpt) The region in which the identity server can be found.
* - ``revocation_cache_time`` = ``10``
- (IntOpt) Determines the frequency at which the list of revoked tokens is retrieved from the Identity service (in seconds). A high number of revocation events combined with a low cache duration may significantly reduce performance.
* - ``signing_dir`` = ``None``
- (StrOpt) Directory used to cache files related to PKI tokens.
* - ``token_cache_time`` = ``300``
- (IntOpt) In order to prevent excessive effort spent validating tokens, the middleware caches previously-seen tokens for a configurable duration (in seconds). Set to -1 to disable caching completely.

View File

@ -0,0 +1,22 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-authentication:
.. list-table:: Description of authentication configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[DEFAULT]**
-
* - ``auth_strategy`` =
- (StrOpt) Backend to use for authentication. For no auth, keep it empty. Existing strategies: keystone. See also the keystone_authtoken section below

View File

@ -0,0 +1,46 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-cache:
.. list-table:: Description of cache configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[cache]**
-
* - ``backend`` = ``dogpile.cache.null``
- (StrOpt) Dogpile.cache backend module. It is recommended that Memcache with pooling (oslo_cache.memcache_pool) or Redis (dogpile.cache.redis) be used in production deployments. Small workloads (single process) like devstack can use the dogpile.cache.memory backend.
* - ``backend_argument`` = ``[]``
- (MultiStrOpt) Arguments supplied to the backend module. Specify this option once per argument to be passed to the dogpile.cache backend. Example format: "<argname>:<value>".
* - ``config_prefix`` = ``cache.oslo``
- (StrOpt) Prefix for building the configuration dictionary for the cache region. This should not need to be changed unless there is another dogpile.cache region with the same configuration name.
* - ``debug_cache_backend`` = ``False``
- (BoolOpt) Extra debugging from the cache backend (cache keys, get/set/delete/etc calls). This is only really useful if you need to see the specific cache-backend get/set/delete calls with the keys/values. Typically this should be left set to false.
* - ``enabled`` = ``False``
- (BoolOpt) Global toggle for caching.
* - ``expiration_time`` = ``600``
- (IntOpt) Default TTL, in seconds, for any cached item in the dogpile.cache region. This applies to any cached method that doesn't have an explicit cache expiration time defined for it.
* - ``memcache_dead_retry`` = ``300``
- (IntOpt) Number of seconds memcached server is considered dead before it is tried again. (dogpile.cache.memcache and oslo_cache.memcache_pool backends only).
* - ``memcache_pool_connection_get_timeout`` = ``10``
- (IntOpt) Number of seconds that an operation will wait to get a memcache client connection.
* - ``memcache_pool_maxsize`` = ``10``
- (IntOpt) Max total number of open connections to every memcached server. (oslo_cache.memcache_pool backend only).
* - ``memcache_pool_unused_timeout`` = ``60``
- (IntOpt) Number of seconds a connection to memcached is held unused in the pool before it is closed. (oslo_cache.memcache_pool backend only).
* - ``memcache_servers`` = ``localhost:11211``
- (ListOpt) Memcache servers in the format of "host:port". (dogpile.cache.memcache and oslo_cache.memcache_pool backends only).
* - ``memcache_socket_timeout`` = ``3``
- (IntOpt) Timeout in seconds for every call to a server. (dogpile.cache.memcache and oslo_cache.memcache_pool backends only).
* - ``proxies`` =
- (ListOpt) Proxy classes to import that will affect the way the dogpile.cache backend functions. See the dogpile.cache documentation on changing-backend-behavior.

View File

@ -0,0 +1,26 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-drivers:
.. list-table:: Description of drivers configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[drivers]**
-
* - ``management_store`` = ``mongodb``
- (StrOpt) Storage driver to use as the management store.
* - ``message_store`` = ``mongodb``
- (StrOpt) Storage driver to use as the messaging store.
* - ``transport`` = ``wsgi``
- (StrOpt) Transport driver to use.

View File

@ -0,0 +1,64 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-logging:
.. list-table:: Description of logging configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[DEFAULT]**
-
* - ``debug`` = ``False``
- (BoolOpt) Print debugging output (set logging level to DEBUG instead of default INFO level).
* - ``default_log_levels`` = ``amqp=WARN, amqplib=WARN, boto=WARN, qpid=WARN, sqlalchemy=WARN, suds=INFO, oslo.messaging=INFO, iso8601=WARN, requests.packages.urllib3.connectionpool=WARN, urllib3.connectionpool=WARN, websocket=WARN, requests.packages.urllib3.util.retry=WARN, urllib3.util.retry=WARN, keystonemiddleware=WARN, routes.middleware=WARN, stevedore=WARN, taskflow=WARN, keystoneauth=WARN``
- (ListOpt) List of logger=LEVEL pairs. This option is ignored if log_config_append is set.
* - ``fatal_deprecations`` = ``False``
- (BoolOpt) Enables or disables fatal status of deprecations.
* - ``instance_format`` = ``"[instance: %(uuid)s] "``
- (StrOpt) The format for an instance that is passed with the log message.
* - ``instance_uuid_format`` = ``"[instance: %(uuid)s] "``
- (StrOpt) The format for an instance UUID that is passed with the log message.
* - ``log_config_append`` = ``None``
- (StrOpt) The name of a logging configuration file. This file is appended to any existing logging configuration files. For details about logging configuration files, see the Python logging module documentation. Note that when logging configuration files are used then all logging configuration is set in the configuration file and other logging configuration options are ignored (for example, log_format).
* - ``log_date_format`` = ``%Y-%m-%d %H:%M:%S``
- (StrOpt) Format string for %%(asctime)s in log records. Default: %(default)s . This option is ignored if log_config_append is set.
* - ``log_dir`` = ``None``
- (StrOpt) (Optional) The base directory used for relative --log-file paths. This option is ignored if log_config_append is set.
* - ``log_file`` = ``None``
- (StrOpt) (Optional) Name of log file to output to. If no default is set, logging will go to stdout. This option is ignored if log_config_append is set.
* - ``log_format`` = ``None``
- (StrOpt) DEPRECATED. A logging.Formatter log message format string which may use any of the available logging.LogRecord attributes. This option is deprecated. Please use logging_context_format_string and logging_default_format_string instead. This option is ignored if log_config_append is set.
* - ``logging_context_format_string`` = ``%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user_identity)s] %(instance)s%(message)s``
- (StrOpt) Format string to use for log messages with context.
* - ``logging_debug_format_suffix`` = ``%(funcName)s %(pathname)s:%(lineno)d``
- (StrOpt) Data to append to log format when level is DEBUG.
* - ``logging_default_format_string`` = ``%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s``
- (StrOpt) Format string to use for log messages without context.
* - ``logging_exception_prefix`` = ``%(asctime)s.%(msecs)03d %(process)d ERROR %(name)s %(instance)s``
- (StrOpt) Prefix each line of exception output with this format.
* - ``logging_user_identity_format`` = ``%(user)s %(tenant)s %(domain)s %(user_domain)s %(project_domain)s``
- (StrOpt) Format string for user_identity field of the logging_context_format_string
* - ``publish_errors`` = ``False``
- (BoolOpt) Enables or disables publication of error events.
* - ``syslog_log_facility`` = ``LOG_USER``
- (StrOpt) Syslog facility to receive log lines. This option is ignored if log_config_append is set.
* - ``use_stderr`` = ``True``
- (BoolOpt) Log output to standard error. This option is ignored if log_config_append is set.
* - ``use_syslog`` = ``False``
- (BoolOpt) Use syslog for logging. Existing syslog format is DEPRECATED and will be changed later to honor RFC5424. This option is ignored if log_config_append is set.
* - ``use_syslog_rfc_format`` = ``True``
- (BoolOpt) (Optional) Enables or disables syslog rfc5424 format for logging. If enabled, prefixes the MSG part of the syslog message with APP-NAME (RFC5424). The format without the APP-NAME is deprecated in Kilo, and will be removed in Mitaka, along with this option. This option is ignored if log_config_append is set.
* - ``verbose`` = ``True``
- (BoolOpt) If set to false, will disable INFO logging level, making WARNING the default.
* - ``watch_log_file`` = ``False``
- (BoolOpt) (Optional) Uses logging handler designed to watch file system. When log file is moved or removed this handler will open a new log file with specified path instantaneously. It makes sense only if log-file option is specified and Linux platform is used. This option is ignored if log_config_append is set.

View File

@ -0,0 +1,68 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-mongodb:
.. list-table:: Description of MongoDB configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[drivers:management_store:mongodb]**
-
* - ``database`` = ``zaqar``
- (StrOpt) Database name.
* - ``max_attempts`` = ``1000``
- (IntOpt) Maximum number of times to retry a failed operation. Currently only used for retrying a message post.
* - ``max_reconnect_attempts`` = ``10``
- (IntOpt) Maximum number of times to retry an operation that failed due to a primary node failover.
* - ``max_retry_jitter`` = ``0.005``
- (FloatOpt) Maximum jitter interval, to be added to the sleep interval, in order to decrease probability that parallel requests will retry at the same instant.
* - ``max_retry_sleep`` = ``0.1``
- (FloatOpt) Maximum sleep interval between retries (actual sleep time increases linearly according to number of attempts performed).
* - ``reconnect_sleep`` = ``0.02``
- (FloatOpt) Base sleep interval between attempts to reconnect after a primary node failover. The actual sleep time increases exponentially (power of 2) each time the operation is retried.
* - ``ssl_ca_certs`` = ``None``
- (StrOpt) The ca_certs file contains a set of concatenated "certification authority" certificates, which are used to validate certificates passed from the other end of the connection.
* - ``ssl_cert_reqs`` = ``CERT_REQUIRED``
- (StrOpt) Specifies whether a certificate is required from the other side of the connection, and whether it will be validated if provided. It must be one of the three values ``CERT_NONE``(certificates ignored), ``CERT_OPTIONAL``(not required, but validated if provided), or ``CERT_REQUIRED``(required and validated). If the value of this parameter is not ``CERT_NONE``, then the ``ssl_ca_cert`` parameter must point to a file of CA certificates.
* - ``ssl_certfile`` = ``None``
- (StrOpt) The certificate file used to identify the local connection against mongod.
* - ``ssl_keyfile`` = ``None``
- (StrOpt) The private keyfile used to identify the local connection against mongod. If included with the ``certifle`` then only the ``ssl_certfile`` is needed.
* - ``uri`` = ``None``
- (StrOpt) Mongodb Connection URI. If ssl connection enabled, then ``ssl_keyfile``, ``ssl_certfile``, ``ssl_cert_reqs``, ``ssl_ca_certs`` need to be set accordingly.
* - **[drivers:message_store:mongodb]**
-
* - ``database`` = ``zaqar``
- (StrOpt) Database name.
* - ``max_attempts`` = ``1000``
- (IntOpt) Maximum number of times to retry a failed operation. Currently only used for retrying a message post.
* - ``max_reconnect_attempts`` = ``10``
- (IntOpt) Maximum number of times to retry an operation that failed due to a primary node failover.
* - ``max_retry_jitter`` = ``0.005``
- (FloatOpt) Maximum jitter interval, to be added to the sleep interval, in order to decrease probability that parallel requests will retry at the same instant.
* - ``max_retry_sleep`` = ``0.1``
- (FloatOpt) Maximum sleep interval between retries (actual sleep time increases linearly according to number of attempts performed).
* - ``partitions`` = ``2``
- (IntOpt) Number of databases across which to partition message data, in order to reduce writer lock %. DO NOT change this setting after initial deployment. It MUST remain static. Also, you should not need a large number of partitions to improve performance, esp. if deploying MongoDB on SSD storage.
* - ``reconnect_sleep`` = ``0.02``
- (FloatOpt) Base sleep interval between attempts to reconnect after a primary node failover. The actual sleep time increases exponentially (power of 2) each time the operation is retried.
* - ``ssl_ca_certs`` = ``None``
- (StrOpt) The ca_certs file contains a set of concatenated "certification authority" certificates, which are used to validate certificates passed from the other end of the connection.
* - ``ssl_cert_reqs`` = ``CERT_REQUIRED``
- (StrOpt) Specifies whether a certificate is required from the other side of the connection, and whether it will be validated if provided. It must be one of the three values ``CERT_NONE``(certificates ignored), ``CERT_OPTIONAL``(not required, but validated if provided), or ``CERT_REQUIRED``(required and validated). If the value of this parameter is not ``CERT_NONE``, then the ``ssl_ca_cert`` parameter must point to a file of CA certificates.
* - ``ssl_certfile`` = ``None``
- (StrOpt) The certificate file used to identify the local connection against mongod.
* - ``ssl_keyfile`` = ``None``
- (StrOpt) The private keyfile used to identify the local connection against mongod. If included with the ``certifle`` then only the ``ssl_certfile`` is needed.
* - ``uri`` = ``None``
- (StrOpt) Mongodb Connection URI. If ssl connection enabled, then ``ssl_keyfile``, ``ssl_certfile``, ``ssl_cert_reqs``, ``ssl_ca_certs`` need to be set accordingly.

View File

@ -0,0 +1,26 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-pooling:
.. list-table:: Description of pooling configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[DEFAULT]**
-
* - ``pooling`` = ``False``
- (BoolOpt) Enable pooling across multiple storage backends. If pooling is enabled, the storage driver configuration is used to determine where the catalogue/control plane data is kept.
* - **[pooling:catalog]**
-
* - ``enable_virtual_pool`` = ``False``
- (BoolOpt) If enabled, the message_store will be used as the storage for the virtual pool.

View File

@ -0,0 +1,34 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-redis:
.. list-table:: Description of Redis configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[drivers:management_store:redis]**
-
* - ``max_reconnect_attempts`` = ``10``
- (IntOpt) Maximum number of times to retry an operation that failed due to a redis node failover.
* - ``reconnect_sleep`` = ``1.0``
- (FloatOpt) Base sleep interval between attempts to reconnect after a redis node failover.
* - ``uri`` = ``redis://127.0.0.1:6379``
- (StrOpt) Redis connection URI, taking one of three forms. For a direct connection to a Redis server, use the form "redis://host[:port][?options]", where port defaults to 6379 if not specified. For an HA master-slave Redis cluster using Redis Sentinel, use the form "redis://host1[:port1][,host2[:port2],...,hostN[:portN]][?options]", where each host specified corresponds to an instance of redis-sentinel. In this form, the name of the Redis master used in the Sentinel configuration must be included in the query string as "master=<name>". Finally, to connect to a local instance of Redis over a unix socket, you may use the form "redis:/path/to/redis.sock[?options]". In all forms, the "socket_timeout" option may be specified in the query string. Its value is given in seconds. If not provided, "socket_timeout" defaults to 0.1 seconds.
* - **[drivers:message_store:redis]**
-
* - ``max_reconnect_attempts`` = ``10``
- (IntOpt) Maximum number of times to retry an operation that failed due to a redis node failover.
* - ``reconnect_sleep`` = ``1.0``
- (FloatOpt) Base sleep interval between attempts to reconnect after a redis node failover.
* - ``uri`` = ``redis://127.0.0.1:6379``
- (StrOpt) Redis connection URI, taking one of three forms. For a direct connection to a Redis server, use the form "redis://host[:port][?options]", where port defaults to 6379 if not specified. For an HA master-slave Redis cluster using Redis Sentinel, use the form "redis://host1[:port1][,host2[:port2],...,hostN[:portN]][?options]", where each host specified corresponds to an instance of redis-sentinel. In this form, the name of the Redis master used in the Sentinel configuration must be included in the query string as "master=<name>". Finally, to connect to a local instance of Redis over a unix socket, you may use the form "redis:/path/to/redis.sock[?options]". In all forms, the "socket_timeout" option may be specified in the query string. Its value is given in seconds. If not provided, "socket_timeout" defaults to 0.1 seconds.

View File

@ -0,0 +1,22 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-sqlalchemy:
.. list-table:: Description of SQLAlchemy configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[drivers:management_store:sqlalchemy]**
-
* - ``uri`` = ``sqlite:///:memory:``
- (StrOpt) An sqlalchemy URL

View File

@ -0,0 +1,28 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-storage:
.. list-table:: Description of storage configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[storage]**
-
* - ``claim_pipeline`` =
- (ListOpt) Pipeline to use for processing claim operations. This pipeline will be consumed before calling the storage driver's controller methods.
* - ``message_pipeline`` =
- (ListOpt) Pipeline to use for processing message operations. This pipeline will be consumed before calling the storage driver's controller methods.
* - ``queue_pipeline`` =
- (ListOpt) Pipeline to use for processing queue operations. This pipeline will be consumed before calling the storage driver's controller methods.
* - ``subscription_pipeline`` =
- (ListOpt) Pipeline to use for processing subscription operations. This pipeline will be consumed before calling the storage driver's controller methods.

View File

@ -0,0 +1,46 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-transport:
.. list-table:: Description of transport configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[transport]**
-
* - ``default_claim_grace`` = ``60``
- (IntOpt) Defines the message grace period in seconds.
* - ``default_claim_ttl`` = ``300``
- (IntOpt) Defines how long a message will be in claimed state.
* - ``default_message_ttl`` = ``3600``
- (IntOpt) Defines how long a message will be accessible.
* - ``max_claim_grace`` = ``43200``
- (IntOpt) Defines the maximum message grace period in seconds.
* - ``max_claim_ttl`` = ``43200``
- (IntOpt) Maximum length of a message in claimed state.
* - ``max_message_ttl`` = ``1209600``
- (IntOpt) Maximum amount of time a message will be available.
* - ``max_messages_per_claim_or_pop`` = ``20``
- (IntOpt) The maximum number of messages that can be claimed (OR) popped in a single request
* - ``max_messages_per_page`` = ``20``
- (IntOpt) Defines the maximum number of messages per page.
* - ``max_messages_post_size`` = ``262144``
- (IntOpt) Defines the maximum size of message posts.
* - ``max_queue_metadata`` = ``65536``
- (IntOpt) Defines the maximum amount of metadata in a queue.
* - ``max_queues_per_page`` = ``20``
- (IntOpt) Defines the maximum number of queues per page.
* - ``max_subscriptions_per_page`` = ``20``
- (IntOpt) Defines the maximum number of subscriptions per page.
* - ``subscriber_types`` = ``http, https, mailto``
- (ListOpt) Defines supported subscriber types.

View File

@ -0,0 +1,26 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-websocket:
.. list-table:: Description of Websocket configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[drivers:transport:websocket]**
-
* - ``bind`` = ``127.0.0.1``
- (IPOpt) Address on which the self-hosting server will listen.
* - ``external_port`` = ``None``
- (PortOpt) Port on which the service is provided to the user.
* - ``port`` = ``9000``
- (PortOpt) Port on which the self-hosting server will listen.

View File

@ -0,0 +1,24 @@
..
Warning: Do not edit this file. It is automatically generated from the
software project's code and your changes will be overwritten.
The tool to generate this file lives in openstack-doc-tools repository.
Please make any changes needed in the code, then run the
autogenerate-config-doc tool from the openstack-doc-tools repository, or
ask for help on the documentation mailing list, IRC channel or meeting.
.. _zaqar-wsgi:
.. list-table:: Description of WSGI configuration options
:header-rows: 1
:class: config-ref-table
* - Configuration option = Default value
- Description
* - **[drivers:transport:wsgi]**
-
* - ``bind`` = ``127.0.0.1``
- (IPOpt) Address on which the self-hosting server will listen.
* - ``port`` = ``8888``
- (PortOpt) Port on which the self-hosting server will listen.

View File

@ -0,0 +1,140 @@
admin_mode api
auth_strategy authentication
daemon api
debug logging
default_log_levels logging
fatal_deprecations logging
instance_format logging
instance_uuid_format logging
log_config_append logging
log_date_format logging
log_dir logging
log_file logging
log_format logging
logging_context_format_string logging
logging_debug_format_suffix logging
logging_default_format_string logging
logging_exception_prefix logging
logging_user_identity_format logging
memcached_servers auth_token
pooling pooling
publish_errors logging
syslog_log_facility logging
unreliable api
use_stderr logging
use_syslog logging
use_syslog_rfc_format logging
verbose logging
watch_log_file logging
cache/backend cache
cache/backend_argument cache
cache/config_prefix cache
cache/debug_cache_backend cache
cache/enabled cache
cache/expiration_time cache
cache/memcache_dead_retry cache
cache/memcache_pool_connection_get_timeout cache
cache/memcache_pool_maxsize cache
cache/memcache_pool_unused_timeout cache
cache/memcache_servers cache
cache/memcache_socket_timeout cache
cache/proxies cache
drivers/management_store drivers
drivers/message_store drivers
drivers/transport drivers
drivers:management_store:mongodb/database mongodb
drivers:management_store:mongodb/max_attempts mongodb
drivers:management_store:mongodb/max_reconnect_attempts mongodb
drivers:management_store:mongodb/max_retry_jitter mongodb
drivers:management_store:mongodb/max_retry_sleep mongodb
drivers:management_store:mongodb/reconnect_sleep mongodb
drivers:management_store:mongodb/ssl_ca_certs mongodb
drivers:management_store:mongodb/ssl_cert_reqs mongodb
drivers:management_store:mongodb/ssl_certfile mongodb
drivers:management_store:mongodb/ssl_keyfile mongodb
drivers:management_store:mongodb/uri mongodb
drivers:management_store:redis/max_reconnect_attempts redis
drivers:management_store:redis/reconnect_sleep redis
drivers:management_store:redis/uri redis
drivers:management_store:sqlalchemy/uri sqlalchemy
drivers:message_store:mongodb/database mongodb
drivers:message_store:mongodb/max_attempts mongodb
drivers:message_store:mongodb/max_reconnect_attempts mongodb
drivers:message_store:mongodb/max_retry_jitter mongodb
drivers:message_store:mongodb/max_retry_sleep mongodb
drivers:message_store:mongodb/partitions mongodb
drivers:message_store:mongodb/reconnect_sleep mongodb
drivers:message_store:mongodb/ssl_ca_certs mongodb
drivers:message_store:mongodb/ssl_cert_reqs mongodb
drivers:message_store:mongodb/ssl_certfile mongodb
drivers:message_store:mongodb/ssl_keyfile mongodb
drivers:message_store:mongodb/uri mongodb
drivers:message_store:redis/max_reconnect_attempts redis
drivers:message_store:redis/reconnect_sleep redis
drivers:message_store:redis/uri redis
drivers:transport:websocket/bind websocket
drivers:transport:websocket/external_port websocket
drivers:transport:websocket/port websocket
drivers:transport:wsgi/bind wsgi
drivers:transport:wsgi/port wsgi
keystone_authtoken/admin_password auth_token
keystone_authtoken/admin_tenant_name auth_token
keystone_authtoken/admin_token auth_token
keystone_authtoken/admin_user auth_token
keystone_authtoken/auth_admin_prefix auth_token
keystone_authtoken/auth_host auth_token
keystone_authtoken/auth_port auth_token
keystone_authtoken/auth_protocol auth_token
keystone_authtoken/auth_section auth_token
keystone_authtoken/auth_type auth_token
keystone_authtoken/auth_uri auth_token
keystone_authtoken/auth_version auth_token
keystone_authtoken/cache auth_token
keystone_authtoken/cafile auth_token
keystone_authtoken/certfile auth_token
keystone_authtoken/check_revocations_for_cached auth_token
keystone_authtoken/delay_auth_decision auth_token
keystone_authtoken/enforce_token_bind auth_token
keystone_authtoken/hash_algorithms auth_token
keystone_authtoken/http_connect_timeout auth_token
keystone_authtoken/http_request_max_retries auth_token
keystone_authtoken/identity_uri auth_token
keystone_authtoken/include_service_catalog auth_token
keystone_authtoken/insecure auth_token
keystone_authtoken/keyfile auth_token
keystone_authtoken/memcache_pool_conn_get_timeout auth_token
keystone_authtoken/memcache_pool_dead_retry auth_token
keystone_authtoken/memcache_pool_maxsize auth_token
keystone_authtoken/memcache_pool_socket_timeout auth_token
keystone_authtoken/memcache_pool_unused_timeout auth_token
keystone_authtoken/memcache_secret_key auth_token
keystone_authtoken/memcache_security_strategy auth_token
keystone_authtoken/memcache_use_advanced_pool auth_token
keystone_authtoken/memcached_servers auth_token
keystone_authtoken/region_name auth_token
keystone_authtoken/revocation_cache_time auth_token
keystone_authtoken/signing_dir auth_token
keystone_authtoken/token_cache_time auth_token
notification/smtp_command api
oslo_policy/policy_default_rule api
oslo_policy/policy_dirs api
oslo_policy/policy_file api
pooling:catalog/enable_virtual_pool pooling
signed_url/secret_key api
storage/claim_pipeline storage
storage/message_pipeline storage
storage/queue_pipeline storage
storage/subscription_pipeline storage
transport/default_claim_grace transport
transport/default_claim_ttl transport
transport/default_message_ttl transport
transport/max_claim_grace transport
transport/max_claim_ttl transport
transport/max_message_ttl transport
transport/max_messages_per_claim_or_pop transport
transport/max_messages_per_page transport
transport/max_messages_post_size transport
transport/max_queue_metadata transport
transport/max_queues_per_page transport
transport/max_subscriptions_per_page transport
transport/subscriber_types transport

View File

@ -0,0 +1,10 @@
authentication authentication
cache cache
drivers drivers
mongodb MongoDB
pooling pooling
redis Redis
sqlalchemy SQLAlchemy
storage storage
transport transport
websocket Websocket