Provided by: swift-container_2.33.0-0ubuntu1_all bug

NAME

       container-server.conf - configuration file for the OpenStack Swift container server

SYNOPSIS

       container-server.conf

DESCRIPTION

       This is the configuration file used by the container server and other container background
       services, such as; replicator, updater, auditor and sync.

       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
       https://docs.pylonsproject.org/projects/pastedeploy/en/latest/#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 container 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 container server should bind to. The default is 6201.

       keep_idle
              Value to set for socket TCP_KEEPIDLE. The default value is 600.

       bind_timeout
              Timeout to bind socket. The default is 30.

       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.

       allowed_sync_hosts
              This is a comma separated list of hosts allowed in  the  X-Container-Sync-To  field
              for  containers.  This  is  the  old-style  of using container sync. It is strongly
              recommended to use the new style of a separate  container-sync-realms.conf  --  see
              container-sync-realms.conf-sample allowed_sync_hosts = 127.0.0.1

       user   The system user that the container server will run as. The default is swift.

       swift_dir
              Swift configuration directory. The default is /etc/swift.

       devices
              Parent directory of 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.

       disable_fallocate
              Disable pre-allocate disk space for a file. The default is false.

       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.

       log_max_line_length
              The following caps the length of log lines to the value given; no limit if  set  to
              0, the default.

       log_custom_handlers
              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.

       log_udp_host
              If set, log_udp_host will override log_address.

       log_udp_port
              UDP log port, the default is 514.

       log_statsd_host
              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.

       log_statsd_port
              The default is 8125.

       log_statsd_default_sample_rate
              The default is 1.

       log_statsd_sample_rate_factor
              The default is 1.

       log_statsd_metric_prefix
              The default is empty.

       db_preallocation
              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.  The
              default is false.

       eventlet_debug
              Debug mode for eventlet library. The default is false.

       fallocate_reserve
              You can set fallocate_reserve to the number of bytes or percentage  of  disk  space
              you'd  like fallocate to reserve, whether there is space for the given file size or
              not. Percentage will be used if the value ends with a '%'.  The default is 1%.

       nice_priority
              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.

       ionice_class
              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.

       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.

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 container-
              server".

APP SECTION

       This is indicated by section name [app:container-server]. Below are  the  parameters  that
       are acceptable within this section.

       use    Entry point for paste.deploy for the container server. This is the reference to the
              installed python egg.  This is normally egg:swift#container.

       set log_name
              Label used when logging. The default is container-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.

       allow_versions
              The default is false.

       replication_server
              Configure parameter for creating specific server.  To handle all  verbs,  including
              replication  verbs,  do  not specify "replication_server" (this is the default). To
              only handle replication, set to a True value (e.g. "True" or "1"). To  handle  only
              non-replication  verbs,  set  to  "False".  Unless  you have a separate replication
              network, you should not specify any value for "replication_server".

       nice_priority
              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.

       ionice_class
              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.

       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.

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.

       [filter:xprofile]

          use    Entry  point for paste.deploy for the xprofile middleware. This is the reference
                 to the installed python egg.  This is normally egg:swift#xprofile.

          profile_module
                 This option enable you to switch profilers  which  should  inherit  from  python
                 standard   profiler.   Currently   the   supported   value  can  be  'cProfile',
                 'eventlet.green.profile' etc.

          log_filename_prefix
                 This prefix will be used to combine process ID and timestamp to name the profile
                 data  file.  Make sure the executing user has permission to write into this path
                 (missing path segments will be created, if necessary).  If you enable  profiling
                 in more than one type of daemon, you must override it with an unique value like,
                 the default is /var/log/swift/profile/account.profile.

          dump_interval
                 The profile data will be dumped to local disk based on above naming rule in this
                 interval. The default is 5.0.

          dump_timestamp
                 Be  careful,  this  option  will enable profiler to dump data into the file with
                 time stamp which means there will be lots of files piled up  in  the  directory.
                 The default is false

          path   This  is  the  path  of  the  URL  to  access  the  mini  web UI. The default is
                 __profile__.

          flush_at_shutdown
                 Clear the data when the wsgi server shutdown. The default is false.

          unwind Unwind the iterator of applications. Default is false.

ADDITIONAL SECTIONS

       The following sections are used by other swift-container  services,  such  as  replicator,
       updater, auditor and sync.

       [container-replicator]

          log_name
                 Label used when logging. The default is container-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.

          per_diff
                 Maximum number of database rows that will be sync'd in a single HTTP replication
                 request. The default is 1000.

          max_diffs
                 This caps how long the replicator will spend trying to sync a given database per
                 pass so the other databases don't get starved. The default is 100.

          concurrency
                 Number of replication workers to spawn. The default is 8.

          run_pause [deprecated]
                 Time in seconds to wait between replication passes. The default is 30.

          interval
                 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 30.

          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.

          reclaim_age
                 Time elapsed in seconds before an container can be  reclaimed.  The  default  is
                 604800 seconds.

          rsync_compress
                 Allow  rsync  to  compress  data which is transmitted to destination node during
                 sync. However, this is applicable only when destination node is in  a  different
                 region than the local one. The default is false.

          rsync_module
                 Format   of   the  rsync  module  where  the  replicator  will  send  data.  See
                 etc/rsyncd.conf-sample for some usage examples.

          recon_cache_path
                 Path to recon cache directory. The default is /var/cache/swift.

          nice_priority
                 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.

          ionice_class
                 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.

          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.

       [container-updater]

          log_name
                 Label used when logging. The default is container-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 updater workers to spawn. The default is 4.

          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.

          containers_per_second
                 Maximum containers updated per second. Should be tuned according  to  individual
                 system specs. 0 is unlimited. The default is 50.

          slowdown [deprecated]
                 Slowdown will sleep that amount between containers. The default is 0.01 seconds.
                 Deprecated in favor of containers_per_second

          account_suppression_time
                 Seconds to suppress updating an account that has generated an error. The default
                 is 60 seconds.

          recon_cache_path
                 Path to recon cache directory. The default is /var/cache/swift.

          nice_priority
                 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.

          ionice_class
                 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.

          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.

       [container-auditor]

          log_name
                 Label used when logging. The default is container-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.

          interval
                 Will  audit,  at  most, 1 container per device per interval. The default is 1800
                 seconds.

          containers_per_second
                 Maximum containers audited per second. Should be tuned according  to  individual
                 system specs. 0 is unlimited. The default is 200.

          recon_cache_path
                 Path to recon cache directory. The default is /var/cache/swift.

          nice_priority
                 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.

          ionice_class
                 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.

          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.

       [container-sync]

          log_name
                 Label used when logging. The default is container-sync.

          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.

          sync_proxy
                 If you need to use an HTTP Proxy, set it here; defaults to no proxy.

          interval
                 Will  audit,  at  most,  each  container  once  per interval. The default is 300
                 seconds.

          container_time
                 Maximum amount of time to spend syncing each container per pass. The default  is
                 60 seconds.

          conn_timeout
                 Connection timeout to external services. The default is 5 seconds.

          request_tries
                 Server errors from requests will be retried by default. The default is 3.

          internal_client_conf_path
                 Internal client config file path.

          nice_priority
                 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.

          ionice_class
                 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.

          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.

DOCUMENTATION

       More in depth documentation about the swift-container-server 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/

SEE ALSO

       swift-container-server(1)