Atom feed of this document
 

 Object server configuration

Find an example object server configuration at etc/object-server.conf-sample in the source code repository.

The available configuration options are:

Table 6.1. Description of configuration options for [DEFAULT] in object-server.conf-sample
Configuration option=Default value Description
bind_ip=0.0.0.0IP Address for server to bind to
bind_port=6000Port for server to bind to
bind_timeout=30Seconds to attempt bind before giving up
backlog=4096Maximum number of allowed pending TCP connections
user=swiftUser to run as
swift_dir=/etc/swiftSwift configuration directory
devices=/srv/nodeParent directory of where devices are mounted
mount_check=trueWhether or not check if the devices are mounted to prevent accidentally writing to the root device
disable_fallocate=falseDisable "fast fail" fallocate checks if the underlying filesystem does not support it.
expiring_objects_container_divisor=86400No help text available for this option
workers=autoa much higher value, one can reduce the impact of slow file system operations in one request from negatively impacting other requests.
max_clients=1024Maximum number of clients one worker can process simultaneously Lowering the number of clients handled per worker, and raising the number of workers can lessen the impact that a CPU intensive, or blocking, request can have on other requests served by the same worker. If the maximum number of clients is set to one, then a given worker will not perform another call while processing, allowing other workers a chance to process it.
log_name=swiftLabel used when logging
log_facility=LOG_LOCAL0Syslog log facility
log_level=INFOLogging level
log_address=/dev/logLocation where syslog sends the logs to
log_custom_handlers=Comma-separated list of functions to call to setup custom log handlers.
log_udp_host=If not set, the UDB receiver for syslog is disabled.
log_udp_port=514Port value for UDB receiver, if enabled.
log_statsd_host=localhostIf not set, the StatsD feature is disabled.
log_statsd_port=8125Port value for the StatsD server.
log_statsd_default_sample_rate=1.0Defines the probability of sending a sample for any given event or timing measurement.
log_statsd_sample_rate_factor=1.0Not recommended to set this to a value less than 1.0, if frequency of logging is too high, tune the log_statsd_default_sample_rate instead.
log_statsd_metric_prefix=Value will be prepended to every metric sent to the StatsD server.
eventlet_debug=falseIf true, turn on debug logging for eventlet
fallocate_reserve=0You can set fallocate_reserve to the number of bytes you'd like fallocate to reserve, whether there is space for the given file size or not. This is useful for systems that behave badly when they completely run out of space; you can make the services pretend they're out of space early. server. For most cases, this should be `egg:swift#object`.

Table 6.2. Description of configuration options for [app:object-server] in object-server.conf-sample
Configuration option=Default value Description
use=egg:swift#objectEntry point of paste.deploy in the server
set log_name=object-serverLabel to use when logging
set log_facility=LOG_LOCAL0Syslog log facility
set log_level=INFOLog level
set log_requests=trueWhether or not to log requests
set log_address=/dev/logNo help text available for this option
node_timeout=3Request timeout to external services
conn_timeout=0.5Connection timeout to external services
network_chunk_size=65536Size of chunks to read/write over the network
disk_chunk_size=65536Size of chunks to read/write to disk
max_upload_time=86400Maximum time allowed to upload an object
slow=0If > 0, Minimum time in seconds for a PUT or DELETE request to complete
keep_cache_size=5424880Largest object size to keep in buffer cache
keep_cache_private=falseAllow non-public objects to stay in kernel's buffer cache
mb_per_sync=512On PUT requests, sync file every n MB
allowed_headers=Content-Disposition, Content-Encoding, X-Delete-At, X-Object-Manifest, X-Static-Large-ObjectComma-separated list of headers that can be set in metadata of an object
auto_create_account_prefix=.Prefix to use when automatically creating accounts
replication_server=falseIf defined, tells server how to handle replication verbs in requests. When set to True (or 1), only replication verbs will be accepted. When set to False, replication verbs will be rejected. When undefined, server will accept any verb in the request.
threads_per_disk=0Size of the per-disk thread pool used for performing disk I/O. The default of 0 means to not use a per-disk thread pool. It is recommended to keep this value small, as large values can result in high read latencies due to large queue depths. A good starting point is 4 threads per disk.

Table 6.3. Description of configuration options for [pipeline:main] in object-server.conf-sample
Configuration option=Default value Description
pipeline=healthcheck recon object-serverNo help text available for this option

Table 6.4. Description of configuration options for [object-replicator] in object-server.conf-sample
Configuration option=Default value Description
log_name=object-replicatorLabel used when logging
log_facility=LOG_LOCAL0Syslog log facility
log_level=INFOLogging level
log_address=/dev/logLocation where syslog sends the logs to
vm_test_mode=noIndicates that you are using a VM environment
daemonize=onWhether or not to run replication as a daemon
run_pause=30Time in seconds to wait between replication passes
concurrency=1Number of replication workers to spawn
stats_interval=300Interval in seconds between logging replication statistics
rsync_timeout=900Max duration (seconds) of a partition rsync
rsync_bwlimit=0No help text available for this option
rsync_io_timeout=30Passed to rsync for a max duration (seconds) of an I/O op
http_timeout=60Maximum duration for an HTTP request
lockup_timeout=1800Attempts to kill all workers if nothing replications for lockup_timeout seconds
reclaim_age=604800Time elapsed in seconds before an object can be reclaimed
ring_check_interval=15How often (in seconds) to check the ring
recon_cache_path=/var/cache/swiftDirectory where stats for a few items will be stored
rsync_error_log_line_length=0No help text available for this option

Table 6.5. Description of configuration options for [object-updater] in object-server.conf-sample
Configuration option=Default value Description
log_name=object-updaterLabel used when logging
log_facility=LOG_LOCAL0Syslog log facility
log_level=INFOLogging level
log_address=/dev/logLocation where syslog sends the logs to
interval=300Minimum time for a pass to take
concurrency=1Number of replication workers to spawn
node_timeout=10Request timeout to external services
conn_timeout=0.5Connection timeout to external services
slowdown=0.01Time in seconds to wait between objects
recon_cache_path=/var/cache/swiftDirectory where stats for a few items will be stored

Table 6.6. Description of configuration options for [object-auditor] in object-server.conf-sample
Configuration option=Default value Description
log_name=object-auditorLabel used when logging
log_facility=LOG_LOCAL0Syslog log facility
log_level=INFOLogging level
log_address=/dev/logLocation where syslog sends the logs to
files_per_second=20Maximum files audited per second. Should be tuned according to individual system specs. 0 is unlimited.
bytes_per_second=10000000Maximum bytes audited per second. Should be tuned according to individual system specs. 0 is unlimited. mounted to prevent accidentally writing to the root device 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. By increasing the number of workers to a much higher value, one can reduce the impact of slow file system operations in one request from negatively impacting other requests. underlying filesystem does not support it. to setup custom log handlers. bytes you'd like fallocate to reserve, whether there is space for the given file size or not. This is useful for systems that behave badly when they completely run out of space; you can make the services pretend they're out of space early. container server. For most cases, this should be `egg:swift#container`.
log_time=3600Frequency of status logs in seconds.
zero_byte_files_per_second=50Maximum zero byte files audited per second.
recon_cache_path=/var/cache/swiftDirectory where stats for a few items will be stored
object_size_stats=No help text available for this option

Table 6.7. Description of configuration options for [filter:healthcheck] in object-server.conf-sample
Configuration option=Default value Description
use=egg:swift#healthcheckEntry point of paste.deploy in the server
disable_path=No help text available for this option

Table 6.8. Description of configuration options for [filter:recon] in object-server.conf-sample
Configuration option=Default value Description
use=egg:swift#reconEntry point of paste.deploy in the server
recon_cache_path=/var/cache/swiftDirectory where stats for a few items will be stored
recon_lock_path=/var/lockNo help text available for this option

Log a bug against this page


loading table of contents...