redis-based group membership coordination for ceilometer

If CONFIG_CEILOMETER_COORDINATION_BACKEND is set to 'redis'
then a redis manifest is created to install redis on the
appropriate host and configure the ceilometer-central-agent
and ceilometer-alarm-evaluator to use it for group membership
coordination.

The other valid option is 'none', in which case no coordination
will be done. 'redis' is the default.

Change-Id: I07261f5fd433c13a57a614c15b13f0cad6c79d6a
This commit is contained in:
Chris Dent
2014-11-16 16:46:11 +00:00
parent 8c3150285d
commit 4832b747a1
5 changed files with 105 additions and 7 deletions

View File

@@ -1,5 +1,15 @@
$config_mongodb_host = hiera('CONFIG_MONGODB_HOST')
$config_ceilometer_coordination_backend = hiera('CONFIG_CEILOMETER_COORDINATION_BACKEND')
if $config_ceilometer_coordination_backend == 'redis' {
$redis_host = hiera('CONFIG_REDIS_HOST')
$redis_port = hiera('CONFIG_REDIS_PORT')
$coordination_url = "redis://${redis_host}:${redis_port}"
} else {
$coordination_url = ''
}
class { 'ceilometer::db':
database_connection => "mongodb://${config_mongodb_host}:27017/ceilometer",
}
@@ -15,14 +25,17 @@ class { 'ceilometer::agent::auth':
auth_password => hiera('CONFIG_CEILOMETER_KS_PW'),
}
class { 'ceilometer::agent::central': }
class { 'ceilometer::agent::central':
coordination_url => $coordination_url,
}
class { 'ceilometer::alarm::notifier':}
class { 'ceilometer::alarm::evaluator':}
class { 'ceilometer::alarm::evaluator':
coordination_url => $coordination_url,
}
class { 'ceilometer::api':
keystone_host => hiera('CONFIG_CONTROLLER_HOST'),
keystone_password => hiera('CONFIG_CEILOMETER_KS_PW'),
}