aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--overcloud-resource-registry-puppet.yaml1
-rw-r--r--overcloud.yaml6
-rw-r--r--puppet/controller.yaml30
-rw-r--r--puppet/manifests/overcloud_controller.pp13
-rw-r--r--puppet/manifests/overcloud_controller_pacemaker.pp16
-rw-r--r--puppet/services/swift-proxy.yaml49
6 files changed, 52 insertions, 63 deletions
diff --git a/overcloud-resource-registry-puppet.yaml b/overcloud-resource-registry-puppet.yaml
index b207a1fe..950f1b68 100644
--- a/overcloud-resource-registry-puppet.yaml
+++ b/overcloud-resource-registry-puppet.yaml
@@ -135,6 +135,7 @@ resource_registry:
OS::TripleO::Services::RabbitMQ: puppet/services/rabbitmq.yaml
OS::TripleO::Services::Loadbalancer: puppet/services/loadbalancer.yaml
OS::TripleO::Services::Memcached: puppet/services/memcached.yaml
+ OS::TripleO::Services::SwiftProxy: puppet/services/swift-proxy.yaml
parameter_defaults:
EnablePackageInstall: false
diff --git a/overcloud.yaml b/overcloud.yaml
index 474fcffb..c6772ab3 100644
--- a/overcloud.yaml
+++ b/overcloud.yaml
@@ -508,10 +508,6 @@ parameters:
description: A random string to be used as a salt when hashing to determine mappings in the ring.
type: string
hidden: true
- SwiftPassword:
- description: The password for the swift service account, used by the swift proxy services.
- type: string
- hidden: true
SwiftMountCheck:
default: 'false'
description: Value of mount_check in Swift account/container/object -server.conf
@@ -656,6 +652,7 @@ parameters:
- OS::TripleO::Services::RabbitMQ
- OS::TripleO::Services::Loadbalancer
- OS::TripleO::Services::Memcached
+ - OS::TripleO::Services::SwiftProxy
description: A list of service resources (configured in the Heat
resource_registry) which represent nested stacks
for each service that should get installed on the Controllers.
@@ -968,7 +965,6 @@ resources:
SwiftMountCheck: {get_param: SwiftMountCheck}
SwiftMinPartHours: {get_param: SwiftMinPartHours}
SwiftPartPower: {get_param: SwiftPartPower}
- SwiftPassword: {get_param: SwiftPassword}
SwiftReplicas: { get_param: SwiftReplicas}
TimeZone: {get_param: TimeZone}
VirtualIP: {get_attr: [VipMap, net_ip_map, ctlplane]} # deprecated. Use per service VIP settings instead now.
diff --git a/puppet/controller.yaml b/puppet/controller.yaml
index 703ff265..42687c53 100644
--- a/puppet/controller.yaml
+++ b/puppet/controller.yaml
@@ -560,11 +560,6 @@ parameters:
default: true
description: Whether to manage Swift rings or not
type: boolean
- SwiftPassword:
- description: The password for the swift service account, used by the swift proxy
- services.
- hidden: true
- type: string
SwiftProxyVirtualIP:
type: string
default: ''
@@ -572,10 +567,6 @@ parameters:
type: number
default: 3
description: How many replicas to use in the swift rings.
- SwiftWorkers:
- default: 0
- description: Number of workers for Swift service.
- type: number
TimeZone:
default: 'UTC'
description: The timezone to be set on controller nodes.
@@ -824,7 +815,6 @@ resources:
cinder_workers: {get_param: CinderWorkers}
nova_workers: {get_param: NovaWorkers}
neutron_workers: {get_param: NeutronWorkers}
- swift_workers: {get_param: SwiftWorkers}
neutron_enable_tunneling: {get_param: NeutronEnableTunnelling}
neutron_enable_l2pop: {get_param: NeutronEnableL2Pop}
haproxy_log_address: {get_param: HAProxySyslogAddress}
@@ -1059,18 +1049,11 @@ resources:
control_virtual_interface: {get_param: ControlVirtualInterface}
public_virtual_interface: {get_param: PublicVirtualInterface}
swift_hash_suffix: {get_param: SwiftHashSuffix}
- swift_password: {get_param: SwiftPassword}
swift_part_power: {get_param: SwiftPartPower}
swift_ring_build: {get_param: SwiftRingBuild}
swift_replicas: {get_param: SwiftReplicas}
swift_min_part_hours: {get_param: SwiftMinPartHours}
swift_mount_check: {get_param: SwiftMountCheck}
- swift_public_url: {get_param: [EndpointMap, SwiftPublic, uri]}
- swift_internal_url: {get_param: [EndpointMap, SwiftInternal, uri]}
- swift_admin_url: {get_param: [EndpointMap, SwiftAdmin, uri]}
- swift_public_url_s3: {get_param: [EndpointMap, SwiftS3Public, uri]}
- swift_internal_url_s3: {get_param: [EndpointMap, SwiftS3Internal, uri]}
- swift_admin_url_s3: {get_param: [EndpointMap, SwiftS3Admin, uri]}
enable_package_install: {get_param: EnablePackageInstall}
enable_package_upgrade: {get_attr: [UpdateDeployment, update_managed_packages]}
sahara_password: {get_param: SaharaPassword}
@@ -1203,26 +1186,15 @@ resources:
tripleo::fencing::config: {get_input: fencing_config}
# Swift
+ # FIXME: need to move proxy_local_net_ip into swift-proxy.yaml
swift::proxy::proxy_local_net_ip: {get_input: swift_proxy_network}
- swift::proxy::authtoken::auth_uri: {get_input: keystone_auth_uri}
- swift::proxy::authtoken::identity_uri: {get_input: keystone_identity_uri}
swift::storage::all::storage_local_net_ip: {get_input: swift_management_network}
swift::swift_hash_suffix: {get_input: swift_hash_suffix}
- swift::proxy::authtoken::admin_password: {get_input: swift_password}
- swift::proxy::workers: {get_input: swift_workers}
tripleo::ringbuilder::build_ring: { get_input: swift_ring_build }
tripleo::ringbuilder::part_power: {get_input: swift_part_power}
tripleo::ringbuilder::replicas: {get_input: swift_replicas}
tripleo::ringbuilder::min_part_hours: {get_input: swift_min_part_hours}
swift_mount_check: {get_input: swift_mount_check}
- swift::keystone::auth::public_url: {get_input: swift_public_url }
- swift::keystone::auth::internal_url: {get_input: swift_internal_url }
- swift::keystone::auth::admin_url: {get_input: swift_admin_url }
- swift::keystone::auth::public_url_s3: {get_input: swift_public_url_v3 }
- swift::keystone::auth::internal_url_s3: {get_input: swift_internal_url_v3 }
- swift::keystone::auth::admin_url_s3: {get_input: swift_admin_url_v3 }
- swift::keystone::auth::password: {get_input: swift_password }
- swift::keystone::auth::region: {get_input: keystone_region}
# Cinder
cinder_enable_db_purge: {get_input: cinder_enable_db_purge}
diff --git a/puppet/manifests/overcloud_controller.pp b/puppet/manifests/overcloud_controller.pp
index 536c680f..2884ad76 100644
--- a/puppet/manifests/overcloud_controller.pp
+++ b/puppet/manifests/overcloud_controller.pp
@@ -449,19 +449,6 @@ if hiera('step') >= 4 {
enabled_backends => union($cinder_enabled_backends, hiera('cinder_user_enabled_backends')),
}
- # swift proxy
- include ::swift::proxy
- include ::swift::proxy::proxy_logging
- include ::swift::proxy::healthcheck
- include ::swift::proxy::cache
- include ::swift::proxy::keystone
- include ::swift::proxy::authtoken
- include ::swift::proxy::staticweb
- include ::swift::proxy::ratelimit
- include ::swift::proxy::catch_errors
- include ::swift::proxy::tempurl
- include ::swift::proxy::formpost
-
# swift storage
if str2bool(hiera('enable_swift_storage', true)) {
class { '::swift::storage::all':
diff --git a/puppet/manifests/overcloud_controller_pacemaker.pp b/puppet/manifests/overcloud_controller_pacemaker.pp
index 30345694..cee3b3f9 100644
--- a/puppet/manifests/overcloud_controller_pacemaker.pp
+++ b/puppet/manifests/overcloud_controller_pacemaker.pp
@@ -698,22 +698,6 @@ MYSQL_HOST=localhost\n",
enabled => false,
}
- # swift proxy
- class { '::swift::proxy' :
- manage_service => $non_pcmk_start,
- enabled => $non_pcmk_start,
- }
- include ::swift::proxy::proxy_logging
- include ::swift::proxy::healthcheck
- include ::swift::proxy::cache
- include ::swift::proxy::keystone
- include ::swift::proxy::authtoken
- include ::swift::proxy::staticweb
- include ::swift::proxy::ratelimit
- include ::swift::proxy::catch_errors
- include ::swift::proxy::tempurl
- include ::swift::proxy::formpost
-
# swift storage
if str2bool(hiera('enable_swift_storage', true)) {
class {'::swift::storage::all':
diff --git a/puppet/services/swift-proxy.yaml b/puppet/services/swift-proxy.yaml
new file mode 100644
index 00000000..a86aeaf5
--- /dev/null
+++ b/puppet/services/swift-proxy.yaml
@@ -0,0 +1,49 @@
+heat_template_version: 2016-04-08
+
+description: >
+ OpenStack Swift Proxy service configured with Puppet
+
+parameters:
+ EndpointMap:
+ default: {}
+ description: Mapping of service endpoint -> protocol. Typically set
+ via parameter_defaults in the resource registry.
+ type: json
+ Debug:
+ default: ''
+ description: Set to True to enable debugging on all services.
+ type: string
+ SwiftPassword:
+ description: The password for the swift service account, used by the swift proxy services.
+ type: string
+ hidden: true
+ SwiftWorkers:
+ default: 0
+ description: Number of workers for Swift service.
+ type: number
+ KeystoneRegion:
+ type: string
+ default: 'regionOne'
+ description: Keystone region for endpoint
+
+
+outputs:
+ role_data:
+ description: Role data for the Swift proxy service.
+ value:
+ config_settings:
+ # Swift
+ swift::proxy::authtoken::auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri]}
+ swift::proxy::authtoken::identity_uri: {get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix]}
+ swift::proxy::authtoken::admin_password: {get_param: SwiftPassword}
+ swift::proxy::workers: {get_param: SwiftWorkers}
+ swift::keystone::auth::public_url: {get_param: [EndpointMap, SwiftPublic, uri]}
+ swift::keystone::auth::internal_url: {get_param: [EndpointMap, SwiftInternal, uri]}
+ swift::keystone::auth::admin_url: {get_param: [EndpointMap, SwiftAdmin, uri]}
+ swift::keystone::auth::public_url_s3: {get_param: [EndpointMap, SwiftS3Public, uri]}
+ swift::keystone::auth::internal_url_s3: {get_param: [EndpointMap, SwiftS3Internal, uri]}
+ swift::keystone::auth::admin_url_s3: {get_param: [EndpointMap, SwiftS3Admin, uri]}
+ swift::keystone::auth::password: {get_param: SwiftPassword}
+ swift::keystone::auth::region: {get_param: KeystoneRegion}
+ step_config: |
+ include ::tripleo::profile::base::swift::proxy