Hi,
I'm trying to deploy a proxy and two storage servers (VMs, it's a test
environment). I started following the examples in
https://forge.puppetlabs.com/puppetlabs/swift and made some progress
(see attached):
- on 2 storage servers the swift processes start
- on proxy server they do not start
Closer inspection show that:
- rings on each storage server have only the local devices
- there are no rings at all on the proxy
I'm clearly 'doing it wrong' and not setting up the exported resources
correctly. Any pointers appreciated!
Cheers
Mark
--
You received this message because you are subscribed to the Google Groups "Puppet
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to puppet-users+unsubscr...@googlegroups.com.
To view this discussion on the web visit
https://groups.google.com/d/msgid/puppet-users/5563C207.3050601%40catalyst.net.nz.
For more options, visit https://groups.google.com/d/optout.
# stor.pp
class profiles::swift::stor {
# ... 3 rings
define profiles::swift::ringadder (
) {
notify {"create ring device for $name":}
@@ring_object_device { "${ipaddress_br_mgmt}:60${name}0/$name":
#region => hiera('profiles::swift::region', 1),
zone => hiera('profiles::swift::zone', 1),
weight => hiera('profiles::swift::weight', 1),
}
@@ring_container_device { "${ipaddress_br_mgmt}:60${name}1/$name":
#region => hiera('profiles::swift::region', 1),
zone => hiera('profiles::swift::zone', 1),
weight => hiera('profiles::swift::weight', 1),
}
@@ring_account_device { "${ipaddress_br_mgmt}:60${name}2/$name":
#region => hiera('profiles::swift::region', 1),
zone => hiera('profiles::swift::zone', 1),
weight => hiera('profiles::swift::weight', 1),
}
}
# should we use loopback? (yes ATM)
$loopback = hiera('profiles::swift::loopback')
if $loopback {
notify {'node will use loopback device storage':}
# array of device numbers - [0, 1]
$devices = hiera('profiles::swift::loopback::devices')
swift::storage::loopback { $devices:
seek =>
hiera('profiles::swift::loopback::size'),
require => Class['swift'],
}
} else {
# TODO
notify {'node will use disk device storage':}
}
class { 'swift::storage::all':
storage_local_net_ip => $ipaddress_br_mgmt,
}
class { 'swift::ringbuilder':
part_power =>
hiera('profiles::swift::ringbuilder::part_power'),
replicas =>
hiera('profiles::swift::ringbuilder::replicas'),
min_part_hours =>
hiera('profiles::swift::ringbuilder::min_part_hours'),
}
profiles::swift::ringadder{$devices:}
Swift::Ringsync<<||>>
}
# pxy.pp
class profiles::swift::pxy {
class { 'swift::proxy':
proxy_local_net_ip => $ipaddress_br_mgmt,
port => hiera('profiles::swift::proxy_port'),
pipeline => hiera('profiles::swift::pipeline'),
account_autocreate => false,
}
class { 'swift::proxy::keystone':
operator_roles =>
hiera('profiles::swift::operator_roles'),
is_admin => true,
}
class { 'swift::proxy::authtoken':
admin_token => hiera('keystone::admin_token'),
auth_host => hiera('profiles::keystone::host'),
}
class { 'swift::proxy::cache':
memcache_servers =>
hiera('profiles::swift::memcache_servers'),
}
class { 'swift::proxy::healthcheck':
}
class { 'swift::ringbuilder':
part_power =>
hiera('profiles::swift::ringbuilder::part_power'),
replicas =>
hiera('profiles::swift::ringbuilder::replicas'),
min_part_hours =>
hiera('profiles::swift::ringbuilder::min_part_hours'),
}
Swift::Ringsync<<||>>
}