puppet-openstack-integration/manifests/swift.pp
Emilien Macchi 83dc8eadf7 Cleanup some warnings
1) Remove usage of verbose in Trove.
2) Rename Tempest parameter.
3) Rename Swift parameter.
4) Update parameters for Heat so we use 'password' auth_plugin.
5) Remove metering_secret, replaced by telemetry_secret.

Change-Id: Id770a7b03323b72ba37317e48085d9c15f106bc1
2016-05-20 15:16:37 +02:00

77 lines
3.2 KiB
Puppet

class openstack_integration::swift {
include ::openstack_integration::config
# TODO(emilien): deploy memcached in IPv6
include ::memcached
class { '::swift':
swift_hash_path_suffix => 'secrete',
}
class { '::swift::proxy':
proxy_local_net_ip => $::openstack_integration::config::host,
workers => '2',
pipeline => [
'catch_errors', 'healthcheck', 'cache', 'tempurl', 'ratelimit',
'authtoken', 'keystone', 'formpost', 'staticweb', 'container_quotas',
'account_quotas', 'proxy-logging', 'proxy-server'
],
}
include ::swift::proxy::catch_errors
include ::swift::proxy::healthcheck
include ::swift::proxy::proxy_logging
# TODO(emilien): deploy ::swift::proxy::cache in IPv6
include ::swift::proxy::cache
include ::swift::proxy::tempurl
include ::swift::proxy::ratelimit
class { '::swift::proxy::authtoken':
auth_uri => "${::openstack_integration::config::keystone_auth_uri}/v2.0",
identity_uri => "${::openstack_integration::config::keystone_admin_uri}/",
admin_password => 'a_big_secret',
}
class { '::swift::proxy::keystone':
operator_roles => ['Member', 'admin', 'SwiftOperator']
}
include ::swift::proxy::formpost
include ::swift::proxy::staticweb
include ::swift::proxy::container_quotas
include ::swift::proxy::account_quotas
include ::swift::proxy::tempauth
class { '::swift::keystone::auth':
public_url => "http://${::openstack_integration::config::ip_for_url}:8080/v1/AUTH_%(tenant_id)s",
admin_url => "http://${::openstack_integration::config::ip_for_url}:8080",
internal_url => "http://${::openstack_integration::config::ip_for_url}:8080/v1/AUTH_%(tenant_id)s",
password => 'a_big_secret',
operator_roles => ['admin', 'SwiftOperator', 'ResellerAdmin'],
}
file { '/srv/node':
ensure => directory,
owner => 'swift',
group => 'swift',
require => Package['swift'],
}
include ::swift::ringbuilder
class { '::swift::storage::all':
storage_local_net_ip => $::openstack_integration::config::host,
incoming_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r',
outgoing_chmod => 'Du=rwx,g=rx,o=rx,Fu=rw,g=r,o=r',
mount_check => false,
}
$swift_components = ['account', 'container', 'object']
swift::storage::filter::recon { $swift_components : }
swift::storage::filter::healthcheck { $swift_components : }
# As of mitaka swift-ring-builder requires devices >= replica count
# Default replica count is 3
ring_object_device { ["${::openstack_integration::config::ip_for_url}:6000/1", "${::openstack_integration::config::ip_for_url}:6000/2", "${::openstack_integration::config::ip_for_url}:6000/3"]:
zone => 1,
weight => 1,
}
ring_container_device { ["${::openstack_integration::config::ip_for_url}:6001/1", "${::openstack_integration::config::ip_for_url}:6001/2", "${::openstack_integration::config::ip_for_url}:6001/3"]:
zone => 1,
weight => 1,
}
ring_account_device { ["${::openstack_integration::config::ip_for_url}:6002/1", "${::openstack_integration::config::ip_for_url}:6002/2", "${::openstack_integration::config::ip_for_url}:6002/3"]:
zone => 1,
weight => 1,
}
}