112 Commits

Author SHA1 Message Date
Alistair Coles
5cf24ecf16 Fix link to docs from swift-dispersion manpages
Change the link to the admin docs to point to #dispersion-report
rather than non-existent #cluster-health.

Change-Id: Ia2f4262c266201d4d555e7bedb8c5c2eb9fb1264
2016-08-02 10:57:59 +01:00
Shashirekha Gundur
d819ae00a5 update swift-dispersion manpages to add policy-name
This change adds -P / --policy-name option to the swift-dispersion
manpages. Also tidied up a little removing some extra whitespace at the
end of lines.

Change-Id: Ic3372379994964e96258939580452f94fb575a06
Closes-Bug: #1605686
2016-08-02 07:30:56 +00:00
Jenkins
125a808fee Merge "Fix typo in object-server.conf and container-server.conf manpage" 2016-07-07 18:30:10 +00:00
Mohit Motiani
9e82891f08 Fix typo in object-server.conf and container-server.conf manpage
Change-Id: Iffad70b2fd901b305dc66d363039b7df44d619da
2016-07-07 15:21:01 +00:00
Mohit Motiani
4c0a1481f1 Fix typo in the account-server.conf manpage
Change-Id: I4e7bb85ce746fcb1ec3a4cbf534761e4e47634c9
Closes-Bug: #1599888
2016-07-07 14:56:10 +00:00
Mohit Motiani
6c9a1899a1 Adds region as a search-value in manpage
This patch adds region and example related to it in the man page
of swift-ring-builder.

Change-Id: I12ceab4e41240240cf2daa77dad94729dd1fd76d
2016-06-10 11:56:07 -07:00
Mohit Motiani
334140a543 Removed whitespaces from swift-ring-builder manpage
Change-Id: I25cf69f8d963ba84df4c59129d72ee39ec341bd3
2016-06-07 19:13:34 +00:00
Ondřej Nový
a54095e562 swift-ring-builder --yes option
This option assume a yes response to all questions. It is usefull for
scripts.

Change-Id: I28ca1a44507e0f1265afd36e6ac1e7c6c176428f
2016-05-31 17:11:13 +02:00
Jenkins
a403faadd4 Merge "Allow fallocate_reserve to be a percentage" 2016-05-12 08:18:39 +00:00
Jenkins
6a88f27eb0 Merge "Remove threads_per_disk setting" 2016-05-11 01:36:43 +00:00
Shashirekha Gundur
cf48e75c25 change default ports for servers
Changing the recommended ports for Swift services
from ports 6000-6002 to unused ports 6200-6202;
so they do not conflict with X-Windows or other services.

Updated SAIO docs.

DocImpact
Closes-Bug: #1521339
Change-Id: Ie1c778b159792c8e259e2a54cb86051686ac9d18
2016-04-29 14:47:38 -04:00
Christian Schwede
9d6a055b31 Remove threads_per_disk setting
This patch removes the threads_per_disk setting. It was already a deprecated
setting and by default set to 0, which effectively meant to not use a per-disk
thread pool at all. Users are encouraged to use servers_per_port instead.

DocImpact

Change-Id: Ie76be5c8a74d60a1330627caace19e06d1b9383c
2016-04-28 12:06:24 -05:00
Andy McCrae
0da9da5131 Allow fallocate_reserve to be a percentage
Add the ability to set the fallocate_reserve value as a percentage.
This happens automatically when adding the '%' at the end of the value.
Having the ability to set a % of free space rather than a byte value is
useful especially when drive sizes are heterogenous.

The default for fallocate_reserve has been adjusted to 1%, having the
fallocate_reserve set seems sensible for all deploys and percentages are
far safer to default than byte values (across drives of any size).

Tests added for using fallocate_reserve as a percentage.

Duplicate tests for fallocate_reserve have been removed.

Docs updated to reflect the fallocate_reserve change.

Change-Id: I4aea613a708205c917e81d6b2861396655e73238
2016-04-23 08:02:00 -05:00
Nguyen Hung Phuong
59bbe27fb0 Fix typos in Swift files
Change-Id: I34e0c9a888127704ac1910e73ddd14e27ebade13
2016-03-30 04:15:23 +00:00
Jenkins
4be3701805 Merge "Auditor will clean up stale rsync tempfiles" 2016-03-23 22:21:51 +00:00
Clay Gerrard
1d03803a85 Auditor will clean up stale rsync tempfiles
DiskFile already fills in the _ondisk_info attribute when it tries to open
a diskfile - even if the DiskFile's fileset is not valid or deleted.
During this process the rsync tempfiles would be discovered and logged,
but no-one would attempt to clean them up - even if they were really old.

Instead of logging and ignoring unexpected files when validate a DiskFile
fileset we'll add unexpected files to the unexpected key in the
_ondisk_info attribute.

With a little bit of re-organization in the auditor's object_audit method
to get things into a single return path we can add an unconditional check
for unexpected files and remove those that are "old enough".

Since the replicator will kill any rsync processes that are running longer
than the configured rsync_timeout we know that any rsync tempfiles older
than this can be deleted.

Split unlink_older_than in common.utils into two functions to allow an
explicit list of previously discovered paths to be passed in to avoid an
extra listdir.  Since the getmtime handling already ignores OSError
there's less concern of race condition where a previous discovered
unexpected file is reaped by rsync while we're attempting to clean it up.

Update some doc on the new config option.

Closes-Bug: #1554005

Change-Id: Id67681cb77f605e3491b8afcb9c69d769e154283
2016-03-23 19:34:34 +00:00
Alistair Coles
736de613f1 Docs: Container sync does not require POST-as-COPY
Updates docs to remove warnings that container sync only
works with object_post_as_copy=True. Since commit e91de49
container sync will also sync POST updates when using
object_post_as_copy=False.

Change-Id: I5cc3cc6e8f9ba2fef6f896f2b11d2a4e06825f7f
2016-03-22 11:36:32 +00:00
Jenkins
7cc2c783a4 Merge "Keystone middleware deprecated option is_admin removed" 2016-03-18 10:51:46 +00:00
Jenkins
1637fa2f8f Merge "Make keystone middleware options consistent in docs" 2016-03-18 10:43:23 +00:00
Alistair Coles
6efee0ebb1 Make keystone middleware options consistent in docs
Bring overview_auth.rst and proxy server man page
up to date with changes made in [1]

[1] Change-Id: I373734933189c87c4094203b0752dd3762689034

Change-Id: Ia16f0c391e7c357ccb9c13945839dc5647e49a13
2016-03-16 11:43:20 +00:00
Kota Tsuyuzaki
ecbcc94989 Fix ssync related object-server docs
Swift now uses SSYNC verb instead of old REPLICATION verb for ssync
protocol. This patch replaces all docs written as REPLICATION into
SSYNC and fix a few words for explanation.

Change-Id: I1253210d4f49749e7d425d6252dd262b650d9548
2016-03-16 08:58:31 +00:00
Ondřej Nový
335d58611d Keystone middleware deprecated option is_admin removed
It has been deprecated from Swift 1.8.0 (Grizzly)

Change-Id: Id6bc10c3e84262c0a9e6160a76af03c0ad363e9c
2016-02-11 10:52:47 +00:00
root
bcada66b90 Removed unused parameter in server.py
The variable max_large_object_get_time is no longer used and was
removed to reflect the change.

Change-Id: I43051181dcb38245de6d13fab63876e83f46fc39
Closes-Bug: #1538834
2016-02-10 14:26:10 -06:00
Ondřej Nový
ae632abbd8 Fixed manpages errors.
account-server.conf.5
105: warning: numeric expression expected (got `)')

container-server.conf.5
111: warning: numeric expression expected (got `)')

object-expirer.conf.5
79: warning: numeric expression expected (got `)')

object-server.conf.5
114: warning: numeric expression expected (got `)')

proxy-server.conf.5
121: warning: numeric expression expected (got `)')
331: warning: numeric expression expected (got `[')
1005: warning: macro `*' not defined

Change-Id: I203dcfde83035e3b1dcb91109b72b5d08bb7840e
2016-02-04 16:20:14 +01:00
Jenkins
eaf6af3179 Merge "Allow IPv6 addresses/hostnames in StatsD target" 2016-02-04 03:23:01 +00:00
Darrell Bishop
26327e1e8b Allow IPv6 addresses/hostnames in StatsD target
The log_statsd_host value can now be an IPv6 address or a hostname
which only resolves to an IPv6 address.  In both cases, the new
behavior is to use an AF_INET6 socket on which .sendto() is called
with the originally-configured hostname (or IP).  This means the
Swift process is not caching a DNS resolution for the lifetime of
the process (a good thing).

If a hostname resolves to both an IPv6 or IPv4 address, an AF_INET
socket is used (i.e. only the IPv4 address will receive the UDP
packet).

The old behavior is preserved: any invalid IP address literals and
failures in DNS resolution or actual StatsD packet sending do not
halt the process or bubble up; they are caught, logged, and
otherwise ignored.

Change-Id: Ibddddcf140e2e69b08edf3feed3e9a5fa17307cf
2016-02-03 00:26:31 -08:00
Thomas Goirand
c3886eea15 Fix a few English mistakes in man
These errors are producing lintian warnings, so fixing them
helps having less errors when checking for Debian packages.

Change-Id: Iff99a8d5f2276515f42d758d110a43cae757db28
2016-01-28 09:16:59 +00:00
Clay Gerrard
3347646023 fixups for ipv6 memcache_servers docs
Change-Id: I20d91c1e276014eaf210fa9eb43788bc17f4e8df
2016-01-12 21:08:58 -08:00
Ondřej Nový
3b1591f235 swift-init: New option kill-after-timeout
This option send SIGKILL to daemon after kill_wait period.
When daemon hangs and doesn't respond to SIGTERM/SIGHUP
there is no way to stop it using swift-init now. Classic
init scripts in Linux kills hanged process after grace
period and this patch add same behaviour. This is most
usefull when using "restart" on hanged daemon.

Change-Id: I8c932b673a0f51e52132df87ea2f4396f4bba9d8
2016-01-05 11:34:03 +01:00
Peter Lisák
28c4b7310f Unification of manpages and conf-samples (default values, etc)
Change-Id: I47a3127ef698b4bd1537b1562901ee9c2b5924d4
2015-11-30 10:08:16 -08:00
Jenkins
caebea16d6 Merge "swift-init return codes" 2015-11-25 16:25:55 +00:00
Lisak, Peter
7b7c6c5249 swift-init return codes
Currently, swift-init returns zero if can't locate config on start.
Because of this problem, it is not possible to distinguish if managed
to start server.

Due to legacy two new complementary options are added. Default is context
dependent.
--strict returns non-zero if some config is missing (default mode
if explicitly named server)
--non-strict returns zero even if some config is missing (default mode
if alias is used)

As a side effect:
If some of demanded servers already running it does not try to start
unstarted and also returns non-zero (in strict mode). That is still sufficient
for the goal of patch.

For future improvements LSB status codes should be considered.

DocImpact
Change-Id: I7750abd4a94875b46f83f4aeee8509388d543c2b
2015-11-16 07:07:11 +01:00
Jenkins
58fcc82428 Merge "Compare Swift config checksum in swift-recon --all" 2015-11-10 19:34:17 +00:00
Ondřej Nový
e0430fc74a Compare Swift config checksum in swift-recon --all
Change-Id: I796fe0895f4e5ddeb04c0d79a73579ce8bb9aa40
2015-11-05 21:21:21 +01:00
Alistair Coles
1a2b54fc0a Fix missing *-replicator conf sections in deployment guide
The doc for these sections was missing because of an rst error - the
source is there in rst file but didn't make it into the html output.

Add doc for per_diff and max_diffs in account and container doc sections.

Also, fix a bunch of other sphinx build errors and most of the warnings.

Change-Id: If9ed2619b2f92c6c65a94f41d8819db8726d3893
2015-10-23 14:58:38 +01:00
Romain LE DISEZ
71f6fd025e Allows to configure the rsync modules where the replicators will send data
Currently, the rsync module where the replicators send data is static. It
forbids administrators to set rsync configuration based on their current
deployment or needs.

As an example, the rsyncd configuration example encourages to set a connections
limit for the modules account, container and object. It permits to protect
devices from excessives parallels connections, because it would impact
performances.

On a server with many devices, it is tempting to increase this number
proportionally, but nothing guarantees that the distribution of the connections
will be balanced. In the worst scenario, a single device can receive all the
connections, which is a severe impact on performances.

This commit adds a new option named 'rsync_module' to the *-replicator sections
of the *-server configuration file. This configuration variable can be
extrapolated with device attributes like ip, port, device, zone, ... by using
the format {NAME}. eg:
    rsync_module = {replication_ip}::object_{device}

With this configuration, an administrators can solve the problem of connections
distribution by creating one module per device in rsyncd configuration.

The default values are backward compatible:
    {replication_ip}::account
    {replication_ip}::container
    {replication_ip}::object

Option vm_test_mode is deprecated by this commit, but backward compatibility is
maintained. The option is only effective when rsync_module is not set. In that
case, {replication_port} is appended to the default value of rsync_module.

Change-Id: Iad91df50dadbe96c921181797799b4444323ce2e
2015-09-07 08:00:18 +02:00
Jenkins
617c6b0107 Merge "Time synchronization check in recon." 2015-08-18 01:21:22 +00:00
Jenkins
67fcc37b73 Merge "Cleanup nits from container_update_timeout" 2015-08-06 00:27:14 +00:00
Jenkins
4e92d5e7b7 Merge "do container listing updates in another (green)thread" 2015-08-06 00:27:09 +00:00
Jenkins
e1683fdb2e Merge "Support keystone v3 domains in swift-dispersion" 2015-07-31 06:59:01 +00:00
Charles Hsu
345785837f Remove error_suppression_interval, error_suppression_limit options.
These two options is belong to proxy-server, not account-replicator.

Change-Id: Ie030ecffd213e56db32df77c69b847479d96308f
2015-07-29 22:25:44 -07:00
Falk Reimann
363a256e58 Support keystone v3 domains in swift-dispersion
This provides the capability to specify a project_name,
project_domain_name and user_domain_name in /etc/swift/dispersion.conf.
If this values are set in dispersion.conf they get populated to the
swift-client.  With this it is possible to have a specific dispersion
project specified, which is not the keystone default domain.  Changes
were applied to swift-dispersion-populate and swift-dispersion-report.
Relevant man pages, the example dispersion.conf and the admin guide were
updated accordingly.

DocImpact
Closes-Bug: #1468374

Change-Id: I0e716f8d281b4d0f510bc568bcee4a13fc480ff7
2015-07-24 13:40:24 -05:00
Ondrej Novy
dd2f1be3b1 Time synchronization check in recon.
This change add call time to recon middleware and param --time to
recon CLI. This is usefull for checking if time in cluster is
synchronized.

Change-Id: I62373e681f64d0bd71f4aeb287953dd3b2ea5662
2015-07-23 11:35:02 +02:00
Clay Gerrard
cbcfb74132 Cleanup nits from container_update_timeout
Change-Id: Ib17fc9a027db267350abc5a7db4e3172dfff7913
2015-07-22 19:32:46 -07:00
John Dickinson
2289137164 do container listing updates in another (green)thread
The actual server-side changes are simple. The tests are a different
matter. Many changes were needed to the object server tests to
handle the now-async calls to the container server. In an effort to
test this properly, some drive-by changes were made to improve tests.

I tested this patch by doing zero-byte object writes to one container
as fast as possible. Then I did it again while also saturating 2 of the
container replica's disks. The results are linked below.

https://gist.github.com/notmyname/2bb85acfd8fbc7fc312a

DocImpact

Change-Id: I737bd0af3f124a4ce3e0862a155e97c1f0ac3e52
2015-07-22 01:19:58 -07:00
Jenkins
b32abab56c Merge "Allow default reseller prefix in domain_remap middleware" 2015-06-19 00:43:15 +00:00
Koert van der Veer
11e5c4adf0 Allow default reseller prefix in domain_remap middleware
Previously, the reseller prefix needed to be provided in the host name
even when the domain was unique to that reseller. With the
default_reseller_prefix, any domain which matches in this middleware,
will will be passed on with a reseller prefix, whether or not it was
provided.

Change-Id: I5aa5ce78ad1ee2e3660cce4c3e07306f8999f02a
Implements: blueprint domainremap-reseller-domains
2015-06-06 12:54:41 -07:00
Mark Seger
af734b3fb6 Change usage help and Attention messages to warnings
Change-Id: I1396aaffe36e739606f15f7fef37b11bd83f1fc1
2015-06-03 15:32:25 -04:00
Joanna H. Huang
af8d842076 Replaced setting run_pause with standard interval
The deprecated directive `run_pause` should be replaced with the more
standard one `interval`. The `run_pause` should be still supported for
backward compatibility. This patch updates object replicator to use
`interval` and support `run_pause`. It also updates its sample config
and documentation.

Co-Authored-By: Joanna H. Huang <joanna.huitzu.huang@gmail.com>
Co-Authored-By: Kamil Rykowski <kamil.rykowski@intel.com>

Change-Id: Ie2a3414a96a94efb9273ff53a80b9d90c74fff09
Closes-Bug: #1364735
2015-05-25 11:47:47 +02:00
Pete Zaitcev
0b20a18e52 Spell "rebalance" right in swift-ring-builder.1
See Red Hat bug #1218269.

Change-Id: I814eb4b3c0821f5a8df5feea2bda3a964aace536
2015-05-07 13:17:15 -06:00