From 5a318fa8e5020fc584e5aa425c3ff54f4e6a97ce Mon Sep 17 00:00:00 2001 From: David Britton Date: Thu, 17 Jan 2013 11:35:04 -0700 Subject: [PATCH 1/4] Add grizzly package recognition --- hooks/swift_utils.py | 2 ++ revision | 2 +- 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/hooks/swift_utils.py b/hooks/swift_utils.py index 1dc2901..15353e6 100644 --- a/hooks/swift_utils.py +++ b/hooks/swift_utils.py @@ -87,6 +87,8 @@ def determine_packages(release): return BASE_PACKAGES elif release == 'folsom': return FOLSOM_PACKAGES + elif release == 'grizzly': + return FOLSOM_PACKAGES def render_config(config_file, context): diff --git a/revision b/revision index f96ac06..fe4afb0 100644 --- a/revision +++ b/revision @@ -1 +1 @@ -105 +106 From 34dd7cbba65986e0d99074919dc149a1a8bdb375 Mon Sep 17 00:00:00 2001 From: David Britton Date: Thu, 17 Jan 2013 11:41:42 -0700 Subject: [PATCH 2/4] add 1.7.5 -> grizzly mapping --- hooks/lib/openstack_common.py | 3 ++- revision | 2 +- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/hooks/lib/openstack_common.py b/hooks/lib/openstack_common.py index 45643a8..7ad0eb6 100644 --- a/hooks/lib/openstack_common.py +++ b/hooks/lib/openstack_common.py @@ -26,7 +26,8 @@ openstack_codenames = { swift_codenames = { '1.4.3': 'diablo', '1.4.8': 'essex', - '1.7.4': 'folsom' + '1.7.4': 'folsom', + '1.7.5': 'grizzly' } def juju_log(msg): diff --git a/revision b/revision index fe4afb0..e34885b 100644 --- a/revision +++ b/revision @@ -1 +1 @@ -106 +107 From 07679bbd0919d21bab497d7813904c54ffd2be63 Mon Sep 17 00:00:00 2001 From: David Britton Date: Thu, 17 Jan 2013 11:49:55 -0700 Subject: [PATCH 3/4] Adding grizzly config templates --- hooks/templates/grizzly/memcached.conf | 1 + hooks/templates/grizzly/proxy-server.conf | 1 + hooks/templates/grizzly/swift-rings | 1 + hooks/templates/grizzly/swift.conf | 1 + revision | 2 +- 5 files changed, 5 insertions(+), 1 deletion(-) create mode 120000 hooks/templates/grizzly/memcached.conf create mode 120000 hooks/templates/grizzly/proxy-server.conf create mode 120000 hooks/templates/grizzly/swift-rings create mode 120000 hooks/templates/grizzly/swift.conf diff --git a/hooks/templates/grizzly/memcached.conf b/hooks/templates/grizzly/memcached.conf new file mode 120000 index 0000000..55feb6b --- /dev/null +++ b/hooks/templates/grizzly/memcached.conf @@ -0,0 +1 @@ +../essex/memcached.conf \ No newline at end of file diff --git a/hooks/templates/grizzly/proxy-server.conf b/hooks/templates/grizzly/proxy-server.conf new file mode 120000 index 0000000..695f6f6 --- /dev/null +++ b/hooks/templates/grizzly/proxy-server.conf @@ -0,0 +1 @@ +../essex/proxy-server.conf \ No newline at end of file diff --git a/hooks/templates/grizzly/swift-rings b/hooks/templates/grizzly/swift-rings new file mode 120000 index 0000000..4a86480 --- /dev/null +++ b/hooks/templates/grizzly/swift-rings @@ -0,0 +1 @@ +../essex/swift-rings \ No newline at end of file diff --git a/hooks/templates/grizzly/swift.conf b/hooks/templates/grizzly/swift.conf new file mode 120000 index 0000000..9f252b6 --- /dev/null +++ b/hooks/templates/grizzly/swift.conf @@ -0,0 +1 @@ +../essex/swift.conf \ No newline at end of file diff --git a/revision b/revision index e34885b..3b20426 100644 --- a/revision +++ b/revision @@ -1 +1 @@ -107 +108 From 27635f305e98c95e528b579d48d2696a0975f70f Mon Sep 17 00:00:00 2001 From: David Britton Date: Thu, 17 Jan 2013 15:18:55 -0700 Subject: [PATCH 4/4] Adding in README scrub from chad.smith --- README.md | 25 +++++++++++++------------ 1 file changed, 13 insertions(+), 12 deletions(-) diff --git a/README.md b/README.md index 5628851..f2467f6 100644 --- a/README.md +++ b/README.md @@ -35,7 +35,7 @@ zones. The default, 'manual' option is suggested for production as it allows administrators to carefully architect the storage cluster. It requires each swift-storage service to be deployed with an explicit storage zone configured -in its deployment settings.. Upon relation to a swift-proxy, the storage node +in its deployment settings. Upon relation to a swift-proxy, the storage node will request membership to its configured zone and be assigned by the swift-proxy charm accordingly. Using the cs:precise/swift-storage charm with this charm, a deployment would look something like: @@ -47,10 +47,10 @@ this charm, a deployment would look something like: swift-storage-zone1: zone: 1 block-device: sdb - swift-storage-zone1: + swift-storage-zone2: zone: 2 block-device: sdb - swift-storage-zone1: + swift-storage-zone3: zone: 3 block-device: sdb END @@ -67,12 +67,12 @@ node. To expand capacity of the storage system, nodes can be added to specific zones in the ring. $ juju add-unit swift-storage-zone1 - $ juju add-unit -n5 swift-storage-zone3 + $ juju add-unit -n5 swift-storage-zone3 # Adds 5 units to zone3 This charm will not balance the storage ring until there are enough storage zones to meet its minimum replica requirement, in this case 3. -The other option for zone assignment is 'auto.' In this mode, swift-proxy +The other option for zone assignment is 'auto'. In this mode, swift-proxy gets a relation to a single swift-storage service unit. Each machine unit assigned to that service unit will be distributed evenly across zones. @@ -83,6 +83,7 @@ assigned to that service unit will be distributed evenly across zones. swift-storage: zone: 1 block-device: sdb + END $ juju deploy --config=swift.cfg swift-proxy $ juju deploy --config=swift.cfg swift-storage $ juju add-relation swift-proxy swift-storage @@ -116,13 +117,13 @@ a simple and not-recommended auth system that functions without any external dependencies. See Swift documentation for details. The charm may also be configured to use Keystone, either manually (via config) -or automatically via a relation to an existing Keystone service. The latter is -preferred, however, if a Keystone service is desired but it is not managed by -Juju, the configuration for the auth token middleware can be set manually via -the charm's config. A relation to a Keystone server via the identity-service -interface is will configure swift-proxy with the appropriate credentials -to make use of Keystone and is required for any integration with other -OpenStack components. +or automatically via a relation to an existing Keystone service using the +cs:precise/keystone charm. The latter is preferred, however, if a Keystone +service is desired but it is not managed by Juju, the configuration for the +auth token middleware can be set manually via the charm's config. A relation +to a Keystone server via the identity-service interface will configure +swift-proxy with the appropriate credentials to make use of Keystone and is +required for any integration with other OpenStack components. **Glance**