Go to main content

man pages section 5: File Formats

Exit Print View

Updated: Thursday, June 13, 2019
 
 

container-server.conf (5)

Name

container-server.conf - tainer server

Synopsis

container-server.conf

Description

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



NAME
       container-server.conf - configuration file for the OpenStack Swift con-
       tainer 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 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 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.

       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 distri-
              butions >= 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-Con-
              tainer-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  or  where  devices  are  mounted.  Default  is
              /srv/node.

       mount_check
              Whether or not check if the devices are mounted to prevent acci-
              dentally 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 you'd  like
              fallocate  to reserve, whether there is space for the given file
              size or not. The default is 0.




PIPELINE SECTION
       This is indicated by section name [pipeline:main]. Below are the param-
       eters 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 sec-
              onds.

       allow_versions
              The default is false.

       auto_create_account_prefix
              The default is '.'.

       replication_server
              Configure parameter for creating specific server.  To handle all
              verbs, including replication verbs,  do  not  specify  "replica-
              tion_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".




FILTER SECTION
       Any  section that has its name prefixed by "filter:" indicates a filter
       section.  Filters are used to specify configuration parameters for spe-
       cific  swift  middlewares.  Below are the filters available and respec-
       tive 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 nor-
                 mally 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 sup-
                 ported 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/pro-
                 file/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 sin-
                 gle 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  sec-
                 onds.

          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 destina-
                 tion 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 rysnc 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.



       [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 reaper workers to spawn. The default is 4.

          node_timeout
                 Request timeout to external services. The default is  3  sec-
                 onds.

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

          slowdown
                 Slowdown will  sleep  that  amount  between  containers.  The
                 default is 0.01 seconds.

          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.



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




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





DOCUMENTATION
       More in depth documentation about the swift-container-server  and  also
       OpenStack   Swift  as  a  whole  can  be  found  at  http://swift.open-
       stack.org/admin_guide.html and http://swift.openstack.org




ATTRIBUTES
       See attributes(7) for descriptions of the following attributes:


       +---------------+-----------------------+
       |ATTRIBUTE TYPE |   ATTRIBUTE VALUE     |
       +---------------+-----------------------+
       |Availability   | cloud/openstack/swift |
       +---------------+-----------------------+
       |Stability      | Uncommitted           |
       +---------------+-----------------------+
SEE ALSO
       swift-container-server(1)



NOTES
       This    software    was    built    from    source     available     at
       https://github.com/oracle/solaris-userland.    The  original  community
       source      was      downloaded      from        https://tarballs.open-
       stack.org/swift/swift-2.7.0.tar.gz

       Further information about this software can be found on the open source
       community website at http://www.openstack.org/.



OpenStack                          8/26/2011          container-server.conf(5)