2013-10-17 13:42:40 +04:00

2289 lines
58 KiB
Python

from ostack_validator.schema import ConfigSchemaRegistry
cinder = ConfigSchemaRegistry.register_schema(project='cinder')
cinder.version('2013.1.3')
cinder.param('', type='string', default='', description="")
cinder.param('', type='string', default='', description="cinder.conf sample")
cinder.section('DEFAULT')
cinder.param(
'fatal_exception_format_errors',
type='boolean',
default='false',
description="make exception message format errors fatal")
cinder.param(
'policy_file',
type='string',
default='policy.json',
description="JSON file representing policy")
cinder.param(
'policy_default_rule',
type='string',
default='default',
description="Rule checked when requested rule is not found")
cinder.param(
'quota_volumes',
type='integer',
default='10',
description="number of volumes allowed per project")
cinder.param(
'quota_snapshots',
type='integer',
default='10',
description="number of volume snapshots allowed per project")
cinder.param(
'quota_gigabytes',
type='integer',
default='1000',
description="number of volume gigabytes")
cinder.param(
'reservation_expire',
type='integer',
default='86400',
description="number of seconds until a reservation expires")
cinder.param(
'until_refresh',
type='integer',
default='0',
description="count of reservations until usage is refreshed")
cinder.param(
'max_age',
type='integer',
default='0',
description="number of seconds between subsequent usage refreshes")
cinder.param(
'quota_driver',
type='string',
default='cinder.quota.DbQuotaDriver',
description="default driver to use for quota checks")
cinder.param(
'use_default_quota_class',
type='boolean',
default='true',
description="whether to use default quota class for default quota")
cinder.param(
'report_interval',
type='integer',
default='10',
description="seconds between nodes reporting state to datastore")
cinder.param(
'periodic_interval',
type='integer',
default='60',
description="seconds between running periodic tasks")
cinder.param(
'periodic_fuzzy_delay',
type='integer',
default='60',
description="range of seconds to randomly delay when starting the periodic task scheduler to reduce stampeding.")
cinder.param(
'osapi_volume_listen',
type='string',
default='0.0.0.0',
description="IP address for OpenStack Volume API to listen")
cinder.param(
'osapi_volume_listen_port',
type='integer',
default='8776',
description="port for os volume api to listen")
cinder.param(
'sqlite_clean_db',
type='string',
default='clean.sqlite',
description="File name of clean sqlite db")
cinder.param(
'fake_tests',
type='boolean',
default='true',
description="should we use everything for testing")
cinder.param(
'backlog',
type='integer',
default='4096',
description="Number of backlog requests to configure the socket with")
cinder.param(
'tcp_keepidle',
type='integer',
default='600',
description="Sets the value of TCP_KEEPIDLE in seconds for each server socket. Not supported on OS X.")
cinder.param(
'ssl_ca_file',
type='string',
default='<None>',
description="CA certificate file to use to verify connecting clients")
cinder.param(
'ssl_cert_file',
type='string',
default='<None>',
description="Certificate file to use when starting the server securely")
cinder.param(
'ssl_key_file',
type='string',
default='<None>',
description="Private key file to use when starting the server securely")
cinder.param(
'osapi_max_limit',
type='integer',
default='1000',
description="the maximum number of items returned in a single response from a collection resource")
cinder.param(
'osapi_volume_base_URL',
type='string',
default='<None>',
description="Base URL that will be presented to users in links to the OpenStack Volume API")
cinder.param(
'use_forwarded_for',
type='boolean',
default='false',
description="Treat X-Forwarded-For as the canonical remote address. Only enable this if you have a sanitizing proxy.")
cinder.param(
'osapi_max_request_body_size',
type='integer',
default='114688',
description="Max size for body of a request")
cinder.param(
'backup_ceph_conf',
type='string',
default='/etc/ceph/ceph.conf',
description="Ceph config file to use.")
cinder.param(
'backup_ceph_user',
type='string',
default='cinder',
description="the Ceph user to connect with")
cinder.param(
'backup_ceph_chunk_size',
type='integer',
default='134217728',
description="the chunk size in bytes that a backup will be broken into before transfer to backup store")
cinder.param(
'backup_ceph_pool',
type='string',
default='backups',
description="the Ceph pool to backup to")
cinder.param(
'backup_ceph_stripe_unit',
type='integer',
default='0',
description="RBD stripe unit to use when creating a backup image")
cinder.param(
'backup_ceph_stripe_count',
type='integer',
default='0',
description="RBD stripe count to use when creating a backup image")
cinder.param(
'restore_discard_excess_bytes',
type='boolean',
default='true',
description="If True, always discard excess bytes when restoring volumes.")
cinder.param(
'backup_swift_url',
type='string',
default='http://localhost:8080/v1/AUTH_',
description="The URL of the Swift endpoint")
cinder.param(
'backup_swift_auth',
type='string',
default='per_user',
description="Swift authentication mechanism")
cinder.param(
'backup_swift_user',
type='string',
default='<None>',
description="Swift user name")
cinder.param(
'backup_swift_key',
type='string',
default='<None>',
description="Swift key for authentication")
cinder.param(
'backup_swift_container',
type='string',
default='volumebackups',
description="The default Swift container to use")
cinder.param(
'backup_swift_object_size',
type='integer',
default='52428800',
description="The size in bytes of Swift backup objects")
cinder.param(
'backup_swift_retry_attempts',
type='integer',
default='3',
description="The number of retries to make for Swift operations")
cinder.param(
'backup_swift_retry_backoff',
type='integer',
default='2',
description="The backoff time in seconds between Swift retries")
cinder.param(
'backup_compression_algorithm',
type='string',
default='zlib',
description="Compression algorithm")
cinder.param(
'backup_tsm_volume_prefix',
type='string',
default='backup',
description="Volume prefix for the backup id when backing up to TSM")
cinder.param(
'backup_tsm_password',
type='string',
default='password',
description="TSM password for the running username")
cinder.param(
'backup_tsm_compression',
type='boolean',
default='true',
description="Enable or Disable compression for backups")
cinder.param(
'backup_driver',
type='string',
default='cinder.backup.drivers.swift',
description="Driver to use for backups.")
cinder.param(
'num_volume_device_scan_tries',
type='integer',
default='3',
description="The maximum number of times to rescan targetsto find volume")
cinder.param(
'iscsi_helper',
type='string',
default='tgtadm',
description="iscsi target user-land tool to use")
cinder.param(
'volumes_dir',
type='string',
default='$state_path/volumes',
description="Volume configuration file storage directory")
cinder.param(
'iet_conf',
type='string',
default='/etc/iet/ietd.conf',
description="IET configuration file")
cinder.param(
'lio_initiator_iqns',
type='string',
default='',
description="Comma-separatd list of initiator IQNs allowed to connect to the iSCSI target.")
cinder.param(
'iscsi_iotype',
type='string',
default='fileio',
description="Sets the behavior of the iSCSI target to either perform blockio or fileio optionally, auto can be set and Cinder will autodetect type of backing device")
cinder.param(
'iser_helper',
type='string',
default='tgtadm',
description="iser target user-land tool to use")
cinder.param(
'volumes_dir',
type='string',
default='$state_path/volumes',
description="Volume configuration file storage directory")
cinder.param(
'nfs_mount_point_base',
type='string',
default='$state_path/mnt',
description="Base dir containing mount points for nfs shares")
cinder.param(
'nfs_mount_options',
type='string',
default='<None>',
description="Mount options passed to the nfs client. See section of the nfs man page for details")
cinder.param(
'glusterfs_mount_point_base',
type='string',
default='$state_path/mnt',
description="Base dir containing mount points for gluster shares")
cinder.param(
'connection_type',
type='string',
default='<None>',
description="Virtualization api connection type : libvirt, xenapi, or fake")
cinder.param(
'api_paste_config',
type='string',
default='api-paste.ini',
description="File name for the paste.deploy config for cinder-api")
cinder.param(
'pybasedir',
type='string',
default='/usr/lib/python/site-packages',
description="Directory where the cinder python module is installed")
cinder.param(
'bindir',
type='string',
default='$pybasedir/bin',
description="Directory where cinder binaries are installed")
cinder.param(
'state_path',
type='string',
default='$pybasedir',
description="Top-level directory for maintaining cinder's state")
cinder.param(
'my_ip',
type='string',
default='10.0.0.1',
description="ip address of this host")
cinder.param(
'glance_host',
type='string',
default='$my_ip',
description="default glance hostname or ip")
cinder.param(
'glance_port',
type='integer',
default='9292',
description="default glance port")
cinder.param(
'glance_api_servers',
type='list',
default='$glance_host:$glance_port',
description="A list of the glance api servers available to cinder")
cinder.param(
'glance_api_version',
type='integer',
default='1',
description="Version of the glance api to use")
cinder.param(
'glance_num_retries',
type='integer',
default='0',
description="Number retries when downloading an image from glance")
cinder.param(
'glance_api_insecure',
type='boolean',
default='false',
description="Allow to perform insecure SSL")
cinder.param(
'glance_api_ssl_compression',
type='boolean',
default='false',
description="Whether to attempt to negotiate SSL layer compression when using SSL")
cinder.param(
'glance_request_timeout',
type='integer',
default='<None>',
description="http/https timeout value for glance operations. If no value")
cinder.param(
'scheduler_topic',
type='string',
default='cinder-scheduler',
description="the topic scheduler nodes listen on")
cinder.param(
'volume_topic',
type='string',
default='cinder-volume',
description="the topic volume nodes listen on")
cinder.param(
'backup_topic',
type='string',
default='cinder-backup',
description="the topic volume backup nodes listen on")
cinder.param(
'enable_v1_api',
type='boolean',
default='true',
description="Deploy v1 of the Cinder API. ")
cinder.param(
'enable_v2_api',
type='boolean',
default='true',
description="Deploy v2 of the Cinder API. ")
cinder.param(
'api_rate_limit',
type='boolean',
default='true',
description="whether to rate limit the api")
cinder.param(
'osapi_volume_ext_list',
type='list',
default='',
description="Specify list of extensions to load when using osapi_volume_extension option with cinder.api.contrib.select_extensions")
cinder.param(
'osapi_volume_extension',
type='multi',
default='cinder.api.contrib.standard_extensions',
description="osapi volume extension to load")
cinder.param(
'volume_manager',
type='string',
default='cinder.volume.manager.VolumeManager',
description="full class name for the Manager for volume")
cinder.param(
'backup_manager',
type='string',
default='cinder.backup.manager.BackupManager',
description="full class name for the Manager for volume backup")
cinder.param(
'scheduler_manager',
type='string',
default='cinder.scheduler.manager.SchedulerManager',
description="full class name for the Manager for scheduler")
cinder.param(
'host',
type='string',
default='cinder',
description="Name of this node. This can be an opaque identifier. It is not necessarily a hostname, FQDN, or IP address.")
cinder.param(
'storage_availability_zone',
type='string',
default='nova',
description="availability zone of this node")
cinder.param(
'default_availability_zone',
type='string',
default='<None>',
description="default availability zone to use when creating a new volume. If this is not set then we use the value from the storage_availability_zone option as the default availability_zone for new volumes.")
cinder.param(
'memcached_servers',
type='list',
default='<None>',
description="Memcached servers or None for in process cache.")
cinder.param(
'default_volume_type',
type='string',
default='<None>',
description="default volume type to use")
cinder.param(
'volume_usage_audit_period',
type='string',
default='month',
description="time period to generate volume usages for. Time period must be hour, day, month or year")
cinder.param(
'root_helper',
type='string',
default='sudo',
description="Deprecated: command to use for running commands as root")
cinder.param(
'rootwrap_config',
type='string',
default='/etc/cinder/rootwrap.conf',
description="Path to the rootwrap configuration file to use for running commands as root")
cinder.param(
'monkey_patch',
type='boolean',
default='false',
description="Enable monkey patching")
cinder.param(
'monkey_patch_modules',
type='list',
default='',
description="List of modules/decorators to monkey patch")
cinder.param(
'service_down_time',
type='integer',
default='60',
description="maximum time since last check-in for up service")
cinder.param(
'volume_api_class',
type='string',
default='cinder.volume.api.API',
description="The full class name of the volume API class to use")
cinder.param(
'backup_api_class',
type='string',
default='cinder.backup.api.API',
description="The full class name of the volume backup API class")
cinder.param(
'auth_strategy',
type='string',
default='noauth',
description="The strategy to use for auth. Supports noauth, keystone, and deprecated.")
cinder.param(
'enabled_backends',
type='list',
default='<None>',
description="A list of backend names to use. These backend names should be backed by a unique [CONFIG] group with its options")
cinder.param(
'no_snapshot_gb_quota',
type='boolean',
default='false',
description="Whether snapshots count against GigaByte quota")
cinder.param(
'transfer_api_class',
type='string',
default='cinder.transfer.api.API',
description="The full class name of the volume transfer API class")
cinder.param(
'compute_api_class',
type='string',
default='cinder.compute.nova.API',
description="The full class name of the compute API class to use")
cinder.param(
'nova_catalog_info',
type='string',
default='compute:nova:publicURL',
description="Info to match when looking for nova in the service catalog. Format is : separated values of the form: <service_type>:<service_name>:<endpoint_type>")
cinder.param(
'nova_catalog_admin_info',
type='string',
default='compute:nova:adminURL',
description="Same as nova_catalog_info, but for admin endpoint.")
cinder.param(
'nova_endpoint_template',
type='string',
default='<None>',
description="Override service catalog lookup with template for nova endpoint e.g. http://localhost:8774/v2/%(tenant_id)s")
cinder.param(
'nova_endpoint_admin_template',
type='string',
default='<None>',
description="Same as nova_endpoint_template, but for admin endpoint.")
cinder.param(
'os_region_name',
type='string',
default='<None>',
description="region name of this node")
cinder.param(
'nova_ca_certificates_file',
type='string',
default='<None>',
description="Location of ca certicates file to use for nova client requests.")
cinder.param(
'nova_api_insecure',
type='boolean',
default='false',
description="Allow to perform insecure SSL requests to nova")
cinder.param(
'db_backend',
type='string',
default='sqlalchemy',
description="The backend to use for db")
cinder.param(
'enable_new_services',
type='boolean',
default='true',
description="Services to be added to the available pool on create")
cinder.param(
'volume_name_template',
type='string',
default='volume-%s',
description="Template string to be used to generate volume names")
cinder.param(
'snapshot_name_template',
type='string',
default='snapshot-%s',
description="Template string to be used to generate snapshot names")
cinder.param(
'backup_name_template',
type='string',
default='backup-%s',
description="Template string to be used to generate backup names")
cinder.param(
'db_driver',
type='string',
default='cinder.db',
description="driver to use for database access")
cinder.param(
'allowed_direct_url_schemes',
type='list',
default='',
description="A list of url schemes that can be downloaded directly via the direct_url. Currently supported schemes: [file].")
cinder.param(
'image_conversion_dir',
type='string',
default='$state_path/conversion',
description="Directory used for temporary storage during image conversion")
cinder.param(
'keymgr_api_class',
type='string',
default='cinder.keymgr.not_implemented_key_mgr.NotImplementedKeyManager',
description="The full class name of the key manager API class")
cinder.param(
'backend',
type='string',
default='sqlalchemy',
description="The backend to use for db")
cinder.param(
'use_tpool',
type='boolean',
default='false',
description="Enable the experimental use of thread pooling for all DB API calls")
cinder.param(
'connection',
type='string',
default='sqlite:////cinder/openstack/common/db/$sqlite_db',
description="The SQLAlchemy connection string used to connect to the database")
cinder.param(
'sql_connection',
type='string',
default='sqlite:////nova/openstack/common/db/$sqlite_db',
description="The SQLAlchemy connection string used to connect to the database",
deprecation_message='Deprecated in favor of "[DEFAULT]connection" parameter')
cinder.param(
'idle_timeout',
type='integer',
default='3600',
description="timeout before idle sql connections are reaped")
cinder.param(
'min_pool_size',
type='integer',
default='1',
description="Minimum number of SQL connections to keep open in a pool")
cinder.param(
'max_pool_size',
type='integer',
default='5',
description="Maximum number of SQL connections to keep open in a pool")
cinder.param(
'max_retries',
type='integer',
default='10',
description="maximum db connection retries during startup.")
cinder.param(
'retry_interval',
type='integer',
default='10',
description="interval between retries of opening a sql connection")
cinder.param(
'max_overflow',
type='integer',
default='<None>',
description="If set, use this value for max_overflow with sqlalchemy")
cinder.param(
'connection_debug',
type='integer',
default='0',
description="Verbosity of SQL debugging information. 0=None, 100=Everything")
cinder.param(
'connection_trace',
type='boolean',
default='false',
description="Add python stack traces to SQL as comment strings")
cinder.param(
'sqlite_db',
type='string',
default='cinder.sqlite',
description="the filename to use with sqlite")
cinder.param(
'sqlite_synchronous',
type='boolean',
default='true',
description="If true, use synchronous mode for sqlite")
cinder.param(
'backdoor_port',
type='integer',
default='<None>',
description="port for eventlet backdoor to listen")
cinder.param(
'disable_process_locking',
type='boolean',
default='false',
description="Whether to disable inter-process locks")
cinder.param(
'lock_path',
type='string',
default='<None>',
description="Directory to use for lock files. Default to a temp directory")
cinder.param(
'debug',
type='boolean',
default='false',
description="Print debugging output")
cinder.param(
'verbose',
type='boolean',
default='false',
description="Print more verbose output")
cinder.param(
'use_stderr',
type='boolean',
default='true',
description="Log output to standard error")
cinder.param(
'logging_context_format_string',
type='string',
default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [%(request_id)s %(user)s %(tenant)s] %(instance)s%(message)s',
description="format string to use for log messages with context")
cinder.param(
'logging_default_format_string',
type='string',
default='%(asctime)s.%(msecs)03d %(process)d %(levelname)s %(name)s [-] %(instance)s%(message)s',
description="format string to use for log messages without context")
cinder.param(
'logging_debug_format_suffix',
type='string',
default='%(funcName)s %(pathname)s:%(lineno)d',
description="data to append to log format when level is DEBUG")
cinder.param(
'logging_exception_prefix',
type='string',
default='%(asctime)s.%(msecs)03d %(process)d TRACE %(name)s %(instance)s',
description="prefix each line of exception output with this format")
cinder.param(
'default_log_levels',
type='list',
default='amqplibWARN,sqlalchemyWARN,botoWARN,sudsINFO,keystoneINFO,eventlet.wsgi.serverWARN',
description="list of logger=LEVEL pairs")
cinder.param(
'publish_errors',
type='boolean',
default='false',
description="publish error events")
cinder.param(
'fatal_deprecations',
type='boolean',
default='false',
description="make deprecations fatal")
cinder.param(
'instance_format',
type='string',
default='"[instance: %(uuid)s] "',
description="If an instance is passed with the log message, format it like this")
cinder.param(
'instance_uuid_format',
type='string',
default='"[instance: %(uuid)s] "',
description="If an instance UUID is passed with the log message, format it like this")
cinder.param(
'log_config',
type='string',
default='<None>',
description="If this option is specified, the logging configuration file specified is used and overrides any other logging options specified. Please see the Python logging module documentation for details on logging configuration files.")
cinder.param(
'log_format',
type='string',
default='<None>',
description="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.")
cinder.param(
'log_date_format',
type='string',
default='%Y-%m-%d %H:%M:%S',
description="Format string for %%(asctime)s in log records. Default: %(default)s")
cinder.param(
'log_file',
type='string',
default='<None>',
description="(Optional) Name of log file to output to. If no default is set, logging will go to stdout.")
cinder.param(
'log_dir',
type='string',
default='<None>',
description="(Optional) The base directory used for relative --log-file paths")
cinder.param(
'use_syslog',
type='boolean',
default='false',
description="Use syslog for logging.")
cinder.param(
'syslog_log_facility',
type='string',
default='LOG_USER',
description="syslog facility to receive log lines")
cinder.param(
'default_notification_level',
type='string',
default='INFO',
description="Default notification level for outgoing notifications")
cinder.param(
'default_publisher_id',
type='string',
default='<None>',
description="Default publisher_id for outgoing notifications")
cinder.param(
'notification_topics',
type='list',
default='notifications',
description="AMQP topic used for OpenStack notifications")
cinder.param(
'topics',
type='list',
default='notifications',
description="AMQP topic(s) used for OpenStack notifications")
cinder.param(
'run_external_periodic_tasks',
type='boolean',
default='true',
description="Some periodic tasks can be run in a separate process. Should we run them here?")
cinder.param(
'rpc_backend',
type='string',
default='cinder.openstack.common.rpc.impl_kombu',
description="The messaging module to use, defaults to kombu.")
cinder.param(
'rpc_thread_pool_size',
type='integer',
default='64',
description="Size of RPC thread pool")
cinder.param(
'rpc_conn_pool_size',
type='integer',
default='30',
description="Size of RPC connection pool")
cinder.param(
'rpc_response_timeout',
type='integer',
default='60',
description="Seconds to wait for a response from call or multicall")
cinder.param(
'rpc_cast_timeout',
type='integer',
default='30',
description="Seconds to wait before a cast expires")
cinder.param(
'allowed_rpc_exception_modules',
type='list',
default='cinder.openstack.common.exception,nova.exception,cinder.exception,exceptions',
description="Modules of exceptions that are permitted to be recreatedupon receiving exception data from an rpc call.")
cinder.param(
'fake_rabbit',
type='boolean',
default='false',
description="If passed, use a fake RabbitMQ provider")
cinder.param(
'control_exchange',
type='string',
default='openstack',
description="AMQP exchange to connect to if using RabbitMQ or Qpid")
cinder.param(
'amqp_rpc_single_reply_queue',
type='boolean',
default='false',
description="Enable a fast single reply queue if using AMQP based RPC like RabbitMQ or Qpid.")
cinder.param(
'amqp_durable_queues',
type='boolean',
default='false',
description="Use durable queues in amqp.")
cinder.param(
'amqp_auto_delete',
type='boolean',
default='false',
description="Auto-delete queues in amqp.")
cinder.param(
'kombu_ssl_version',
type='string',
default='',
description="SSL version to use")
cinder.param(
'kombu_ssl_keyfile',
type='string',
default='',
description="SSL key file")
cinder.param(
'kombu_ssl_certfile',
type='string',
default='',
description="SSL cert file")
cinder.param(
'kombu_ssl_ca_certs',
type='string',
default='',
description="SSL certification authority file")
cinder.param(
'rabbit_host',
type='string',
default='localhost',
description="The RabbitMQ broker address where a single node is used")
cinder.param(
'rabbit_port',
type='integer',
default='5672',
description="The RabbitMQ broker port where a single node is used")
cinder.param(
'rabbit_hosts',
type='list',
default='$rabbit_host:$rabbit_port',
description="RabbitMQ HA cluster host:port pairs")
cinder.param(
'rabbit_use_ssl',
type='boolean',
default='false',
description="connect over SSL for RabbitMQ")
cinder.param(
'rabbit_userid',
type='string',
default='guest',
description="the RabbitMQ userid")
cinder.param(
'rabbit_password',
type='string',
default='guest',
description="the RabbitMQ password")
cinder.param(
'rabbit_virtual_host',
type='string',
default='/',
description="the RabbitMQ virtual host")
cinder.param(
'rabbit_retry_interval',
type='integer',
default='1',
description="how frequently to retry connecting with RabbitMQ")
cinder.param(
'rabbit_retry_backoff',
type='integer',
default='2',
description="how long to backoff for between retries when connecting to RabbitMQ")
cinder.param(
'rabbit_max_retries',
type='integer',
default='0',
description="maximum retries with trying to connect to RabbitMQ")
cinder.param(
'rabbit_ha_queues',
type='boolean',
default='false',
description="use H/A queues in RabbitMQ")
cinder.param(
'qpid_hostname',
type='string',
default='localhost',
description="Qpid broker hostname")
cinder.param(
'qpid_port',
type='integer',
default='5672',
description="Qpid broker port")
cinder.param(
'qpid_hosts',
type='list',
default='$qpid_hostname:$qpid_port',
description="Qpid HA cluster host:port pairs")
cinder.param(
'qpid_username',
type='string',
default='',
description="Username for qpid connection")
cinder.param(
'qpid_password',
type='string',
default='',
description="Password for qpid connection")
cinder.param(
'qpid_sasl_mechanisms',
type='string',
default='',
description="Space separated list of SASL mechanisms to use for auth")
cinder.param(
'qpid_heartbeat',
type='integer',
default='60',
description="Seconds between connection keepalive heartbeats")
cinder.param(
'qpid_protocol',
type='string',
default='tcp',
description="Transport to use, either 'tcp' or 'ssl'")
cinder.param(
'qpid_tcp_nodelay',
type='boolean',
default='true',
description="Disable Nagle algorithm")
cinder.param(
'qpid_topology_version',
type='integer',
default='1',
description="The qpid topology version to use. Version 1 is what was originally used by impl_qpid. Version 2 includes some backwards-incompatible changes that allow broker federation to work. Users should update to version 2 when they are able to take everything down, as it requires a clean break.")
cinder.param(
'rpc_zmq_bind_address',
type='string',
default='*',
description="ZeroMQ bind address. Should be a wildcard")
cinder.param(
'rpc_zmq_matchmaker',
type='string',
default='cinder.openstack.common.rpc.matchmaker.MatchMakerLocalhost',
description="MatchMaker driver")
cinder.param(
'rpc_zmq_port',
type='integer',
default='9501',
description="ZeroMQ receiver listening port")
cinder.param(
'rpc_zmq_contexts',
type='integer',
default='1',
description="Number of ZeroMQ contexts, defaults to 1")
cinder.param(
'rpc_zmq_topic_backlog',
type='integer',
default='<None>',
description="Maximum number of ingress messages to locally buffer per topic. Default is unlimited.")
cinder.param(
'rpc_zmq_ipc_dir',
type='string',
default='/var/run/openstack',
description="Directory for holding IPC sockets")
cinder.param(
'rpc_zmq_host',
type='string',
default='cinder',
description="Name of this node. Must be a valid hostname, FQDN, or IP address. Must match 'host' option, if running Nova.")
cinder.param(
'matchmaker_ringfile',
type='string',
default='/etc/nova/matchmaker_ring.json',
description="Matchmaker ring file")
cinder.param(
'matchmaker_heartbeat_freq',
type='integer',
default='300',
description="Heartbeat frequency")
cinder.param(
'matchmaker_heartbeat_ttl',
type='integer',
default='600',
description="Heartbeat time-to-live.")
cinder.param(
'host',
type='string',
default='127.0.0.1',
description="Host to locate redis")
cinder.param(
'port',
type='integer',
default='6379',
description="Use this port to connect to redis host.")
cinder.param(
'password',
type='string',
default='<None>',
description="Password for Redis server.")
cinder.param(
'scheduler_host_manager',
type='string',
default='cinder.scheduler.host_manager.HostManager',
description="The scheduler host manager class to use")
cinder.param(
'scheduler_max_attempts',
type='integer',
default='3',
description="Maximum number of attempts to schedule an volume")
cinder.param(
'scheduler_default_filters',
type='list',
default='AvailabilityZoneFilter,CapacityFilter,CapabilitiesFilter',
description="Which filter class names to use for filtering hosts when not specified in the request.")
cinder.param(
'scheduler_default_weighers',
type='list',
default='CapacityWeigher',
description="Which weigher class names to use for weighing hosts.")
cinder.param(
'scheduler_driver',
type='string',
default='cinder.scheduler.filter_scheduler.FilterScheduler',
description="Default scheduler driver to use")
cinder.param(
'scheduler_json_config_location',
type='string',
default='',
description="Absolute path to scheduler configuration JSON file.")
cinder.param(
'max_gigabytes',
type='integer',
default='10000',
description="maximum number of volume gigabytes to allow per host")
cinder.param(
'capacity_weight_multiplier',
type='floating point',
default='1.0',
description="Multiplier used for weighing volume capacity. Negative numbers mean to stack vs spread.")
cinder.param(
'volume_transfer_salt_length',
type='integer',
default='8',
description="The number of characters in the salt.")
cinder.param(
'volume_transfer_key_length',
type='integer',
default='16',
description="The number of characters in the autogenerated auth key.")
cinder.param(
'snapshot_same_host',
type='boolean',
default='true',
description="Create volume from snapshot at the host where snapshot resides")
cinder.param(
'cloned_volume_same_az',
type='boolean',
default='true',
description="Ensure that the new volumes are the same AZ as snapshot or source volume")
cinder.param(
'num_shell_tries',
type='integer',
default='3',
description="number of times to attempt to run flakey shell commands")
cinder.param(
'reserved_percentage',
type='integer',
default='0',
description="The percentage of backend capacity is reserved")
cinder.param(
'iscsi_num_targets',
type='integer',
default='100',
description="The maximum number of iscsi target ids per host")
cinder.param(
'iscsi_target_prefix',
type='string',
default='iqn.2010-10.org.openstack:',
description="prefix for iscsi volumes")
cinder.param(
'iscsi_ip_address',
type='string',
default='$my_ip',
description="The IP address that the iSCSI daemon is listening on")
cinder.param(
'iscsi_port',
type='integer',
default='3260',
description="The port that the iSCSI daemon is listening on")
cinder.param(
'num_iser_scan_tries',
type='integer',
default='3',
description="The maximum number of times to rescan iSER targetto find volume")
cinder.param(
'iser_num_targets',
type='integer',
default='100',
description="The maximum number of iser target ids per host")
cinder.param(
'iser_target_prefix',
type='string',
default='iqn.2010-10.org.iser.openstack:',
description="prefix for iser volumes")
cinder.param(
'iser_ip_address',
type='string',
default='$my_ip',
description="The IP address that the iSER daemon is listening on")
cinder.param(
'iser_port',
type='integer',
default='3260',
description="The port that the iSER daemon is listening on")
cinder.param(
'volume_backend_name',
type='string',
default='<None>',
description="The backend name for a given driver implementation")
cinder.param(
'use_multipath_for_image_xfer',
type='boolean',
default='false',
description="Do we attach/detach volumes in cinder using multipath for volume to image and image to volume transfers?")
cinder.param(
'volume_clear',
type='string',
default='zero',
description="Method used to wipe old voumes")
cinder.param(
'volume_clear_size',
type='integer',
default='0',
description="Size in MiB to wipe at start of old volumes. 0 => all")
cinder.param(
'available_devices',
type='list',
default='',
description="List of all available devices")
cinder.param(
'coraid_esm_address',
type='string',
default='',
description="IP address of Coraid ESM")
cinder.param(
'coraid_user',
type='string',
default='admin',
description="User name to connect to Coraid ESM")
cinder.param(
'coraid_group',
type='string',
default='admin',
description="Name of group on Coraid ESM to which coraid_user belongs")
cinder.param(
'coraid_password',
type='string',
default='password',
description="Password to connect to Coraid ESM")
cinder.param(
'coraid_repository_key',
type='string',
default='coraid_repository',
description="Volume Type key name to store ESM Repository Name")
cinder.param(
'eqlx_group_name',
type='string',
default='group-0',
description="Group name to use for creating volumes")
cinder.param(
'eqlx_cli_timeout',
type='integer',
default='30',
description="Timeout for the Group Manager cli command execution")
cinder.param(
'eqlx_cli_max_retries',
type='integer',
default='5',
description="Maximum retry count for reconnection")
cinder.param(
'eqlx_use_chap',
type='boolean',
default='false',
description="Use CHAP authentificaion for targets?")
cinder.param(
'eqlx_chap_login',
type='string',
default='admin',
description="Existing CHAP account name")
cinder.param(
'eqlx_chap_password',
type='string',
default='password',
description="Password for specified CHAP account name")
cinder.param(
'eqlx_pool',
type='string',
default='default',
description="Pool in which volumes will be created")
cinder.param(
'glusterfs_shares_config',
type='string',
default='/etc/cinder/glusterfs_shares',
description="File with the list of available gluster shares")
cinder.param(
'glusterfs_disk_util',
type='string',
default='df',
description="Use du or df for free space calculation")
cinder.param(
'glusterfs_sparsed_volumes',
type='boolean',
default='true',
description="Create volumes as sparsed files which take no space.If set to False volume is created as regular file.In such case volume creation takes a lot of time.")
cinder.param(
'glusterfs_qcow2_volumes',
type='boolean',
default='false',
description="Create volumes as QCOW2 files rather than raw files.")
cinder.param(
'gpfs_mount_point_base',
type='string',
default='<None>',
description="Path to the directory on GPFS mount point where volumes are stored")
cinder.param(
'gpfs_images_dir',
type='string',
default='<None>',
description="Path to GPFS Glance repository as mounted on Nova nodes")
cinder.param(
'gpfs_images_share_mode',
type='string',
default='<None>',
description="Set this if Glance image repo is on GPFS as well so that the image bits can be transferred efficiently between Glance and Cinder. Valid values are copy or copy_on_write. copy performs a full copy of the image, copy_on_write efficiently shares unmodified blocks of the image.")
cinder.param(
'gpfs_max_clone_depth',
type='integer',
default='0',
description="A lengthy chain of copy-on-write snapshots or clones could have impact on performance. This option limits the number of indirections required to reach a specific block. 0 indicates unlimited.")
cinder.param(
'gpfs_sparse_volumes',
type='boolean',
default='true',
description="Create volumes as sparse files which take no space. If set to False volume is created as regular file. In this case volume creation may take a significantly longer time.")
cinder.param(
'hds_cinder_config_file',
type='string',
default='/opt/hds/hus/cinder_hus_conf.xml',
description="configuration file for HDS cinder plugin for HUS")
cinder.param(
'cinder_huawei_conf_file',
type='string',
default='/etc/cinder/cinder_huawei_conf.xml',
description="config data for cinder huawei plugin")
cinder.param(
'volume_group',
type='string',
default='cinder-volumes',
description="Name for the VG that will contain exported volumes")
cinder.param(
'pool_size',
type='string',
default='<None>',
description="Size of thin provisioning pool")
cinder.param(
'lvm_mirrors',
type='integer',
default='0',
description="If set, create lvms with multiple mirrors. Note that this requires lvm_mirrors + 2 pvs with available space")
cinder.param(
'lvm_type',
type='string',
default='default',
description="Type of LVM volumes to deploy;")
cinder.param(
'netapp_vfiler',
type='string',
default='<None>',
description="Vfiler to use for provisioning")
cinder.param(
'netapp_login',
type='string',
default='<None>',
description="User name for the storage controller")
cinder.param(
'netapp_password',
type='string',
default='<None>',
description="Password for the storage controller")
cinder.param(
'netapp_vserver',
type='string',
default='<None>',
description="Cluster vserver to use for provisioning")
cinder.param(
'netapp_server_hostname',
type='string',
default='<None>',
description="Host name for the storage controller")
cinder.param(
'netapp_server_port',
type='integer',
default='80',
description="Port number for the storage controller")
cinder.param(
'thres_avl_size_perc_start',
type='integer',
default='20',
description="Threshold available percent to start cache cleaning.")
cinder.param(
'thres_avl_size_perc_stop',
type='integer',
default='60',
description="Threshold available percent to stop cache cleaning.")
cinder.param(
'expiry_thres_minutes',
type='integer',
default='720',
description="Threshold minutes after which cache file can be cleaned.")
cinder.param(
'netapp_size_multiplier',
type='floating point',
default='1.2',
description="Volume size multiplier to ensure while creation")
cinder.param(
'netapp_volume_list',
type='string',
default='<None>',
description="Comma separated volumes to be used for provisioning")
cinder.param(
'netapp_storage_family',
type='string',
default='ontap_cluster',
description="Storage family type.")
cinder.param(
'netapp_storage_protocol',
type='string',
default='<None>',
description="Storage protocol type.")
cinder.param(
'netapp_transport_type',
type='string',
default='http',
description="Transport type protocol")
cinder.param(
'nexenta_host',
type='string',
default='',
description="IP address of Nexenta SA")
cinder.param(
'nexenta_rest_port',
type='integer',
default='2000',
description="HTTP port to connect to Nexenta REST API server")
cinder.param(
'nexenta_rest_protocol',
type='string',
default='auto',
description="Use http or https for REST connection")
cinder.param(
'nexenta_user',
type='string',
default='admin',
description="User name to connect to Nexenta SA")
cinder.param(
'nexenta_password',
type='string',
default='nexenta',
description="Password to connect to Nexenta SA")
cinder.param(
'nexenta_iscsi_target_portal_port',
type='integer',
default='3260',
description="Nexenta target portal port")
cinder.param(
'nexenta_volume',
type='string',
default='cinder',
description="pool on SA that will hold all volumes")
cinder.param(
'nexenta_target_prefix',
type='string',
default='iqn.1986-03.com.sun:02:cinder-',
description="IQN prefix for iSCSI targets")
cinder.param(
'nexenta_target_group_prefix',
type='string',
default='cinder/',
description="prefix for iSCSI target groups on SA")
cinder.param(
'nexenta_shares_config',
type='string',
default='/etc/cinder/nfs_shares',
description="File with the list of available nfs shares")
cinder.param(
'nexenta_mount_point_base',
type='string',
default='$state_path/mnt',
description="Base dir containing mount points for nfs shares")
cinder.param(
'nexenta_sparsed_volumes',
type='boolean',
default='true',
description="Create volumes as sparsed files which take no space.If set to False volume is created as regular file.In such case volume creation takes a lot of time.")
cinder.param(
'nexenta_volume_compression',
type='string',
default='on',
description="Default compression value for new ZFS folders.")
cinder.param(
'nexenta_mount_options',
type='string',
default='<None>',
description="Mount options passed to the nfs client. See section of the nfs man page for details")
cinder.param(
'nexenta_used_ratio',
type='floating point',
default='0.95',
description="Percent of ACTUAL usage of the underlying volume before no new volumes can be allocated to the volume destination.")
cinder.param(
'nexenta_oversub_ratio',
type='floating point',
default='1.0',
description="This will compare the allocated to available space on the volume destination. If the ratio exceeds this number, the destination will no longer be valid.")
cinder.param(
'nexenta_blocksize',
type='string',
default='',
description="block size for volumes")
cinder.param(
'nexenta_sparse',
type='boolean',
default='false',
description="flag to create sparse volumes")
cinder.param(
'nfs_shares_config',
type='string',
default='/etc/cinder/nfs_shares',
description="File with the list of available nfs shares")
cinder.param(
'nfs_sparsed_volumes',
type='boolean',
default='true',
description="Create volumes as sparsed files which take no space.If set to False volume is created as regular file.In such case volume creation takes a lot of time.")
cinder.param(
'nfs_used_ratio',
type='floating point',
default='0.95',
description="Percent of ACTUAL usage of the underlying volume before no new volumes can be allocated to the volume destination.")
cinder.param(
'nfs_oversub_ratio',
type='floating point',
default='1.0',
description="This will compare the allocated to available space on the volume destination. If the ratio exceeds this number, the destination will no longer be valid.")
cinder.param(
'rbd_pool',
type='string',
default='rbd',
description="the RADOS pool in which rbd volumes are stored")
cinder.param(
'rbd_user',
type='string',
default='<None>',
description="the RADOS client name for accessing rbd volumes - only set when using cephx authentication")
cinder.param(
'rbd_ceph_conf',
type='string',
default='',
description="path to the ceph configuration file to use")
cinder.param(
'rbd_flatten_volume_from_snapshot',
type='boolean',
default='false',
description="flatten volumes created from snapshots to remove dependency")
cinder.param(
'rbd_secret_uuid',
type='string',
default='<None>',
description="the libvirt uuid of the secret for the rbd_uservolumes")
cinder.param(
'volume_tmp_dir',
type='string',
default='<None>',
description="where to store temporary image files if the volume driver does not write them directly to the volume")
cinder.param(
'rbd_max_clone_depth',
type='integer',
default='5',
description="maximum number of nested clones that can be taken of a volume before enforcing a flatten prior to next clone. A value of zero disables cloning")
cinder.param(
'hp3par_api_url',
type='string',
default='',
description="3PAR WSAPI Server Url like https://<3par ip>:8080/api/v1")
cinder.param(
'hp3par_username',
type='string',
default='',
description="3PAR Super user username")
cinder.param(
'hp3par_password',
type='string',
default='',
description="3PAR Super user password")
cinder.param(
'hp3par_domain',
type='string',
default='<None>',
description="This option is DEPRECATED and no longer used. The 3par domain name to use.")
cinder.param(
'hp3par_cpg',
type='string',
default='OpenStack',
description="The CPG to use for volume creation")
cinder.param(
'hp3par_cpg_snap',
type='string',
default='',
description="The CPG to use for Snapshots for volumes. If empty hp3par_cpg will be used")
cinder.param(
'hp3par_snapshot_retention',
type='string',
default='',
description="The time in hours to retain a snapshot. You can't delete it before this expires.")
cinder.param(
'hp3par_snapshot_expiration',
type='string',
default='',
description="The time in hours when a snapshot expires and is deleted. This must be larger than expiration")
cinder.param(
'hp3par_debug',
type='boolean',
default='false',
description="Enable HTTP debugging to 3PAR")
cinder.param(
'hp3par_iscsi_ips',
type='list',
default='',
description="List of target iSCSI addresses to use.")
cinder.param(
'san_thin_provision',
type='boolean',
default='true',
description="Use thin provisioning for SAN volumes?")
cinder.param(
'san_ip',
type='string',
default='',
description="IP address of SAN controller")
cinder.param(
'san_login',
type='string',
default='admin',
description="Username for SAN controller")
cinder.param(
'san_password',
type='string',
default='',
description="Password for SAN controller")
cinder.param(
'san_private_key',
type='string',
default='',
description="Filename of private key to use for SSH authentication")
cinder.param(
'san_clustername',
type='string',
default='',
description="Cluster name to use for creating volumes")
cinder.param(
'san_ssh_port',
type='integer',
default='22',
description="SSH port to use with SAN")
cinder.param(
'san_is_local',
type='boolean',
default='false',
description="Execute commands locally instead of over SSH; use if the volume service is running on the SAN device")
cinder.param(
'ssh_conn_timeout',
type='integer',
default='30',
description="SSH connection timeout in seconds")
cinder.param(
'ssh_min_pool_conn',
type='integer',
default='1',
description="Minimum ssh connections in the pool")
cinder.param(
'ssh_max_pool_conn',
type='integer',
default='5',
description="Maximum ssh connections in the pool")
cinder.param(
'san_zfs_volume_base',
type='string',
default='rpool/',
description="The ZFS path under which to create zvols for volumes.")
cinder.param(
'scality_sofs_config',
type='string',
default='<None>',
description="Path or URL to Scality SOFS configuration file")
cinder.param(
'scality_sofs_mount_point',
type='string',
default='$state_path/scality',
description="Base dir where Scality SOFS shall be mounted")
cinder.param(
'scality_sofs_volume_dir',
type='string',
default='cinder/volumes',
description="Path from Scality SOFS root to volume dir")
cinder.param(
'sf_emulate_512',
type='boolean',
default='true',
description="Set 512 byte emulation on volume creation; ")
cinder.param(
'sf_allow_tenant_qos',
type='boolean',
default='false',
description="Allow tenants to specify QOS on create")
cinder.param(
'sf_account_prefix',
type='string',
default='cinder',
description="Create SolidFire accounts with this prefix")
cinder.param(
'sf_api_port',
type='integer',
default='443',
description="SolidFire API port. Useful if the device api is behind a proxy on a different port.")
cinder.param(
'storwize_svc_volpool_name',
type='string',
default='volpool',
description="Storage system storage pool for volumes")
cinder.param(
'storwize_svc_vol_rsize',
type='integer',
default='2',
description="Storage system space-efficiency parameter for volumes")
cinder.param(
'storwize_svc_vol_warning',
type='integer',
default='0',
description="Storage system threshold for volume capacity warnings")
cinder.param(
'storwize_svc_vol_autoexpand',
type='boolean',
default='true',
description="Storage system autoexpand parameter for volumes")
cinder.param(
'storwize_svc_vol_grainsize',
type='integer',
default='256',
description="Storage system grain size parameter for volumes")
cinder.param(
'storwize_svc_vol_compression',
type='boolean',
default='false',
description="Storage system compression option for volumes")
cinder.param(
'storwize_svc_vol_easytier',
type='boolean',
default='true',
description="Enable Easy Tier for volumes")
cinder.param(
'storwize_svc_vol_iogrp',
type='integer',
default='0',
description="The I/O group in which to allocate volumes")
cinder.param(
'storwize_svc_flashcopy_timeout',
type='integer',
default='120',
description="Maximum number of seconds to wait for FlashCopy to be prepared. Maximum value is 600 seconds")
cinder.param(
'storwize_svc_connection_protocol',
type='string',
default='iSCSI',
description="Connection protocol")
cinder.param(
'storwize_svc_multipath_enabled',
type='boolean',
default='false',
description="Connect with multipath")
cinder.param(
'storwize_svc_multihostmap_enabled',
type='boolean',
default='true',
description="Allows vdisk to multi host mapping")
cinder.param(
'vmware_host_ip',
type='string',
default='<None>',
description="IP address for connecting to VMware ESX/VC server.")
cinder.param(
'vmware_host_username',
type='string',
default='<None>',
description="Username for authenticating with VMware ESX/VC server.")
cinder.param(
'vmware_host_password',
type='string',
default='<None>',
description="Password for authenticating with VMware ESX/VC server.")
cinder.param(
'vmware_wsdl_location',
type='string',
default='<None>',
description="Optional VIM service WSDL Location e.g http://<server>/vimService.wsdl. Optional over-ride to default location for bug work-arounds.")
cinder.param(
'vmware_api_retry_count',
type='integer',
default='10',
description="Number of times VMware ESX/VC server API must be retried upon connection related issues.")
cinder.param(
'vmware_task_poll_interval',
type='integer',
default='5',
description="The interval used for polling remote tasks invoked on VMware ESX/VC server.")
cinder.param(
'vmware_volume_folder',
type='string',
default='cinder-volumes',
description="Name for the folder in the VC datacenter that will contain cinder volumes.")
cinder.param(
'vmware_image_transfer_timeout_secs',
type='integer',
default='7200',
description="Timeout in seconds for VMDK volume transfer between Cinder and Glance.")
cinder.param(
'windows_iscsi_lun_path',
type='string',
default='C:\iSCSIVirtualDisks',
description="Path to store VHD backed volumes")
cinder.param(
'xenapi_nfs_server',
type='string',
default='<None>',
description="NFS server to be used by XenAPINFSDriver")
cinder.param(
'xenapi_nfs_serverpath',
type='string',
default='<None>',
description="Path of exported NFS, used by XenAPINFSDriver")
cinder.param(
'xenapi_connection_url',
type='string',
default='<None>',
description="URL for XenAPI connection")
cinder.param(
'xenapi_connection_username',
type='string',
default='root',
description="Username for XenAPI connection")
cinder.param(
'xenapi_connection_password',
type='string',
default='<None>',
description="Password for XenAPI connection")
cinder.param(
'xenapi_sr_base_path',
type='string',
default='/var/run/sr-mount',
description="Base path to the storage repository")
cinder.param(
'xiv_ds8k_proxy',
type='string',
default='xiv_ds8k_openstack.nova_proxy.XIVDS8KNovaProxy',
description="Proxy driver that connects to the IBM Storage Array")
cinder.param(
'xiv_ds8k_connection_type',
type='string',
default='iscsi',
description="Connection type to the IBM Storage Array")
cinder.param(
'zadara_vpsa_ip',
type='string',
default='<None>',
description="Management IP of Zadara VPSA")
cinder.param(
'zadara_vpsa_port',
type='string',
default='<None>',
description="Zadara VPSA port number")
cinder.param(
'zadara_vpsa_use_ssl',
type='boolean',
default='false',
description="Use SSL connection")
cinder.param(
'zadara_user',
type='string',
default='<None>',
description="User name for the VPSA")
cinder.param(
'zadara_password',
type='string',
default='<None>',
description="Password for the VPSA")
cinder.param(
'zadara_vpsa_poolname',
type='string',
default='<None>',
description="Name of VPSA storage pool for volumes")
cinder.param(
'zadara_vol_thin',
type='boolean',
default='true',
description="Default thin provisioning policy for volumes")
cinder.param(
'zadara_vol_encrypt',
type='boolean',
default='false',
description="Default encryption policy for volumes")
cinder.param(
'zadara_default_striping_mode',
type='string',
default='simple',
description="Default striping mode for volumes")
cinder.param(
'zadara_default_stripesize',
type='string',
default='64',
description="Default stripe size for volumes")
cinder.param(
'zadara_vol_name_template',
type='string',
default='OS_%s',
description="Default template for VPSA volume names")
cinder.param(
'zadara_vpsa_auto_detach_on_delete',
type='boolean',
default='true',
description="Automatically detach from servers on volume delete")
cinder.param(
'zadara_vpsa_allow_nonexistent_delete',
type='boolean',
default='true',
description="Don't halt on deletion of non-existing volumes")
cinder.param(
'volume_driver',
type='string',
default='cinder.volume.drivers.lvm.LVMISCSIDriver',
description="Driver to use for volume creation")
cinder.param(
'migration_create_volume_timeout_secs',
type='integer',
default='300',
description="Timeout for creating the volume to migrate to when performing volume migration")
cinder.param(
'volume_dd_blocksize',
type='string',
default='1M',
description="The default block size used when copying/clearing volumes")
cinder.commit()