From 0d809c293912d05c209e7319c27faad6aefb965e Mon Sep 17 00:00:00 2001 From: Pradeep Kilambi Date: Wed, 5 Apr 2017 18:20:44 -0400 Subject: [PATCH] Deprecate Ceilometer Collector on undercloud Ceilometer Collector has been deprecated in pike release. Lets disable it by default. ALl the data will be dispatched through pipeline going forward. Change-Id: I8132418636a6e9a564de16ed8c4d4bfa406c886c Closes-bug: #1676961 --- .../puppet-stack-config.pp | 28 +++++++++++-------- .../puppet-stack-config.yaml.template | 1 + instack_undercloud/undercloud.py | 7 +++++ ...ceilometer-collector-64bbcbe58b122721.yaml | 6 ++++ undercloud.conf.sample | 6 ++++ 5 files changed, 37 insertions(+), 11 deletions(-) create mode 100644 releasenotes/notes/disable-ceilometer-collector-64bbcbe58b122721.yaml diff --git a/elements/puppet-stack-config/puppet-stack-config.pp b/elements/puppet-stack-config/puppet-stack-config.pp index 377144057..e020bc585 100644 --- a/elements/puppet-stack-config/puppet-stack-config.pp +++ b/elements/puppet-stack-config/puppet-stack-config.pp @@ -160,14 +160,23 @@ class { '::heat::db::mysql': if str2bool(hiera('enable_telemetry', true)) { # Ceilometer - $ceilometer_dsn = split(hiera('ceilometer::db::database_connection'), '[@:/?]') - class { '::ceilometer::db::mysql': - user => $ceilometer_dsn[3], - password => $ceilometer_dsn[4], - host => $ceilometer_dsn[5], - dbname => $ceilometer_dsn[6], - allowed_hosts => $allowed_hosts, + + if str2bool(hiera('enable_legacy_ceilometer_collector', false)) { + $ceilometer_dsn = split(hiera('ceilometer::db::database_connection'), '[@:/?]') + class { '::ceilometer::db::mysql': + user => $ceilometer_dsn[3], + password => $ceilometer_dsn[4], + host => $ceilometer_dsn[5], + dbname => $ceilometer_dsn[6], + allowed_hosts => $allowed_hosts, + } + include ::ceilometer::db + include ::ceilometer::collector + + # ensure we restart ceilometer collector as well + Keystone::Resource::Service_identity<||> -> Service['ceilometer-collector'] } + include ::ceilometer::keystone::auth include ::aodh::keystone::auth include ::ceilometer @@ -175,11 +184,9 @@ if str2bool(hiera('enable_telemetry', true)) { include ::ceilometer::api include ::ceilometer::wsgi::apache } - include ::ceilometer::db include ::ceilometer::agent::notification include ::ceilometer::agent::central include ::ceilometer::expirer - include ::ceilometer::collector include ::ceilometer::agent::auth include ::ceilometer::dispatcher::gnocchi @@ -204,10 +211,9 @@ if str2bool(hiera('enable_telemetry', true)) { } # Ensure all endpoint exists and only then run the upgrade. -# ensure we restart ceilometer collector as well Keystone::Resource::Service_identity<||> -> Openstacklib::Service_validation['gnocchi-status'] -> - Exec['ceilo-gnocchi-upgrade'] ~> Service['ceilometer-collector'] + Exec['ceilo-gnocchi-upgrade'] Cron <| title == 'ceilometer-expirer' |> { command => "sleep $((\$(od -A n -t d -N 3 /dev/urandom) % 86400)) && ${::ceilometer::params::expirer_command}" } diff --git a/elements/puppet-stack-config/puppet-stack-config.yaml.template b/elements/puppet-stack-config/puppet-stack-config.yaml.template index ec0fdbd62..353e163ed 100644 --- a/elements/puppet-stack-config/puppet-stack-config.yaml.template +++ b/elements/puppet-stack-config/puppet-stack-config.yaml.template @@ -775,6 +775,7 @@ enable_tempest: {{ENABLE_TEMPEST}} enable_validations: {{ENABLE_VALIDATIONS}} enable_telemetry: {{ENABLE_TELEMETRY}} enable_legacy_ceilometer_api: {{ENABLE_LEGACY_CEILOMETER_API}} +enable_legacy_ceilometer_collector: {{ENABLE_LEGACY_CEILOMETER_COLLECTOR}} enable_ui: {{ENABLE_UI}} enable_cinder: {{ENABLE_CINDER}} diff --git a/instack_undercloud/undercloud.py b/instack_undercloud/undercloud.py index 1a306e637..454f35e80 100644 --- a/instack_undercloud/undercloud.py +++ b/instack_undercloud/undercloud.py @@ -321,6 +321,13 @@ _opts = [ 'removed in future release. Please consider moving to ' 'gnocchi/Aodh/Panko API instead.') ), + cfg.BoolOpt('enable_legacy_ceilometer_collector', + default=False, + help=('Whether to enable legacy ceilometer collector ' + 'in the Undercloud. ' + 'Note: Ceilometer collector has been deprecated and ' + 'will be removed in future release.') + ), cfg.BoolOpt('enable_novajoin', default=False, help=('Whether to install novajoin metadata service in ' diff --git a/releasenotes/notes/disable-ceilometer-collector-64bbcbe58b122721.yaml b/releasenotes/notes/disable-ceilometer-collector-64bbcbe58b122721.yaml new file mode 100644 index 000000000..e21eabe65 --- /dev/null +++ b/releasenotes/notes/disable-ceilometer-collector-64bbcbe58b122721.yaml @@ -0,0 +1,6 @@ +--- +deprecations: + - Ceilometer collector service is deprecated in pike release. +fixes: + - Disable ceilometer collector by default as its deprecated. All the + data will now be dispatched through pipeline directly. diff --git a/undercloud.conf.sample b/undercloud.conf.sample index b2aeb725f..d5862956b 100644 --- a/undercloud.conf.sample +++ b/undercloud.conf.sample @@ -173,6 +173,12 @@ # (boolean value) #enable_legacy_ceilometer_api = false +# Whether to enable legacy ceilometer collector in the Undercloud. Note: +# Ceilometer collector has been deprecated and will be removed in future +# release. +# (boolean value) +#enable_legacy_ceilometer_collector = false + # Whether to install novajoin metadata service in the Undercloud. # (boolean value) #enable_novajoin = false