Scroll to navigation

object-server.conf(5) OpenStack Swift object-server.conf(5)

NAME

object-server.conf - configuration file for the openstack-swift object server

SYNOPSIS

object-server.conf

DESCRIPTION

This is the configuration file used by the object server and other object background services, such as; replicator, updater and auditor.
The configuration file follows the python-pastedeploy syntax. The file is divided into sections, which are enclosed by square brackets. Each section will contain a certain number of key/value parameters which are described later.
Any line that begins with a '#' symbol is ignored.
You can find more information about python-pastedeploy configuration format at http://pythonpaste.org/deploy/#config-format

GLOBAL SECTION

This is indicated by section named [DEFAULT]. Below are the parameters that are acceptable within this section.
bind_ip
IP address the object server should bind to. The default is 0.0.0.0 which will make it bind to all available addresses.
bind_port
TCP port the object server should bind to. The default is 6000.
backlog
TCP backlog. Maximum number of allowed pending connections. The default value is 4096.
workers
The number of pre-forked processes that will accept connections. Zero means no fork. The default is auto which will make the server try to match the number of effective cpu cores if python multiprocessing is available (included with most python distributions >= 2.6) or fallback to one. It's worth noting that individual workers will use many eventlet co-routines to service multiple concurrent requests.
max_clients
Maximum number of clients one worker can process simultaneously (it will actually accept(2) N + 1). Setting this to one (1) will only handle one request at a time, without accepting another request concurrently. The default is 1024.
user
The system user that the object server will run as. The default is swift.
swift_dir
Swift configuration directory. The default is /etc/swift.
devices
Parent directory or where devices are mounted. Default is /srv/node.
mount_check
Whether or not check if the devices are mounted to prevent accidentally writing to the root device. The default is set to true.
log_name
Label used when logging. The default is swift.
log_facility
Syslog log facility. The default is LOG_LOCAL0.
log_level
Logging level. The default is INFO.
log_address
Logging address. The default is /dev/log.

PIPELINE SECTION

This is indicated by section name [pipeline:main]. Below are the parameters that are acceptable within this section.
pipeline
It is used when you need to apply a number of filters. It is a list of filters ended by an application. The normal pipeline is "healthcheck recon object-server".

APP SECTION

This is indicated by section name [app:object-server]. Below are the parameters that are acceptable within this section.
use
Entry point for paste.deploy for the object server. This is the reference to the installed python egg. This is normally egg:swift#object.
set log_name
Label used when logging. The default is object-server.
set log_facility
Syslog log facility. The default is LOG_LOCAL0.
set log_level
Logging level. The default is INFO.
set log_requests
Enables request logging. The default is True.
set log_address
Logging address. The default is /dev/log.
node_timeout
Request timeout to external services. The default is 3 seconds.
conn_timeout
Connection timeout to external services. The default is 0.5 seconds.

FILTER SECTION

Any section that has its name prefixed by "filter:" indicates a filter section. Filters are used to specify configuration parameters for specific swift middlewares. Below are the filters available and respective acceptable parameters.
[filter:healthcheck]
use
Entry point for paste.deploy for the healthcheck middleware. This is the reference to the installed python egg. This is normally egg:swift#healthcheck.
disable_path
An optional filesystem path which, if present, will cause the healthcheck URL to return "503 Service Unavailable" with a body of "DISABLED BY FILE".
[filter:recon]
use
Entry point for paste.deploy for the recon middleware. This is the reference to the installed python egg. This is normally egg:swift#recon.
recon_cache_path
The recon_cache_path simply sets the directory where stats for a few items will be stored. Depending on the method of deployment you may need to create this directory manually and ensure that swift has read/write. The default is /var/cache/swift.

ADDITIONAL SECTIONS

The following sections are used by other swift-object services, such as replicator, updater, auditor.
[object-replicator]
log_name
Label used when logging. The default is object-replicator.
log_facility
Syslog log facility. The default is LOG_LOCAL0.
log_level
Logging level. The default is INFO.
log_address
Logging address. The default is /dev/log.
vm_test_mode
Indicates that you are using a VM environment. The default is no.
daemonize
Whether or not to run replication as a daemon. The default is yes.
run_pause
Time in seconds to wait between replication passes. The default is 30.
concurrency
Number of replication workers to spawn. The default is 1.
stats_interval
Interval in seconds between logging replication statistics. The default is 300.
rsync_timeout
Max duration of a partition rsync. The default is 900 seconds.
rsync_io_timeout
Passed to rsync for I/O OP timeout. The default is 30 seconds.
rsync_bwlimit
Passed to rsync for bandwidth limit in kB/s. The default is 0 (unlimited).
http_timeout
Max duration of an HTTP request. The default is 60 seconds.
lockup_timeout
Attempts to kill all workers if nothing replicates for lockup_timeout seconds. The default is 1800 seconds.
reclaim_age
Time elapsed in seconds before an object can be reclaimed. The default is 604800 seconds.
recon_enable
Enable logging of replication stats for recon. The default is on.
recon_cache_path
The recon_cache_path simply sets the directory where stats for a few items will be stored. Depending on the method of deployment you may need to create this directory manually and ensure that swift has read/write.The default is /var/cache/swift.
[object-updater]
log_name
Label used when logging. The default is object-updater.
log_facility
Syslog log facility. The default is LOG_LOCAL0.
log_level
Logging level. The default is INFO.
log_address
Logging address. The default is /dev/log.
interval
Minimum time for a pass to take. The default is 300 seconds.
concurrency
Number of reaper workers to spawn. The default is 1.
node_timeout
Request timeout to external services. The default is 10 seconds.
conn_timeout
Connection timeout to external services. The default is 0.5 seconds.
slowdown
Slowdown will sleep that amount between objects. The default is 0.01 seconds.
[object-auditor]
log_name
Label used when logging. The default is object-auditor.
log_facility
Syslog log facility. The default is LOG_LOCAL0.
log_level
Logging level. The default is INFO.
log_address
Logging address. The default is /dev/log.
files_per_second
Maximum files audited per second. Should be tuned according to individual system specs. 0 is unlimited. The default is 20.
bytes_per_second
Maximum bytes audited per second. Should be tuned according to individual system specs. 0 is unlimited. The default is 10000000.
log_time
The default is 3600 seconds.
zero_byte_files_per_second
The default is 50.

DOCUMENTATION

More in depth documentation about the swift-object-server and also Openstack-Swift as a whole can be found at http://swift.openstack.org/admin_guide.html and http://swift.openstack.org

SEE ALSO

swift-object-server(1),
8/26/2011 Linux