60 Commits

Author SHA1 Message Date
Aleksandr Didenko
a2cae16d31 Allow to customize log_name for services
This patch allows us to customize log_name for:
- proxy-server
- container-server
- object-server
- account-server

Which may be usefull for log collecting/parsing. Defaults remain
as they were before the patch.

Change-Id: I173652ec5bbe8d4382e10db4510d91aebceacab5
2014-10-14 21:14:37 +03:00
Lukas Bezdicka
9d592f61e4 Add swift::proxy::crossdomain class
Change-Id: Ie7e5dfc3732ad552063293f16aa04a791bc5add8
swift::proxy::crossdomain class is used to configure crossdomain middleware.
2014-06-03 16:00:01 +02:00
Chris Ricker
a20a178c42 Fix swift quota filter names
Align account_quotas and container_quotas filter names to prevent
swift-proxy from tracing back when quotas are enabled.

Change-Id: I835b05fa5d9eb1fb00cc8309d78bafcd4969d0d3
Closes-Bug: #1323761
2014-05-27 13:17:55 -04:00
David Moreau Simard
ed3ba7f889 Add read_affinity, write_affinity support to proxy
This optionally provides the ability to configure read and write affinity
in proxy-server.conf.
Documentation: http://docs.openstack.org/developer/swift/admin_guide.html

Change-Id: Iea5aa6f73ddbdef119c5e70b29820c43640f0dac
2014-04-16 10:23:47 -04:00
Jenkins
23119310ac Merge "Add proxyserver gatekeeper middleware" 2014-03-14 21:04:33 +00:00
Xingchao Yu
69f677de0b Add swift::proxy::slo class
swift::proxy::slo class is used to configure proxy slo middleware.

Change-Id: Ic751d2e89de39478b55e3323ddf220610b1b7541
Implements: blueprint icehouse-proxyserver-middlewares
2014-02-10 23:07:24 +08:00
Xingchao Yu
e2c9415a35 Add proxyserver gatekeeper middleware
swift::proxy::gatekeeper class will be used to configure
gatekeeper middlerware.

Change-Id: I2f90ae41ba98f9b7d2bd7f3c5ed92fdbcd8fa999
Implements: blueprint icehouse-proxyserver-middlewares
2014-02-10 12:13:43 +08:00
Emilien Macchi
2fc0354936 Set include_service_catalog to False
include_service_catalog is a parameter in swift authtoken configuration.
Set to False improves performances.

Closes-Bug #1257738
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>

Change-Id: Ie5dd2de45fce79e4da7ccb5b37d7c69ee1cb5198
2013-12-09 11:45:20 +01:00
Chmouel Boudjnah
000d63b654 Fix auth_token configuration.
- cache=swift.cache need to be in auth_token configuration not in
  keystoneauth.
- Make auth_token using the same facility for logging than main swift.

Closes-Bug: #1254487

Change-Id: If5a09da4d18f247dc42b99e6f666bc2867d06dcb
2013-11-24 18:52:48 +01:00
Jenkins
328a805f1a Merge "Add Bulk middleware support" 2013-11-19 22:52:26 +00:00
Emilien Macchi
c7a6239b9b Add Bulk middleware support
Bring Bulk middleware configurable in module.

Change-Id: Iddec3f50402e6e2536fb7586f4966c06a1b75831
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
2013-11-18 21:07:31 +01:00
Jenkins
b20ac7e3b0 Merge "Add Quota middlewares support" 2013-11-18 08:19:44 +00:00
Xingchao Yu
8dd197a730 Fix puppet 3.x template variable deprecation warning
Change-Id: I0982c90b79ba4ff0844d5da778ae97b2f5221c37
loses-bug: #1244510
2013-11-01 10:57:53 +08:00
Emilien Macchi
4157cb9a41 Add Quota middlewares support
Two middlewares exist for managing quotas:
- account_quotas
- container_quotas

Change-Id: Ic6d539db480d8749769279b44e1f38302ac0fa62
Signed-off-by: Emilien Macchi <emilien.macchi@enovance.com>
2013-10-30 16:17:35 +01:00
Jenkins
5a655f8694 Merge "Use swift_dispersion_config" 2013-09-20 07:47:24 +00:00
Mathieu Gagné
ba6abfa6c7 Use swift_dispersion_config
Use swift_dispersion_config to configure dispersion.conf

Implements: blueprint puppet-swift-ini-settings
Change-Id: I521eefa88e943858f850727f0e57ca35c6b695f2
2013-09-04 20:04:44 -04:00
Jenkins
ef8507d287 Merge "Use swift_bench_config" 2013-09-04 23:55:35 +00:00
Mathieu Gagné
49d6801247 Use swift_bench_config
Use swift_bench_config to configure swift-bench.conf

Implements: blueprint puppet-swift-ini-settings
Change-Id: I97a14f0210aa472876188e66249ea53f34afff72
2013-08-31 01:12:35 -04:00
Dan Prince
c89e327fb8 Use swift_config to configure swift.conf
This change also adds an autorequire in the swift_config
type to ensure the /etc/swift/swift.conf exists.

Change-Id: Ic591a3ceb040c4599339ed7f750a5273d2052ac1
Implements: blueprint puppet-swift-ini-settings
2013-08-26 20:54:06 -04:00
Dan Prince
f10bcda7e6 Revert "Use swift_config"
This reverts commit e7bb58e6ba39d7daeee9069c83451f8898d8a424.

Fixes LP Bug #1216881.

Change-Id: I65109b8bfeeb2f59971dadbdb14ec47b1fc82a89
2013-08-26 08:12:07 -04:00
Mathieu Gagné
e7bb58e6ba Use swift_config
Use swift_config to configure swift.conf

Implements: blueprint puppet-swift-ini-settings
Change-Id: I3cb4b4f6f5586216e503dfe9b66b5e2e457cc90f
2013-08-25 23:22:05 -04:00
Daneyon Hansen
f71d159c4d Improve Proxy Signing Directory Support
1. The signing_dir was being created on every swift node
when it's only needed on proxies:

  http://docs.openstack.org/grizzly/openstack-compute/install/apt/content/installing-and-configuring-the-proxy-node.html

2. The signing_dir was not configurable, even though
the OpenStack doc's show multiple references
(/var/cache/swift and /home/swift/keystone-signing).

Change-Id: I3eb00046fc535a32d7a1800d15489e9fe071373b
2013-08-12 18:39:15 +00:00
Dan Bode
cb2e06556d Add signing dir
Currently, my swift installation fails with the following
error message:

  [Errno 13] Permission denied: '/root/keystone-signing

and the proxy server can never service requests.

This is b/c by default the client side directory for
pki-signing seems to use $HOME. This commits sets the
directory to be /var/cache/swift/ and resolves my
swift-proxy issues.

Change-Id: Ice904a9d53432ba1a1ae9516cd0ee6204ade63bb
2013-07-29 07:21:48 -07:00
newptone
b4584daaae Add configurable log for proxy-server service
This patch add configurable log for swift proxy-server service.
And add related spec test.

Partially implements blueprint puppet-swift-log-support.

Change-Id: I385093b3e63f8210d83ec125e6d2578b06b631d4
2013-07-26 04:33:23 +00:00
Jenkins
503d3e41c0 Merge "Added the allow_versions flag to enable/disable object versioning in swift object container" 2013-07-22 15:59:07 +00:00
Francesco Vollero
4d96d896ca Added the allow_versions flag to enable/disable object versioning in swift object container
Change-Id: Id78be1a8c3dccd550c92204c4aaa1cf32edcbf61
2013-07-19 16:40:13 +02:00
newptone
6a0e505ee9 Add configurable log for storage server
This patch add configurable log for swift account/container/object
server service.
Partially implements blueprint puppet-swift-log-support.

Change-Id: Ib3db483dfbad97f23ab7ba2068632856b5e00f11
2013-07-18 02:33:07 +00:00
Mathieu Gagné
c8936fea9b Use @ notation for ERB template variables
Fix Puppet 3.2 deprecation warnings (see Puppet #19058)

Change-Id: I0da9696499bce281ad258cbf0e88bd57f7dde76f
2013-07-17 14:33:00 -04:00
Newptone
45cec2d3fb Add swift::bench to manage swift-bench.conf
This patch adds a conf file swift-bench.conf
for swift performance bench, and add a spec
test for it.

Fixed bug 1188968

Change-Id: Iafb67f116a9403bba96328be7c9c09d21a65a74c
2013-07-05 11:50:27 +08:00
William Van Hevelingen
75e29ee2be Fix Puppet 3.2.x deprecation warnings
Change-Id: I4f6075fb189474ee071fa9b80944a5fe5c062193
2013-07-12 15:40:02 -07:00
Chris Ricker
fb293273ea Unset default signing dir
Unset default signing dir to allow the keystoneclient to set its own.
The specified /etc/swift location is not ideal and breaks on recent
keystoneclients

Change-Id: I16aadb77ee85e84645fe6745760a2c6edee49c2b
2013-06-24 19:57:24 -07:00
François Charlier
09a78bfd9d Add auth_admin_prefix and custom auth_uri params
auth_admin_prefix allows the prepend of a prefix to the URL used for
admin tasks.  See: https://review.openstack.org/#/c/7156/ for
implementation in Keystone.

auth_uri allows to specify the public authentication url (Keystone's
public endpoint) if it can't be guessed from $auth_host + $auth_protocol

Implements blueprint serve-keystone-from-wsgi

Change-Id: Ic66727f78406d70b5ab5bc07fcc074477df2303c
2013-06-05 20:50:37 +02:00
Radim Kubacki
3a0413f7f5 Customizable allowed_sync_hosts in container-server.conf
Insert default value into .conf file (127.0.0.1) or use
custom value if specified.

Change-Id: I9caec9657a2a3ad789b7dab646e505f609c25655
2013-05-29 12:39:21 +02:00
Derek Higgins
e6591fdd49 Use new keystoneclient middleware.
Change-Id: I04bba12dbe765b4ee16d026a37dbb26f737822f1
2013-05-01 06:12:19 -04:00
François Charlier
015be53c81 Add the ceilometer middleware
Change-Id: Ibcdaa1218c8d027dc3e4b6d2cd394e9d0af8c6da
2013-04-29 10:30:33 +02:00
Jenkins
3c741a78d5 Merge "Update keystone fragment to use egg." 2013-04-11 16:48:36 +00:00
Dan Prince
ab00ec58e2 Update keystone fragment to use egg.
Update keystone.conf.erb to use egg:swift#keystoneauth.

This resolves issues in trying to configure keystone with the
latest Swift releases.

Change-Id: Idf160eb143150bed9a9c7081a6900c6169887be8
2013-04-11 10:03:43 -04:00
Mehdi Abaakouk
b634c440ca Allow customise log_facility in storage server configuration
Change-Id: I4c698b7657dde1d0f1ba6b4043ca9ce992dcdb56
2013-04-10 09:54:05 +02:00
Dan Bode
b5290c4f9b Remove leading set from config
one of the config settings previously
contained a leading set before a config
setting.

This does not convert to the ini file format AFAIK, so
it has been changed.
2013-01-11 14:12:04 -08:00
Dan Bode
a467efdc46 level up swift test file
improve the file used to test swift.

convert into a template.
create a class to configure and deploy it.
2013-01-11 12:21:16 -08:00
Mehdi Abaakouk
3ac424cc42 Add some middlewares (tempurl, staticweb, formpost) 2012-11-16 19:16:08 +01:00
Joe Topjian
d585916565 Added logging support to proxy-server 2012-11-01 17:48:12 -06:00
Joe Topjian
020b7723cb Several changes:
* `python-swiftclient` is now installed by default.
* Fixed swift3.
* Fixed s3token.
* Recreated authtoken - it used to be configured in the Keystone module.
* Created proxy-logging filter
2012-11-01 17:48:12 -06:00
Dan Bode
f6e3ebb95f Merge pull request #54 from rubiojr/1.9-compat-fixes
String no longer has '.to_a', fixes compatibility with ruby 1.9,
2012-10-28 18:20:29 -07:00
Sergio Rubio
a7c92b6138 According to the docs, proxy_local_net_ip is required but not used
Make the proxy-server honor proxy_local_net_ip using the bind_ip
setting in proxy-server.conf
2012-09-25 12:50:27 +02:00
Sergio Rubio
b1192564ea String no longer has '.to_a', fixes compatibility with ruby 1.9,
I believe the following patch fixes compat with ruby 1.9 while
preserving behaviour. The following test was broken:

      1) swift::proxy::cache with overridden memcache server
         Failure/Error: it { should contain_file(fragment_file).with_content(/memcache_servers = 10\.0\.0\.1:1/) }
         Puppet::Error:
           Failed to parse template swift/proxy/cache.conf.erb:
             Filepath: /tmp/puppetlabs-swift/spec/fixtures/modules/swift/templates/proxy/cache.conf.erb
             Line: 3
             Detail: undefined method `to_a' for "10.0.0.1:1":String
            at /tmp/puppetlabs-swift/spec/fixtures/modules/swift/manifests/proxy/cache.pp:32 on node blueleaf
         # ./spec/classes/swift_proxy_cache_spec.rb:39:in `block (3 levels) in <top (required)>'
2012-09-24 20:07:51 +02:00
Dan Bode
7c1cf9b14f Merge pull request #31 from fcharlier/dispersion
Add swift-dispersion configuration
2012-06-06 09:01:42 -07:00
François Charlier
a3d1b08e96 Expand supported storage middlewares
This commit expands the supported storage
middlewares to include:
  - healthcheck - used to be able to perform
healthchecks on a storage node
  - recon
2012-06-04 13:47:57 -07:00
François Charlier
caad4e3732 Implement additional proxy middlewares
This commit implements additional proxy middlewares
  - catch_errors - handles errors
  - ratelimit    - limits incoming requests
  - s3token - misddleware for s3auth
  - swift3 - implement swift APIs

These middlewares needed to be modeled b/c they
are configurable interfaces that needed to be
configurable via Puppet.
2012-06-04 13:47:52 -07:00
François Charlier
18365a7c43 Reimplement concurrency to be per process
Previously, concurrently was implemented per
storage server type as a global setting.

This commit reimplements concurrency to make it
per process (replicator/updater/reaper)

This is intended to allow the end user more
flexibility over how they implement their
swift cluster.
2012-06-04 13:47:43 -07:00