Move swift memcache conf into separate file

The memcache configuration was only setup for the proxy-server.conf
within Swift, and was not set for the object and container reconcilers
which both use memcache.

This patch moves the memcache settings into a separate memcache.conf
file which is then configured on all swift hosts, removing the specific
conf from the proxy-server.conf file.

Change-Id: I047b2d1178de43c694c30280f6ed9fe8511341fd
Closes-Bug: #1542121
This commit is contained in:
Andy McCrae 2016-02-09 16:13:51 +00:00 committed by Jesse Pretorius (odyssey4me)
parent d72dcb89d0
commit 140f3772e5
4 changed files with 35 additions and 2 deletions

View File

@ -256,3 +256,4 @@ swift_container_server_replicator_conf_overrides: {}
swift_object_server_conf_overrides: {}
swift_object_expirer_conf_overrides: {}
swift_object_server_replicator_conf_overrides: {}
swift_memcache_conf_overrides: {}

View File

@ -31,6 +31,10 @@
dest: "/etc/swift/dispersion.conf"
config_overrides: "{{ swift_swift_dispersion_conf_overrides }}"
config_type: "ini"
- src: "swift-memcache.conf.j2"
dest: "/etc/swift/memcache.conf"
config_overrides: "{{ swift_memcache_conf_overrides }}"
config_type: "ini"
notify:
- Restart swift account services
- Restart swift container services

View File

@ -114,8 +114,6 @@ use = egg:swift#healthcheck
[filter:cache]
use = egg:swift#memcache
memcache_servers = {{ memcached_servers }}
memcache_serialization_support = 2
[filter:ratelimit]
use = egg:swift#ratelimit

View File

@ -0,0 +1,30 @@
[memcache]
# You can use this single conf file instead of having memcache_servers set in
# several other conf files under [filter:cache] for example. You can specify
# multiple servers separated with commas, as in: 10.1.2.3:11211,10.1.2.4:11211
# (IPv6 addresses must follow rfc3986 section-3.2.2, i.e. [::1]:11211)
# memcache_servers = 127.0.0.1:11211
memcache_servers = {{ memcached_servers }}
#
# Sets how memcache values are serialized and deserialized:
# 0 = older, insecure pickle serialization
# 1 = json serialization but pickles can still be read (still insecure)
# 2 = json serialization only (secure and the default)
# To avoid an instant full cache flush, existing installations should
# upgrade with 0, then set to 1 and reload, then after some time (24 hours)
# set to 2 and reload.
# In the future, the ability to use pickle serialization will be removed.
# memcache_serialization_support = 2
memcache_serialization_support = 2
#
# Sets the maximum number of connections to each memcached server per worker
# memcache_max_connections = 2
#
# Timeout for connection
# connect_timeout = 0.3
# Timeout for pooled connection
# pool_timeout = 1.0
# number of servers to retry on failures getting a pooled connection
# tries = 3
# Timeout for read and writes
# io_timeout = 2.0