Atom feed of this document
  
Juno -  Juno -  Juno -  Juno -  Juno -  Juno -  Juno -  Juno - 

 Chapter 4. Database Service

The Database Service provides a scalable and reliable Cloud Database-as-a-Service functionality for both relational and non-relational database engines.

The following tables provide a comprehensive list of the Database Service configuration options.

Table 4.1. Description of API configuration options
Configuration option = Default value Description
[DEFAULT]
admin_roles = admin (ListOpt) Roles to add to an admin user.
api_paste_config = api-paste.ini (StrOpt) File name for the paste.deploy config for trove-api.
bind_host = 0.0.0.0 (StrOpt) IP address the API server will listen on.
bind_port = 8779 (IntOpt) Port the API server will listen on.
black_list_regex = None (StrOpt) Exclude IP addresses that match this regular expression.
db_api_implementation = trove.db.sqlalchemy.api (StrOpt) API Implementation for Trove database access.
hostname_require_valid_ip = True (BoolOpt) Require user hostnames to be valid IP addresses.
http_delete_rate = 200 (IntOpt) Maximum number of HTTP 'DELETE' requests (per minute).
http_get_rate = 200 (IntOpt) Maximum number of HTTP 'GET' requests (per minute).
http_mgmt_post_rate = 200 (IntOpt) Maximum number of management HTTP 'POST' requests (per minute).
http_post_rate = 200 (IntOpt) Maximum number of HTTP 'POST' requests (per minute).
http_put_rate = 200 (IntOpt) Maximum number of HTTP 'PUT' requests (per minute).
instances_page_size = 20 (IntOpt) Page size for listing instances.
max_header_line = 16384 (IntOpt) Maximum line size of message headers to be accepted. max_header_line may need to be increased when using large tokens (typically those generated by the Keystone v3 API with big service catalogs).
os_region_name = None (StrOpt) Region name of this node. Used when searching catalog.
region = LOCAL_DEV (StrOpt) The region this service is located.
tcp_keepidle = 600 (IntOpt) Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X.
trove_api_workers = None (IntOpt) Number of workers for the API service. The default will be the number of CPUs available.
trove_auth_url = http://0.0.0.0:5000/v2.0 (StrOpt) Trove authentication URL.
trove_conductor_workers = None (IntOpt) Number of workers for the Conductor service. The default will be the number of CPUs available.
trove_security_group_name_prefix = SecGroup (StrOpt) Prefix to use when creating Security Groups.
trove_security_group_rule_cidr = 0.0.0.0/0 (StrOpt) CIDR to use when creating Security Group Rules.
trove_security_groups_support = True (BoolOpt) Whether Trove should add Security Groups on create.
users_page_size = 20 (IntOpt) Page size for listing users.

Table 4.2. Description of authorization token configuration options
Configuration option = Default value Description
[keystone_authtoken]
admin_password = None (StrOpt) Keystone account password
admin_tenant_name = admin (StrOpt) Keystone service account tenant name to validate user tokens
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) Keystone account 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_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 Keystone 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 Keystone 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 (BoolOpt) 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 Keystone server requires client certificate
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.
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.

Table 4.3. Description of backup configuration options
Configuration option = Default value Description
[DEFAULT]
backup_aes_cbc_key = default_aes_cbc_key (StrOpt) Default OpenSSL aes_cbc key.
backup_chunk_size = 65536 (IntOpt) Chunk size (in bytes) to stream to the Swift container. This should be in multiples of 128 bytes, since this is the size of an md5 digest block allowing the process to update the file checksum during streaming. See: http://stackoverflow.com/questions/1131220/
backup_runner = trove.guestagent.backup.backup_types.InnoBackupEx (StrOpt) Runner to use for backups.
backup_runner_options = {} (DictOpt) Additional options to be passed to the backup runner.
backup_segment_max_size = 2147483648 (IntOpt) Maximum size (in bytes) of each segment of the backup file.
backup_swift_container = database_backups (StrOpt) Swift container to put backups in.
backup_use_gzip_compression = True (BoolOpt) Compress backups using gzip.
backup_use_openssl_encryption = True (BoolOpt) Encrypt backups using OpenSSL.
backup_use_snet = False (BoolOpt) Send backup files over snet.
backups_page_size = 20 (IntOpt) Page size for listing backups.

Table 4.4. Description of CA and SSL configuration options
Configuration option = Default value Description
[ssl]
ca_file = None (StrOpt) CA certificate file to use to verify connecting clients
cert_file = None (StrOpt) Certificate file to use when starting the server securely
key_file = None (StrOpt) Private key file to use when starting the server securely

Table 4.5. Description of clients configuration options
Configuration option = Default value Description
[DEFAULT]
remote_cinder_client = trove.common.remote.cinder_client (StrOpt) Client to send Cinder calls to.
remote_dns_client = trove.common.remote.dns_client (StrOpt) Client to send DNS calls to.
remote_guest_client = trove.common.remote.guest_client (StrOpt) Client to send Guest Agent calls to.
remote_heat_client = trove.common.remote.heat_client (StrOpt) Client to send Heat calls to.
remote_neutron_client = trove.common.remote.neutron_client (StrOpt) Client to send Neutron calls to.
remote_nova_client = trove.common.remote.nova_client (StrOpt) Client to send Nova calls to.
remote_swift_client = trove.common.remote.swift_client (StrOpt) Client to send Swift calls to.

Table 4.6. Description of cluster configuration options
Configuration option = Default value Description
[DEFAULT]
cluster_delete_time_out = 180 (IntOpt) Maximum time (in seconds) to wait for a cluster delete.
cluster_usage_timeout = 675 (IntOpt) Maximum time (in seconds) to wait for a cluster to become active.
clusters_page_size = 20 (IntOpt) Page size for listing clusters.

Table 4.7. Description of common configuration options
Configuration option = Default value Description
[DEFAULT]
configurations_page_size = 20 (IntOpt) Page size for listing configurations.
databases_page_size = 20 (IntOpt) Page size for listing databases.
default_datastore = None (StrOpt) The default datastore id or name to use if one is not provided by the user. If the default value is None, the field becomes required in the instance create request.
default_neutron_networks = (ListOpt) List of IDs for management networks which should be attached to the instance regardless of what NICs are specified in the create API call.
default_notification_level = INFO (StrOpt) Default notification level for outgoing notifications
default_password_length = 36 (IntOpt) Character length of generated passwords.
expected_filetype_suffixes = json (ListOpt) Filetype endings not to be reattached to an ID by the utils method correct_id_with_req.
host = 0.0.0.0 (StrOpt) Host to listen for RPC messages.
lock_path = None (StrOpt) Directory to use for lock files.
memcached_servers = None (ListOpt) Memcached servers or None for in process cache.
pybasedir = /usr/lib/python/site-packages/trove/trove (StrOpt) Directory where the Trove python module is installed.
pydev_path = None (StrOpt) Set path to pydevd library, used if pydevd is not found in python sys.path.
taskmanager_queue = taskmanager (StrOpt) Message queue name the Taskmanager will listen to.
template_path = /etc/trove/templates/ (StrOpt) Path which leads to datastore templates.
usage_timeout = 600 (IntOpt) Maximum time (in seconds) to wait for a Guest to become active.
[keystone_authtoken]
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.

Table 4.8. Description of Compute configuration options
Configuration option = Default value Description
[DEFAULT]
ip_regex = None (StrOpt) List IP addresses that match this regular expression.
nova_compute_service_type = compute (StrOpt) Service type to use when searching catalog.
nova_compute_url = None (StrOpt) URL without the tenant segment.
root_grant = ALL (ListOpt) Permissions to grant to the 'root' user.
root_grant_option = True (BoolOpt) Assign the 'root' user GRANT permissions.

Table 4.9. Description of logging configuration options
Configuration option = Default value Description
[DEFAULT]
backdoor_port = None (StrOpt) Enable eventlet backdoor. Acceptable values are 0, <port>, and <start>:<end>, where 0 results in listening on a random tcp port number; <port> results in listening on the specified port number (and not enabling backdoor if that port is in use); and <start>:<end> results in listening on the smallest unused port number within the specified range of port numbers. The chosen port is displayed in the service's log file.
backlog = 4096 (IntOpt) Number of backlog requests to configure the socket with
disable_process_locking = False (BoolOpt) Whether to disable inter-process locks
pydev_debug = disabled (StrOpt) Enable or disable pydev remote debugging. If value is 'auto' tries to connect to remote debugger server, but in case of error continues running with debugging disabled.
pydev_debug_host = None (StrOpt) Pydev debug server host (localhost by default).
pydev_debug_port = None (IntOpt) Pydev debug server port (5678 by default).

Table 4.10. Description of DNS configuration options
Configuration option = Default value Description
[DEFAULT]
dns_account_id = (StrOpt) Tenant ID for DNSaaS.
dns_auth_url = (StrOpt) Authentication URL for DNSaaS.
dns_domain_id = (StrOpt) Domain ID used for adding DNS entries.
dns_domain_name = (StrOpt) Domain name used for adding DNS entries.
dns_driver = trove.dns.driver.DnsDriver (StrOpt) Driver for DNSaaS.
dns_endpoint_url = 0.0.0.0 (StrOpt) Endpoint URL for DNSaaS.
dns_hostname = (StrOpt) Hostname used for adding DNS entries.
dns_instance_entry_factory = trove.dns.driver.DnsInstanceEntryFactory (StrOpt) Factory for adding DNS entries.
dns_management_base_url = (StrOpt) Management URL for DNSaaS.
dns_passkey = (StrOpt) Passkey for DNSaaS.
dns_region = (StrOpt) Region name for DNSaaS.
dns_service_type = (StrOpt) Service Type for DNSaaS.
dns_time_out = 120 (IntOpt) Maximum time (in seconds) to wait for a DNS entry add.
dns_ttl = 300 (IntOpt) Time (in seconds) before a refresh of DNS information occurs.
dns_username = (StrOpt) Username for DNSaaS.
trove_dns_support = False (BoolOpt) Whether Trove should add DNS entries on create (using Designate DNSaaS).

Table 4.11. Description of guest agent configuration options
Configuration option = Default value Description
[DEFAULT]
agent_call_high_timeout = 60 (IntOpt) Maximum time (in seconds) to wait for Guest Agent 'slow' requests (such as restarting the database).
agent_call_low_timeout = 5 (IntOpt) Maximum time (in seconds) to wait for Guest Agent 'quick'requests (such as retrieving a list of users or databases).
agent_heartbeat_time = 10 (IntOpt) Maximum time (in seconds) for the Guest Agent to reply to a heartbeat request.
agent_replication_snapshot_timeout = 36000 (IntOpt) Maximum time (in seconds) to wait for taking a Guest Agent replication snapshot.
guest_config = $pybasedir/etc/trove/trove-guestagent.conf.sample (StrOpt) Path to the Guest Agent config file.
guest_id = None (StrOpt) ID of the Guest Instance.
ignore_dbs = lost+found, mysql, information_schema (ListOpt) Databases to exclude when listing databases.
ignore_users = os_admin, root (ListOpt) Users to exclude when listing users.
mount_options = defaults,noatime (StrOpt) Options to use when mounting a volume.
storage_namespace = trove.guestagent.strategies.storage.swift (StrOpt) Namespace to load the default storage strategy from.
storage_strategy = SwiftStorage (StrOpt) Default strategy to store backups.
usage_sleep_time = 5 (IntOpt) Time to sleep during the check for an active Guest.

Table 4.12. Description of Orchestration module configuration options
Configuration option = Default value Description
[DEFAULT]
heat_service_type = orchestration (StrOpt) Service type to use when searching catalog.
heat_time_out = 60 (IntOpt) Maximum time (in seconds) to wait for a Heat request to complete.
heat_url = None (StrOpt) URL without the tenant segment.

Table 4.13. Description of logging configuration options
Configuration option = Default value Description
[DEFAULT]
debug = False (BoolOpt) Print debugging output (set logging level to DEBUG instead of default WARNING 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 (ListOpt) List of logger=LEVEL pairs.
fatal_deprecations = False (BoolOpt) Enables or disables fatal status of deprecations.
format_options = -m 5 (StrOpt) Options to use when formatting a volume.
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.
log_date_format = %Y-%m-%d %H:%M:%S (StrOpt) Format string for %%(asctime)s in log records. Default: %(default)s .
log_dir = None (StrOpt) (Optional) The base directory used for relative --log-file paths.
log_file = None (StrOpt) (Optional) Name of log file to output to. If no default is set, logging will go to stdout.
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.
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 TRACE %(name)s %(instance)s (StrOpt) Prefix each line of exception output with this format.
network_label_regex = ^private$ (StrOpt) Regular expression to match Trove network labels.
publish_errors = False (BoolOpt) Enables or disables publication of error events.
syslog_log_facility = LOG_USER (StrOpt) Syslog facility to receive log lines.
use_stderr = True (BoolOpt) Log output to standard error.
use_syslog = False (BoolOpt) Use syslog for logging. Existing syslog format is DEPRECATED during I, and will change in J to honor RFC5424.
use_syslog_rfc_format = False (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 I, and will be removed in J.
verbose = False (BoolOpt) Print more verbose output (set logging level to INFO instead of default WARNING level).

Table 4.14. Description of network configuration options
Configuration option = Default value Description
[DEFAULT]
network_driver = trove.network.nova.NovaNetwork (StrOpt) Describes the actual network manager used for the management of network attributes (security groups, floating IPs, etc.).
neutron_service_type = network (StrOpt) Service type to use when searching catalog.
neutron_url = None (StrOpt) URL without the tenant segment.

Table 4.15. Description of nova configuration options
Configuration option = Default value Description
[DEFAULT]
nova_proxy_admin_pass = (StrOpt) Admin password used to connect to Nova.
nova_proxy_admin_tenant_name = (StrOpt) Admin tenant used to connect to Nova.
nova_proxy_admin_user = (StrOpt) Admin username used to connect to Nova.

Table 4.16. Description of quota configuration options
Configuration option = Default value Description
[DEFAULT]
max_accepted_volume_size = 5 (IntOpt) Default maximum volume size (in GB) for an instance.
max_backups_per_user = 50 (IntOpt) Default maximum number of backups created by a tenant.
max_instances_per_user = 5 (IntOpt) Default maximum number of instances per tenant.
max_volumes_per_user = 20 (IntOpt) Default maximum volume capacity (in GB) spanning across all Trove volumes per tenant.
quota_driver = trove.quota.quota.DbQuotaDriver (StrOpt) Default driver to use for quota checks.

Table 4.17. Description of Redis configuration options
Configuration option = Default value Description
[matchmaker_redis]
host = 127.0.0.1 (StrOpt) Host to locate redis
password = None (StrOpt) Password for Redis server. (optional)
port = 6379 (IntOpt) Use this port to connect to redis host.
[matchmaker_ring]
ringfile = /etc/oslo/matchmaker_ring.json (StrOpt) Matchmaker ring file (JSON)

Table 4.18. Description of testing configuration options
Configuration option = Default value Description
[DEFAULT]
fake_rabbit = False (BoolOpt) If passed, use a fake RabbitMQ provider

Table 4.19. Description of swift configuration options
Configuration option = Default value Description
[DEFAULT]
swift_service_type = object-store (StrOpt) Service type to use when searching catalog.
swift_url = None (StrOpt) URL ending in AUTH_.

Table 4.20. Description of taskmanager configuration options
Configuration option = Default value Description
[DEFAULT]
cloudinit_location = /etc/trove/cloudinit (StrOpt) Path to folder with cloudinit scripts.
datastore_manager = None (StrOpt) Manager class in the Guest Agent, set up by the Taskmanager on instance provision.
datastore_registry_ext = {} (DictOpt) Extension for default datastore managers. Allows the use of custom managers for each of the datastores supported by Trove.
exists_notification_ticks = 360 (IntOpt) Number of report_intervals to wait between pushing events (see report_interval).
exists_notification_transformer = None (StrOpt) Transformer for exists notifications.
reboot_time_out = 120 (IntOpt) Maximum time (in seconds) to wait for a server reboot.
resize_time_out = 600 (IntOpt) Maximum time (in seconds) to wait for a server resize.
restore_usage_timeout = 36000 (IntOpt) Maximum time (in seconds) to wait for a Guest instance restored from a backup to become active.
revert_time_out = 600 (IntOpt) Maximum time (in seconds) to wait for a server resize revert.
server_delete_time_out = 60 (IntOpt) Maximum time (in seconds) to wait for a server delete.
state_change_wait_time = 180 (IntOpt) Maximum time (in seconds) to wait for a state change.
update_status_on_fail = True (BoolOpt) Set the service and instance task statuses to ERROR when an instance fails to become active within the configured usage_timeout.
usage_sleep_time = 5 (IntOpt) Time to sleep during the check for an active Guest.
use_heat = False (BoolOpt) Use Heat for provisioning.
use_nova_server_config_drive = False (BoolOpt) Use config drive for file injection when booting instance.
use_nova_server_volume = False (BoolOpt) Whether to provision a Cinder volume for the Nova instance.
verify_swift_checksum_on_restore = True (BoolOpt) Enable verification of Swift checksum before starting restore. Makes sure the checksum of original backup matches the checksum of the Swift backup file.

Table 4.21. Description of volume configuration options
Configuration option = Default value Description
[DEFAULT]
block_device_mapping = vdb (StrOpt) Block device to map onto the created instance.
cinder_service_type = volumev2 (StrOpt) Service type to use when searching catalog.
cinder_url = None (StrOpt) URL without the tenant segment.
cinder_volume_type = None (StrOpt) Volume type to use when provisioning a Cinder volume.
device_path = /dev/vdb (StrOpt) Device path for volume if volume support is enabled.
trove_volume_support = True (BoolOpt) Whether to provision a Cinder volume for datadir.
volume_format_timeout = 120 (IntOpt) Maximum time (in seconds) to wait for a volume format.
volume_fstype = ext3 (StrOpt) File system type used to format a volume.
volume_time_out = 60 (IntOpt) Maximum time (in seconds) to wait for a volume attach.

Questions? Discuss on ask.openstack.org
Found an error? Report a bug against this page

loading table of contents...