summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPedro Alvarez <pedro.alvarez@codethink.co.uk>2015-06-01 13:14:36 +0000
committerPedro Alvarez <pedro.alvarez@codethink.co.uk>2015-06-04 13:50:41 +0000
commit3e509457fef0eb4fc9c39001d565c003fc62edc9 (patch)
tree1513484ca46f24589e7dcb30f2424eb9e77b3f09
parent0d8b3dedd24aea45dddd43f911d57f64da5195c2 (diff)
downloaddefinitions-3e509457fef0eb4fc9c39001d565c003fc62edc9.tar.gz
Swift: Sync configuration files with 2.3.0 (Kilo)
-rw-r--r--install-files/swift/usr/share/swift/etc/swift/container-server.j28
-rw-r--r--install-files/swift/usr/share/swift/etc/swift/object-server.j225
-rw-r--r--install-files/swift/usr/share/swift/etc/swift/swift.j253
3 files changed, 84 insertions, 2 deletions
diff --git a/install-files/swift/usr/share/swift/etc/swift/container-server.j2 b/install-files/swift/usr/share/swift/etc/swift/container-server.j2
index d226d016..3c63b7d0 100644
--- a/install-files/swift/usr/share/swift/etc/swift/container-server.j2
+++ b/install-files/swift/usr/share/swift/etc/swift/container-server.j2
@@ -168,6 +168,14 @@ recon_cache_path = /var/cache/swift
#
# Maximum amount of time to spend syncing each container per pass
# container_time = 60
+#
+# Maximum amount of time in seconds for the connection attempt
+# conn_timeout = 5
+# Server errors from requests will be retried by default
+# request_tries = 3
+#
+# Internal client config file path
+# internal_client_conf_path = /etc/swift/internal-client.conf
# Note: Put it at the beginning of the pipeline to profile all middleware. But
# it is safer to put this after healthcheck.
diff --git a/install-files/swift/usr/share/swift/etc/swift/object-server.j2 b/install-files/swift/usr/share/swift/etc/swift/object-server.j2
index 66990be9..19d72f6c 100644
--- a/install-files/swift/usr/share/swift/etc/swift/object-server.j2
+++ b/install-files/swift/usr/share/swift/etc/swift/object-server.j2
@@ -77,7 +77,7 @@ use = egg:swift#object
# slow = 0
#
# Objects smaller than this are not evicted from the buffercache once read
-# keep_cache_size = 5424880
+# keep_cache_size = 5242880
#
# If true, objects for authenticated GET requests may be kept in buffer cache
# if small enough
@@ -212,6 +212,29 @@ recon_cache_path = /var/cache/swift
# removed when it has successfully replicated to all the canonical nodes.
# handoff_delete = auto
+[object-reconstructor]
+# You can override the default log routing for this app here (don't use set!):
+# Unless otherwise noted, each setting below has the same meaning as described
+# in the [object-replicator] section, however these settings apply to the EC
+# reconstructor
+#
+# log_name = object-reconstructor
+# log_facility = LOG_LOCAL0
+# log_level = INFO
+# log_address = /dev/log
+#
+# daemonize = on
+# run_pause = 30
+# concurrency = 1
+# stats_interval = 300
+# node_timeout = 10
+# http_timeout = 60
+# lockup_timeout = 1800
+# reclaim_age = 604800
+# ring_check_interval = 15
+# recon_cache_path = /var/cache/swift
+# handoffs_first = False
+
[object-updater]
# You can override the default log routing for this app here (don't use set!):
# log_name = object-updater
diff --git a/install-files/swift/usr/share/swift/etc/swift/swift.j2 b/install-files/swift/usr/share/swift/etc/swift/swift.j2
index 6d76215a..933e207e 100644
--- a/install-files/swift/usr/share/swift/etc/swift/swift.j2
+++ b/install-files/swift/usr/share/swift/etc/swift/swift.j2
@@ -22,9 +22,13 @@ swift_hash_path_prefix = {{ SWIFT_HASH_PATH_PREFIX }}
# defined you must define a policy with index 0 and you must specify a
# default. It is recommended you always define a section for
# storage-policy:0.
+#
+# A 'policy_type' argument is also supported but is not mandatory. Default
+# policy type 'replication' is used when 'policy_type' is unspecified.
[storage-policy:0]
name = Policy-0
default = yes
+#policy_type = replication
# the following section would declare a policy called 'silver', the number of
# replicas will be determined by how the ring is built. In this example the
@@ -39,9 +43,45 @@ default = yes
# current default.
#[storage-policy:1]
#name = silver
+#policy_type = replication
+
+# The following declares a storage policy of type 'erasure_coding' which uses
+# Erasure Coding for data reliability. The 'erasure_coding' storage policy in
+# Swift is available as a "beta". Please refer to Swift documentation for
+# details on how the 'erasure_coding' storage policy is implemented.
+#
+# Swift uses PyECLib, a Python Erasure coding API library, for encode/decode
+# operations. Please refer to Swift documentation for details on how to
+# install PyECLib.
+#
+# When defining an EC policy, 'policy_type' needs to be 'erasure_coding' and
+# EC configuration parameters 'ec_type', 'ec_num_data_fragments' and
+# 'ec_num_parity_fragments' must be specified. 'ec_type' is chosen from the
+# list of EC backends supported by PyECLib. The ring configured for the
+# storage policy must have it's "replica" count configured to
+# 'ec_num_data_fragments' + 'ec_num_parity_fragments' - this requirement is
+# validated when services start. 'ec_object_segment_size' is the amount of
+# data that will be buffered up before feeding a segment into the
+# encoder/decoder. More information about these configuration options and
+# supported `ec_type` schemes is available in the Swift documentation. Please
+# refer to Swift documentation for details on how to configure EC policies.
+#
+# The example 'deepfreeze10-4' policy defined below is a _sample_
+# configuration with 10 'data' and 4 'parity' fragments. 'ec_type'
+# defines the Erasure Coding scheme. 'jerasure_rs_vand' (Reed-Solomon
+# Vandermonde) is used as an example below.
+#
+#[storage-policy:2]
+#name = deepfreeze10-4
+#policy_type = erasure_coding
+#ec_type = jerasure_rs_vand
+#ec_num_data_fragments = 10
+#ec_num_parity_fragments = 4
+#ec_object_segment_size = 1048576
+
# The swift-constraints section sets the basic constraints on data
-# saved in the swift cluster. These constraints are automatically
+# saved in the swift cluster. These constraints are automatically
# published by the proxy server in responses to /info requests.
[swift-constraints]
@@ -116,3 +156,14 @@ default = yes
# of a container name
#max_container_name_length = 256
+
+
+# By default all REST API calls should use "v1" or "v1.0" as the version string,
+# for example "/v1/account". This can be manually overridden to make this
+# backward-compatible, in case a different version string has been used before.
+# Use a comma-separated list in case of multiple allowed versions, for example
+# valid_api_versions = v0,v1,v2
+# This is only enforced for account, container and object requests. The allowed
+# api versions are by default excluded from /info.
+
+# valid_api_versions = v1,v1.0