Find an example container server configuration at
etc/container-server.conf-sample
in the source code repository.
The available configuration options are:
Configuration option = Default value | Description |
---|---|
bind_ip = 0.0.0.0 | IP Address for server to bind to |
bind_port = 6001 | Port for server to bind to |
bind_timeout = 30 | Seconds to attempt bind before giving up |
backlog = 4096 | Maximum number of allowed pending TCP connections |
user = swift | User to run as |
swift_dir = /etc/swift | Swift configuration directory |
devices = /srv/node | Parent directory of where devices are mounted |
mount_check = true | Whether or not check if the devices are mounted to prevent accidentally writing to the root device |
disable_fallocate = false | Disable "fast fail" fallocate checks if the underlying filesystem does not support it. |
workers = auto | a much higher value, one can reduce the impact of slow file system operations in one request from negatively impacting other requests. |
max_clients = 1024 | Maximum 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. |
allowed_sync_hosts = 127.0.0.1 | No help text available for this option. |
log_name = swift | Label used when logging |
log_facility = LOG_LOCAL0 | Syslog log facility |
log_level = INFO | Logging level |
log_address = /dev/log | Location 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 = 514 | Port value for UDB receiver, if enabled. |
log_statsd_host = localhost | If not set, the StatsD feature is disabled. |
log_statsd_port = 8125 | Port value for the StatsD server. |
log_statsd_default_sample_rate = 1.0 | Defines the probability of sending a sample for any given event or timing measurement. |
log_statsd_sample_rate_factor = 1.0 | Not 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. |
db_preallocation = off | If you don't mind the extra disk space usage in overhead, you can turn this on to preallocate disk space with SQLite databases to decrease fragmentation. 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. server. For most cases, this should be `egg:swift#account`. replication passes account can be reclaimed |
eventlet_debug = false | If true, turn on debug logging for eventlet |
fallocate_reserve = 0 | You 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`. |
Configuration option = Default value | Description |
---|---|
use = egg:swift#container | Entry point of paste.deploy in the server |
set log_name = container-server | Label to use when logging |
set log_facility = LOG_LOCAL0 | Syslog log facility |
set log_level = INFO | Log level |
set log_requests = true | Whether or not to log requests |
set log_address = /dev/log | Location where syslog sends the logs to |
node_timeout = 3 | Request timeout to external services |
conn_timeout = 0.5 | Connection timeout to external services |
allow_versions = false | Enable/Disable object versioning feature |
auto_create_account_prefix = . | Prefix to use when automatically creating accounts |
replication_server = false | If 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. |
Configuration option = Default value | Description |
---|---|
pipeline = healthcheck recon container-server | No help text available for this option. |
Configuration option = Default value | Description |
---|---|
log_name = container-replicator | Label used when logging |
log_facility = LOG_LOCAL0 | Syslog log facility |
log_level = INFO | Logging level |
log_address = /dev/log | Location where syslog sends the logs to |
vm_test_mode = no | Indicates that you are using a VM environment |
per_diff = 1000 | Limit number of items to get per diff |
max_diffs = 100 | Caps how long the replicator spends trying to sync a database per pass |
concurrency = 8 | Number of replication workers to spawn |
interval = 30 | Minimum time for a pass to take |
node_timeout = 10 | Request timeout to external services |
conn_timeout = 0.5 | Connection timeout to external services |
reclaim_age = 604800 | Time elapsed in seconds before an object can be reclaimed |
run_pause = 30 | Time in seconds to wait between replication passes |
recon_cache_path = /var/cache/swift | Directory where stats for a few items will be stored |
Configuration option = Default value | Description |
---|---|
log_name = container-updater | Label used when logging |
log_facility = LOG_LOCAL0 | Syslog log facility |
log_level = INFO | Logging level |
log_address = /dev/log | Location where syslog sends the logs to |
interval = 300 | Minimum time for a pass to take |
concurrency = 4 | Number of replication workers to spawn |
node_timeout = 3 | Request timeout to external services |
conn_timeout = 0.5 | Connection timeout to external services |
slowdown = 0.01 | Time in seconds to wait between objects |
account_suppression_time = 60 | Seconds to suppress updating an account that has generated an error (timeout, not yet found, etc.) |
recon_cache_path = /var/cache/swift | Directory where stats for a few items will be stored |
Configuration option = Default value | Description |
---|---|
log_name = container-auditor | Label used when logging |
log_facility = LOG_LOCAL0 | Syslog log facility |
log_level = INFO | Logging level |
log_address = /dev/log | Location where syslog sends the logs to |
interval = 1800 | Minimum time for a pass to take |
containers_per_second = 200 | Maximum containers 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. |
recon_cache_path = /var/cache/swift | Directory where stats for a few items will be stored |
Configuration option = Default value | Description |
---|---|
log_name = container-sync | Label used when logging |
log_facility = LOG_LOCAL0 | Syslog log facility |
log_level = INFO | Logging level |
log_address = /dev/log | Location where syslog sends the logs to |
sync_proxy = http://10.1.1.1:8888,http://10.1.1.2:8888 | If you need to use an HTTP proxy, set it here. Defaults to no proxy. |
interval = 300 | Minimum time for a pass to take |
container_time = 60 | Maximum amount of time to spend syncing each container |
Configuration option = Default value | Description |
---|---|
use = egg:swift#healthcheck | Entry point of paste.deploy in the server |
disable_path = | No help text available for this option. |
Configuration option = Default value | Description |
---|---|
use = egg:swift#recon | Entry point of paste.deploy in the server |
recon_cache_path = /var/cache/swift | Directory where stats for a few items will be stored |