de3acec4bf
Change the default value of wsgi workers from 1 to auto. The new default value for workers in the proxy, container, account & object wsgi servers will spawn as many workers per process as you have cpu cores. This will not be ideal for some configurations, but it's much more likely to produce a successful out of the box deployment. Inspect the number of cpu_cores using python's multiprocessing when available. Multiprocessing was added in python 2.6, but I know I've compiled python without it before on accident. The cpu_count method seems to be pretty system agnostic, but it says it can raise NotImplementedError or sometimes return 0. Add a new utility method 'config_auto_int_value' to pull an integer out of the config which has a dynamic default. * drive by s/container/proxy/ in proxy-server.conf.5 * fix misplaced max_clients in *-server.conf-sample * update doc/development_saio to force workers = 1 DocImpact Change-Id: Ifa563d22952c902ab8cbe1d339ba385413c54e95
265 lines
8.5 KiB
Groff
265 lines
8.5 KiB
Groff
.\"
|
|
.\" Author: Joao Marcelo Martins <marcelo.martins@rackspace.com> or <btorch@gmail.com>
|
|
.\" Copyright (c) 2010-2012 OpenStack Foundation.
|
|
.\"
|
|
.\" Licensed under the Apache License, Version 2.0 (the "License");
|
|
.\" you may not use this file except in compliance with the License.
|
|
.\" You may obtain a copy of the License at
|
|
.\"
|
|
.\" http://www.apache.org/licenses/LICENSE-2.0
|
|
.\"
|
|
.\" Unless required by applicable law or agreed to in writing, software
|
|
.\" distributed under the License is distributed on an "AS IS" BASIS,
|
|
.\" WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or
|
|
.\" implied.
|
|
.\" See the License for the specific language governing permissions and
|
|
.\" limitations under the License.
|
|
.\"
|
|
.TH account-server.conf 5 "8/26/2011" "Linux" "OpenStack Swift"
|
|
|
|
.SH NAME
|
|
.LP
|
|
.B account-server.conf
|
|
\- configuration file for the openstack-swift account server
|
|
|
|
|
|
|
|
.SH SYNOPSIS
|
|
.LP
|
|
.B account-server.conf
|
|
|
|
|
|
|
|
.SH DESCRIPTION
|
|
.PP
|
|
This is the configuration file used by the account server and other account
|
|
background services, such as; replicator, auditor and reaper.
|
|
|
|
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
|
|
\fIhttp://pythonpaste.org/deploy/#config-format\fR
|
|
|
|
|
|
|
|
.SH GLOBAL SECTION
|
|
.PD 1
|
|
.RS 0
|
|
This is indicated by section named [DEFAULT]. Below are the parameters that
|
|
are acceptable within this section.
|
|
|
|
.IP "\fBbind_ip\fR"
|
|
IP address the account server should bind to. The default is 0.0.0.0 which will make
|
|
it bind to all available addresses.
|
|
.IP "\fBbind_port\fR"
|
|
TCP port the account server should bind to. The default is 6002.
|
|
.IP \fBbacklog\fR
|
|
TCP backlog. Maximum number of allowed pending connections. The default value is 4096.
|
|
.IP \fBworkers\fR
|
|
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.
|
|
.IP \fBmax_clients\fR
|
|
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.
|
|
.IP \fBuser\fR
|
|
The system user that the account server will run as. The default is swift.
|
|
.IP \fBswift_dir\fR
|
|
Swift configuration directory. The default is /etc/swift.
|
|
.IP \fBdevices\fR
|
|
Parent directory or where devices are mounted. Default is /srv/node.
|
|
.IP \fBmount_check\fR
|
|
Whether or not check if the devices are mounted to prevent accidentally writing to
|
|
the root device. The default is set to true.
|
|
.IP \fBlog_name\fR
|
|
Label used when logging. The default is swift.
|
|
.IP \fBlog_facility\fR
|
|
Syslog log facility. The default is LOG_LOCAL0.
|
|
.IP \fBlog_level\fR
|
|
Logging level. The default is INFO.
|
|
.RE
|
|
.PD
|
|
|
|
|
|
|
|
.SH PIPELINE SECTION
|
|
.PD 1
|
|
.RS 0
|
|
This is indicated by section name [pipeline:main]. Below are the parameters that
|
|
are acceptable within this section.
|
|
|
|
.IP "\fBpipeline\fR"
|
|
It is used when you need apply a number of filters. It is a list of filters
|
|
ended by an application. The normal pipeline is "healthcheck
|
|
recon account-server".
|
|
.RE
|
|
.PD
|
|
|
|
|
|
|
|
.SH APP SECTION
|
|
.PD 1
|
|
.RS 0
|
|
This is indicated by section name [app:account-server]. Below are the parameters
|
|
that are acceptable within this section.
|
|
.IP "\fBuse\fR"
|
|
Entry point for paste.deploy for the account server. This is the reference to the installed python egg.
|
|
This is normally \fBegg:swift#account\fR.
|
|
.IP "\fBset log_name\fR
|
|
Label used when logging. The default is account-server.
|
|
.IP "\fBset log_facility\fR
|
|
Syslog log facility. The default is LOG_LOCAL0.
|
|
.IP "\fB set log_level\fR
|
|
Logging level. The default is INFO.
|
|
.IP "\fB set log_requests\fR
|
|
Enables request logging. The default is True.
|
|
.IP "\fB set log_address\fR
|
|
Logging address. The default is /dev/log.
|
|
.RE
|
|
.PD
|
|
|
|
|
|
|
|
.SH FILTER SECTION
|
|
.PD 1
|
|
.RS 0
|
|
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.
|
|
.IP "\fB[filter:healthcheck]\fR"
|
|
.RE
|
|
.RS 3
|
|
.IP "\fBuse\fR"
|
|
Entry point for paste.deploy for the healthcheck middleware. This is the reference to the installed python egg.
|
|
This is normally \fBegg:swift#healthcheck\fR.
|
|
.IP "\fBdisable_path\fR"
|
|
An optional filesystem path which, if present, will cause the healthcheck
|
|
URL to return "503 Service Unavailable" with a body of "DISABLED BY FILE".
|
|
.RE
|
|
|
|
.RS 0
|
|
.IP "\fB[filter:recon]\fR"
|
|
.RS 3
|
|
.IP "\fBuse\fR"
|
|
Entry point for paste.deploy for the recon middleware. This is the reference to the installed python egg.
|
|
This is normally \fBegg:swift#recon\fR.
|
|
.IP "\fBrecon_cache_path\fR"
|
|
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.
|
|
.RE
|
|
.PD
|
|
|
|
|
|
|
|
.SH ADDITIONAL SECTIONS
|
|
.PD 1
|
|
.RS 0
|
|
The following sections are used by other swift-account services, such as replicator,
|
|
auditor and reaper.
|
|
.IP "\fB[account-replicator]\fR"
|
|
.RE
|
|
.RS 3
|
|
.IP \fBlog_name\fR
|
|
Label used when logging. The default is account-replicator.
|
|
.IP \fBlog_facility\fR
|
|
Syslog log facility. The default is LOG_LOCAL0.
|
|
.IP \fBlog_level\fR
|
|
Logging level. The default is INFO.
|
|
.IP \fBlog_address\fR
|
|
Logging address. The default is /dev/log.
|
|
.IP \fBvm_test_mode\fR
|
|
Indicates that you are using a VM environment. The default is no.
|
|
.IP \fBper_diff\fR
|
|
The default is 1000.
|
|
.IP \fBmax_diffs\fR
|
|
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.
|
|
.IP \fBconcurrency\fR
|
|
Number of replication workers to spawn. The default is 8.
|
|
.IP "\fBrun_pause [deprecated]\fR"
|
|
Time in seconds to wait between replication passes. The default is 10.
|
|
.IP \fBinterval\fR
|
|
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.
|
|
.IP \fBerror_suppression_interval\fR
|
|
How long without an error before a node's error count is reset. This will also be how long before a node is re-enabled after suppression is triggered.
|
|
The default is 60 seconds.
|
|
.IP \fBerror_suppression_limit\fR
|
|
How many errors can accumulate before a node is temporarily ignored. The default
|
|
is 10 seconds.
|
|
.IP \fBnode_timeout\fR
|
|
Request timeout to external services. The default is 10 seconds.
|
|
.IP \fBconn_timeout\fR
|
|
Connection timeout to external services. The default is 0.5 seconds.
|
|
.IP \fBreclaim_age\fR
|
|
Time elapsed in seconds before an account can be reclaimed. The default is
|
|
604800 seconds.
|
|
.RE
|
|
|
|
|
|
|
|
.RS 0
|
|
.IP "\fB[account-auditor]\fR"
|
|
.RE
|
|
.RS 3
|
|
.IP \fBlog_name\fR
|
|
Label used when logging. The default is account-auditor.
|
|
.IP \fBlog_facility\fR
|
|
Syslog log facility. The default is LOG_LOCAL0.
|
|
.IP \fBlog_level\fR
|
|
Logging level. The default is INFO.
|
|
.IP \fBlog_address\fR
|
|
Logging address. The default is /dev/log.
|
|
.IP \fBinterval\fR
|
|
Will audit, at most, 1 account per device per interval. The default is 1800 seconds.
|
|
.IP \fBaccounts_per_second\fR
|
|
Maximum accounts audited per second. Should be tuned according to individual system specs. 0 is unlimited. The default is 200.
|
|
.RE
|
|
|
|
|
|
|
|
.RS 0
|
|
.IP "\fB[account-reaper]\fR"
|
|
.RE
|
|
.RS 3
|
|
.IP \fBlog_name\fR
|
|
Label used when logging. The default is account-reaper.
|
|
.IP \fBlog_facility\fR
|
|
Syslog log facility. The default is LOG_LOCAL0.
|
|
.IP \fBlog_level\fR
|
|
Logging level. The default is INFO.
|
|
.IP \fBlog_address\fR
|
|
Logging address. The default is /dev/log.
|
|
.IP \fBconcurrency\fR
|
|
Number of reaper workers to spawn. The default is 25.
|
|
.IP \fBinterval\fR
|
|
Minimum time for a pass to take. The default is 3600 seconds.
|
|
.IP \fBnode_timeout\fR
|
|
Request timeout to external services. The default is 10 seconds.
|
|
.IP \fBconn_timeout\fR
|
|
Connection timeout to external services. The default is 0.5 seconds.
|
|
.RE
|
|
.PD
|
|
|
|
|
|
|
|
|
|
.SH DOCUMENTATION
|
|
.LP
|
|
More in depth documentation about the swift-account-server and
|
|
also Openstack-Swift as a whole can be found at
|
|
.BI http://swift.openstack.org/admin_guide.html
|
|
and
|
|
.BI http://swift.openstack.org
|
|
|
|
|
|
.SH "SEE ALSO"
|
|
.BR swift-account-server(1),
|