DOKK / manpages / debian 10 / swift-object / object-expirer.conf.5.en
object-expirer.conf(5) OpenStack Swift object-expirer.conf(5)

object-expirer.conf - configuration file for the OpenStack Swift object expirer daemon

object-expirer.conf

This is the configuration file used by the object expirer daemon. The daemon's function is to query the internal hidden expiring_objects_account to discover objects that need to be deleted and to then delete them.

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

This is indicated by section named [DEFAULT]. Below are the parameters that are acceptable within this section.

Swift configuration directory. The default is /etc/swift.
The system user that the object server will run as. The default is swift.
Label used when logging. The default is swift.
Syslog log facility. The default is LOG_LOCAL0.
Logging level. The default is INFO.
Logging address. The default is /dev/log.
The following caps the length of log lines to the value given; no limit if set to 0, the default.
Comma separated list of functions to call to setup custom log handlers. functions get passed: conf, name, log_to_console, log_route, fmt, logger, adapted_logger. The default is empty.
If set, log_udp_host will override log_address.
UDP log port, the default is 514.
StatsD server. IPv4/IPv6 addresses and hostnames are supported. If a hostname resolves to an IPv4 and IPv6 address, the IPv4 address will be used.
The default is 8125.
The default is 1.
The default is 1.
The default is empty.
Modify scheduling priority of server processes. Niceness values range from -20 (most favorable to the process) to 19 (least favorable to the process). The default does not modify priority.
Modify I/O scheduling class of server processes. I/O niceness class values are IOPRIO_CLASS_RT (realtime), IOPRIO_CLASS_BE (best-effort) and IOPRIO_CLASS_IDLE (idle). The default does not modify class and priority. Work only with ionice_priority.
Modify I/O scheduling priority of server processes. I/O niceness priority is a number which goes from 0 to 7. The higher the value, the lower the I/O priority of the process. Work only with ionice_class. Ignored if IOPRIO_CLASS_IDLE is set.

This is indicated by section name [pipeline:main]. Below are the parameters that are acceptable within this section.

It is used when you need to apply a number of filters. It is a list of filters ended by an application. The default should be "catch_errors cache proxy-server"

This is indicated by section name [app:object-server]. Below are the parameters that are acceptable within this section.
Entry point for paste.deploy for the object server. This is the reference to the installed python egg. The default is egg:swift#proxy. See proxy-server.conf-sample for options or See proxy-server.conf manpage.
Modify scheduling priority of server processes. Niceness values range from -20 (most favorable to the process) to 19 (least favorable to the process). The default does not modify priority.
Modify I/O scheduling class of server processes. I/O niceness class values are IOPRIO_CLASS_RT (realtime), IOPRIO_CLASS_BE (best-effort) and IOPRIO_CLASS_IDLE (idle). The default does not modify class and priority. Work only with ionice_priority.
Modify I/O scheduling priority of server processes. I/O niceness priority is a number which goes from 0 to 7. The higher the value, the lower the I/O priority of the process. Work only with ionice_class. Ignored if IOPRIO_CLASS_IDLE is set.

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:cache]

Caching middleware that manages caching in swift.

Entry point for paste.deploy for the memcache middleware. This is the reference to the installed python egg. The default is egg:swift#memcache. See proxy-server.conf-sample for options or See proxy-server.conf manpage.

[filter:catch_errors]
Entry point for paste.deploy for the catch_errors middleware. This is the reference to the installed python egg. The default is egg:swift#catch_errors. See proxy-server.conf-sample for options or See proxy-server.conf manpage.

[filter:proxy-logging]

Logging for the proxy server now lives in this middleware. If the access_* variables are not set, logging directives from [DEFAULT] without "access_" will be used.

Entry point for paste.deploy for the proxy_logging middleware. This is the reference to the installed python egg. This is normally egg:swift#proxy_logging. See proxy-server.conf-sample for options or See proxy-server.conf manpage.

[object-expirer]
Replaces run_pause with the more standard "interval", which means the replicator won't pause unless it takes less than the interval set. The default is 300.
The default is ".".
The default is 'expiring_objects'.
The default is 300 seconds.
The number of times the expirer's internal client will attempt any given request in the event of failure. The default is 3.
Number of expirer workers to spawn. The default is 1.
Processes is how many parts to divide the work into, one part per process that will be doing the work. Processes set 0 means that a single process will be doing all the work. Processes can also be specified on the command line and will override the config value. The default is 0.
Process is which of the parts a particular process will work on process can also be specified on the command line and will override the config value process is "zero based", if you want to use 3 processes, you should run processes with process set to 0, 1, and 2. The default is 0.
The expirer will re-attempt expiring if the source object is not available up to reclaim_age seconds before it gives up and deletes the entry in the queue. The default is 604800 seconds.
Path to recon cache directory. The default is /var/cache/swift.
Modify scheduling priority of server processes. Niceness values range from -20 (most favorable to the process) to 19 (least favorable to the process). The default does not modify priority.
Modify I/O scheduling class of server processes. I/O niceness class values are IOPRIO_CLASS_RT (realtime), IOPRIO_CLASS_BE (best-effort) and IOPRIO_CLASS_IDLE (idle). The default does not modify class and priority. Work only with ionice_priority.
Modify I/O scheduling priority of server processes. I/O niceness priority is a number which goes from 0 to 7. The higher the value, the lower the I/O priority of the process. Work only with ionice_class. Ignored if IOPRIO_CLASS_IDLE is set.

More in depth documentation about the swift-object-expirer and also OpenStack Swift as a whole can be found at https://docs.openstack.org/swift/latest/admin_guide.html and https://docs.openstack.org/swift/latest/

swift-proxy-server.conf(5),

03/15/2012 Linux