b8e3e9e1c2
A deployer may want to remove a Swift node from a load balancer for maintenance or upgrade. This patch provides an optional mechanism for this. The healthcheck filter config can specify "disable_path" which is a filesystem path. If a file is present at that location, the healthcheck middleware returns a 503 with a body of "DISABLED BY FILE". So a deployer can configure "disable_path" and then touch that filesystem path, wait for the proxy to be removed from the load balancer pool, perform maintenance/upgrade, and then remove the "disable_path" file. Also cleaned up the conf file man pages a bit. Change-Id: I1759c78c74910a54c720f298d4d8e6fa57a4dab4
275 lines
8.4 KiB
Groff
275 lines
8.4 KiB
Groff
.\"
|
|
.\" Author: Joao Marcelo Martins <marcelo.martins@rackspace.com> or <btorch@gmail.com>
|
|
.\" Copyright (c) 2010-2012 OpenStack, LLC.
|
|
.\"
|
|
.\" 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 object-server.conf 5 "8/26/2011" "Linux" "OpenStack Swift"
|
|
|
|
.SH NAME
|
|
.LP
|
|
.B object-server.conf
|
|
\- configuration file for the openstack-swift object server
|
|
|
|
|
|
|
|
.SH SYNOPSIS
|
|
.LP
|
|
.B object-server.conf
|
|
|
|
|
|
|
|
.SH DESCRIPTION
|
|
.PP
|
|
This is the configuration file used by the object server and other object
|
|
background services, such as; replicator, updater and auditor.
|
|
|
|
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 object 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 object server should bind to. The default is 6000.
|
|
.IP \fBbacklog\fR
|
|
TCP backlog. Maximum number of allowed pending connections. The default value is 4096.
|
|
.IP \fBworkers\fR
|
|
Number of object server workers to fork. The default is 1.
|
|
.IP \fBuser\fR
|
|
The system user that the object 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.
|
|
.IP \fBlog_address\fR
|
|
Logging address. The default is /dev/log.
|
|
.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 to apply a number of filters. It is a list of filters
|
|
ended by an application. The normal pipeline is "healthcheck recon
|
|
object-server".
|
|
.RE
|
|
.PD
|
|
|
|
|
|
|
|
.SH APP SECTION
|
|
.PD 1
|
|
.RS 0
|
|
This is indicated by section name [app:object-server]. Below are the parameters
|
|
that are acceptable within this section.
|
|
.IP "\fBuse\fR"
|
|
Entry point for paste.deploy for the object server. This is the reference to the installed python egg.
|
|
This is normally \fBegg:swift#object\fR.
|
|
.IP "\fBset log_name\fR
|
|
Label used when logging. The default is object-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.
|
|
.IP \fBnode_timeout\fR
|
|
Request timeout to external services. The default is 3 seconds.
|
|
.IP \fBconn_timeout\fR
|
|
Connection timeout to external services. The default is 0.5 seconds.
|
|
.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"
|
|
.RE
|
|
.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-object services, such as replicator,
|
|
updater, auditor.
|
|
.IP "\fB[object-replicator]\fR"
|
|
.RE
|
|
.RS 3
|
|
.IP \fBlog_name\fR
|
|
Label used when logging. The default is object-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 \fBdaemonize\fR
|
|
Whether or not to run replication as a daemon. The default is yes.
|
|
.IP \fBrun_pause\fR
|
|
Time in seconds to wait between replication passes. The default is 30.
|
|
.IP \fBconcurrency\fR
|
|
Number of replication workers to spawn. The default is 1.
|
|
.IP \fBstats_interval\fR
|
|
Interval in seconds between logging replication statistics. The default is 300.
|
|
.IP \fBrsync_timeout\fR
|
|
Max duration of a partition rsync. The default is 900 seconds.
|
|
.IP \fBrsync_io_timeout\fR
|
|
Passed to rsync for I/O OP timeout. The default is 30 seconds.
|
|
.IP \fBhttp_timeout\fR
|
|
Max duration of an HTTP request. The default is 60 seconds.
|
|
.IP \fBlockup_timeout\fR
|
|
Attempts to kill all workers if nothing replicates for lockup_timeout seconds. The
|
|
default is 1800 seconds.
|
|
.IP \fBreclaim_age\fR
|
|
Time elapsed in seconds before an object can be reclaimed. The default is
|
|
604800 seconds.
|
|
.IP \fBrecon_enable\fR
|
|
Enable logging of replication stats for recon. The default is on.
|
|
.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
|
|
|
|
|
|
.RS 0
|
|
.IP "\fB[object-updater]\fR"
|
|
.RE
|
|
.RS 3
|
|
.IP \fBlog_name\fR
|
|
Label used when logging. The default is object-updater.
|
|
.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
|
|
Minimum time for a pass to take. The default is 300 seconds.
|
|
.IP \fBconcurrency\fR
|
|
Number of reaper workers to spawn. The default is 1.
|
|
.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 \fBslowdown = 0.01\fR
|
|
Slowdown will sleep that amount between objects. The default is 0.01 seconds.
|
|
.RE
|
|
.PD
|
|
|
|
|
|
.RS 0
|
|
.IP "\fB[object-auditor]\fR"
|
|
.RE
|
|
.RS 3
|
|
.IP \fBlog_name\fR
|
|
Label used when logging. The default is object-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 \fBfiles_per_second\fR
|
|
Maximum files audited per second. Should be tuned according to individual
|
|
system specs. 0 is unlimited. The default is 20.
|
|
.IP \fBbytes_per_second\fR
|
|
Maximum bytes audited per second. Should be tuned according to individual
|
|
system specs. 0 is unlimited. The default is 10000000.
|
|
.IP \fBlog_time\fR
|
|
The default is 3600 seconds.
|
|
.IP \fBzero_byte_files_per_second\fR
|
|
The default is 50.
|
|
.RE
|
|
|
|
|
|
|
|
|
|
.SH DOCUMENTATION
|
|
.LP
|
|
More in depth documentation about the swift-object-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-object-server(1),
|
|
|
|
|