Enable configuration of notifier publishers
This patch:
- moves Ceilometer notification agent to proper composable service
- Adds possibility to configure query parameters for notifier publishers
Change-Id: Ieb3d97c3e2c3190607902227980e1ef4a1de2c8e
Depends-On: I5cd0b6e99f5ffcc495225c61f0773240d90e7930
(cherry picked from commit b2162a2e45
)
This commit is contained in:
parent
d3d6dc34c1
commit
6bfd65adf9
@ -6,6 +6,10 @@ resource_registry:
|
|||||||
OS::TripleO::Services::CephOSD: ../../deployment/ceph-ansible/ceph-osd.yaml
|
OS::TripleO::Services::CephOSD: ../../deployment/ceph-ansible/ceph-osd.yaml
|
||||||
OS::TripleO::Services::CephClient: ../../deployment/ceph-ansible/ceph-client.yaml
|
OS::TripleO::Services::CephClient: ../../deployment/ceph-ansible/ceph-client.yaml
|
||||||
OS::TripleO::Services::PankoApi: ../deployment/deprecated/panko/panko-api-container-puppet.yaml
|
OS::TripleO::Services::PankoApi: ../deployment/deprecated/panko/panko-api-container-puppet.yaml
|
||||||
|
OS::TripleO::Services::CeilometerAgentCentral: ../../deployment/ceilometer/ceilometer-agent-central-container-puppet.yaml
|
||||||
|
OS::TripleO::Services::CeilometerAgentNotification: ../../deployment/ceilometer/ceilometer-agent-notification-container-puppet.yaml
|
||||||
|
OS::TripleO::Services::CeilometerAgentIpmi: ../../deployment/ceilometer/ceilometer-agent-ipmi-container-puppet.yaml
|
||||||
|
OS::TripleO::Services::ComputeCeilometerAgent: ../../deployment/ceilometer/ceilometer-agent-compute-container-puppet.yaml
|
||||||
OS::TripleO::Services::Collectd: ../../deployment/metrics/collectd-container-puppet.yaml
|
OS::TripleO::Services::Collectd: ../../deployment/metrics/collectd-container-puppet.yaml
|
||||||
OS::TripleO::Services::MetricsQdr: ../../deployment/metrics/qdr-container-puppet.yaml
|
OS::TripleO::Services::MetricsQdr: ../../deployment/metrics/qdr-container-puppet.yaml
|
||||||
OS::TripleO::Services::OsloMessagingRpc: ../../deployment/rabbitmq/rabbitmq-messaging-rpc-pacemaker-puppet.yaml
|
OS::TripleO::Services::OsloMessagingRpc: ../../deployment/rabbitmq/rabbitmq-messaging-rpc-pacemaker-puppet.yaml
|
||||||
@ -103,7 +107,8 @@ parameter_defaults:
|
|||||||
# telemetry.alarm_granularity must in sync with the archive policy, 60s
|
# telemetry.alarm_granularity must in sync with the archive policy, 60s
|
||||||
# too.
|
# too.
|
||||||
ceilometer::agent::polling::polling_interval: 15
|
ceilometer::agent::polling::polling_interval: 15
|
||||||
tripleo::profile::base::metrics::qdr::router_mode: interior
|
# NOTE(mmagr): uncomment when QDR mesh will actually work (followup on review.opendev.org/702754)
|
||||||
|
#tripleo::profile::base::metrics::qdr::router_mode: interior
|
||||||
ManagePolling: true
|
ManagePolling: true
|
||||||
ManagePipeline: true
|
ManagePipeline: true
|
||||||
CeilometerEnableGnocchi: true
|
CeilometerEnableGnocchi: true
|
||||||
@ -112,6 +117,8 @@ parameter_defaults:
|
|||||||
EventPipelinePublishers:
|
EventPipelinePublishers:
|
||||||
- gnocchi://?archive_policy=ceilometer-high-rate
|
- gnocchi://?archive_policy=ceilometer-high-rate
|
||||||
- panko://
|
- panko://
|
||||||
|
CeilometerQdrPublishEvents: true
|
||||||
|
ManageEventPipeline: true
|
||||||
|
|
||||||
Debug: true
|
Debug: true
|
||||||
DockerPuppetDebug: True
|
DockerPuppetDebug: True
|
||||||
|
@ -54,7 +54,8 @@ parameter_defaults:
|
|||||||
EventPipelinePublishers:
|
EventPipelinePublishers:
|
||||||
- gnocchi://?archive_policy=ceilometer-high-rate
|
- gnocchi://?archive_policy=ceilometer-high-rate
|
||||||
- panko://
|
- panko://
|
||||||
|
CeilometerQdrPublishEvents: true
|
||||||
|
ManageEventPipeline: true
|
||||||
|
|
||||||
Debug: true
|
Debug: true
|
||||||
# fetch dir needed for standalone
|
# fetch dir needed for standalone
|
||||||
|
@ -48,9 +48,58 @@ parameters:
|
|||||||
MonitoringSubscriptionCeilometerNotification:
|
MonitoringSubscriptionCeilometerNotification:
|
||||||
default: 'overcloud-ceilometer-agent-notification'
|
default: 'overcloud-ceilometer-agent-notification'
|
||||||
type: string
|
type: string
|
||||||
|
MetricsQdrPort:
|
||||||
|
default: '5666'
|
||||||
|
description: Service name or port number on which the qdrouterd will accept
|
||||||
|
connections. This argument must be string, even if the numeric
|
||||||
|
form is used.
|
||||||
|
type: string
|
||||||
|
CeilometerQdrPublishEvents:
|
||||||
|
default: false
|
||||||
|
description: Whether to send events to MetricsQdr service.
|
||||||
|
type: boolean
|
||||||
|
CeilometerQdrPublishMetrics:
|
||||||
|
default: false
|
||||||
|
description: Whether to send telemetry data to MetricsQdr service.
|
||||||
|
type: boolean
|
||||||
|
CeilometerQdrEventsConfig:
|
||||||
|
default:
|
||||||
|
driver: amqp
|
||||||
|
topic: ceilometer/event.sample
|
||||||
|
description: Configuration for notifier publisher for events.
|
||||||
|
type: json
|
||||||
|
CeilometerQdrMetricsConfig:
|
||||||
|
default:
|
||||||
|
driver: amqp
|
||||||
|
topic: ceilometer/metering.sample
|
||||||
|
description: Configuration for notifier publisher for metrics.
|
||||||
|
type: json
|
||||||
|
ManageEventPipeline:
|
||||||
|
default: true
|
||||||
|
description: Whether to manage event_pipeline.yaml.
|
||||||
|
type: boolean
|
||||||
|
EventPipelinePublishers:
|
||||||
|
default: ['gnocchi://?filter_project=service&archive_policy=low', 'panko://']
|
||||||
|
description: >
|
||||||
|
A list of publishers to put in event_pipeline.yaml. When the
|
||||||
|
collector is used, override this with notifier:// publisher.
|
||||||
|
If zaqar is enabled, you can also publish to a zaqar queue
|
||||||
|
by including "zaqar://?queue=queue_name" in this list.
|
||||||
|
Set ManageEventPipeline to true for override to take effect.
|
||||||
|
type: comma_delimited_list
|
||||||
|
ManagePipeline:
|
||||||
|
default: false
|
||||||
|
description: Whether to manage pipeline.yaml.
|
||||||
|
type: boolean
|
||||||
|
PipelinePublishers:
|
||||||
|
default: []
|
||||||
|
description: >
|
||||||
|
A list of publishers to put in pipeline.yaml. When the
|
||||||
|
collector is used, override this with notifier:// publisher.
|
||||||
|
Set ManagePipeline to true for override to take effect.
|
||||||
|
type: comma_delimited_list
|
||||||
|
|
||||||
resources:
|
resources:
|
||||||
|
|
||||||
ContainersCommon:
|
ContainersCommon:
|
||||||
type: ../containers-common.yaml
|
type: ../containers-common.yaml
|
||||||
|
|
||||||
@ -66,6 +115,10 @@ resources:
|
|||||||
|
|
||||||
conditions:
|
conditions:
|
||||||
ceilometer_enable_panko: {equals: [{get_param: CeilometerEnablePanko}, True]}
|
ceilometer_enable_panko: {equals: [{get_param: CeilometerEnablePanko}, True]}
|
||||||
|
ceilometer_qdr_publish:
|
||||||
|
or:
|
||||||
|
- {equals: [{get_param: CeilometerQdrPublishEvents}, true]}
|
||||||
|
- {equals: [{get_param: CeilometerQdrPublishMetrics}, true]}
|
||||||
|
|
||||||
outputs:
|
outputs:
|
||||||
role_data:
|
role_data:
|
||||||
@ -74,7 +127,26 @@ outputs:
|
|||||||
service_name: ceilometer_agent_notification
|
service_name: ceilometer_agent_notification
|
||||||
monitoring_subscription: {get_param: MonitoringSubscriptionCeilometerNotification}
|
monitoring_subscription: {get_param: MonitoringSubscriptionCeilometerNotification}
|
||||||
config_settings:
|
config_settings:
|
||||||
get_attr: [CeilometerServiceBase, role_data, config_settings]
|
map_merge:
|
||||||
|
- get_attr: [CeilometerServiceBase, role_data, config_settings]
|
||||||
|
- ceilometer::agent::notification::manage_event_pipeline: {get_param: ManageEventPipeline}
|
||||||
|
ceilometer::agent::notification::manage_pipeline: {get_param: ManagePipeline}
|
||||||
|
tripleo::profile::base::ceilometer::agent::notification::notifier_enabled: {get_param: CeilometerQdrPublishMetrics}
|
||||||
|
tripleo::profile::base::ceilometer::agent::notification::notifier_events_enabled: {get_param: CeilometerQdrPublishEvents}
|
||||||
|
tripleo::profile::base::ceilometer::agent::notification::pipeline_publishers: {get_param: PipelinePublishers}
|
||||||
|
tripleo::profile::base::ceilometer::agent::notification::event_pipeline_publishers: {get_param: EventPipelinePublishers}
|
||||||
|
tripleo::profile::base::ceilometer::agent::notification::notifier_params: {get_param: CeilometerQdrMetricsConfig}
|
||||||
|
tripleo::profile::base::ceilometer::agent::notification::notifier_event_params: {get_param: CeilometerQdrEventsConfig}
|
||||||
|
- if: #Ceilometer connection to qdr
|
||||||
|
- ceilometer_qdr_publish
|
||||||
|
- tripleo::profile::base::ceilometer::agent::notification::notifier_host_addr:
|
||||||
|
str_replace:
|
||||||
|
template:
|
||||||
|
"%{hiera('$NETWORK')}"
|
||||||
|
params:
|
||||||
|
$NETWORK: {get_param: [ServiceNetMap, MetricsQdrNetwork]}
|
||||||
|
tripleo::profile::base::ceilometer::agent::notification::notifier_host_port: {get_param: MetricsQdrPort}
|
||||||
|
- {}
|
||||||
service_config_settings:
|
service_config_settings:
|
||||||
map_merge:
|
map_merge:
|
||||||
- get_attr: [CeilometerServiceBase, role_data, service_config_settings]
|
- get_attr: [CeilometerServiceBase, role_data, service_config_settings]
|
||||||
|
@ -46,40 +46,6 @@ parameters:
|
|||||||
default: ''
|
default: ''
|
||||||
description: Address prefix for Notification addresses
|
description: Address prefix for Notification addresses
|
||||||
type: string
|
type: string
|
||||||
MetricsQdrPort:
|
|
||||||
default: '5666'
|
|
||||||
description: Service name or port number on which the qdrouterd will accept
|
|
||||||
connections. This argument must be string, even if the numeric
|
|
||||||
form is used.
|
|
||||||
type: string
|
|
||||||
ManageEventPipeline:
|
|
||||||
default: true
|
|
||||||
description: Whether to manage event_pipeline.yaml.
|
|
||||||
type: boolean
|
|
||||||
EventPipelinePublishers:
|
|
||||||
default: ['gnocchi://?filter_project=service&archive_policy=low', 'panko://']
|
|
||||||
description: >
|
|
||||||
A list of publishers to put in event_pipeline.yaml. When the
|
|
||||||
collector is used, override this with notifier:// publisher.
|
|
||||||
If zaqar is enabled, you can also publish to a zaqar queue
|
|
||||||
by including "zaqar://?queue=queue_name" in this list.
|
|
||||||
Set ManageEventPipeline to true for override to take effect.
|
|
||||||
type: comma_delimited_list
|
|
||||||
ManagePipeline:
|
|
||||||
default: false
|
|
||||||
description: Whether to manage pipeline.yaml.
|
|
||||||
type: boolean
|
|
||||||
PipelinePublishers:
|
|
||||||
default: []
|
|
||||||
description: >
|
|
||||||
A list of publishers to put in pipeline.yaml. When the
|
|
||||||
collector is used, override this with notifier:// publisher.
|
|
||||||
Set ManagePipeline to true for override to take effect.
|
|
||||||
type: comma_delimited_list
|
|
||||||
CeilometerQdrPublish:
|
|
||||||
default: false
|
|
||||||
description: Whether to send telemetry data to Qdr.
|
|
||||||
type: boolean
|
|
||||||
ManagePolling:
|
ManagePolling:
|
||||||
default: false
|
default: false
|
||||||
description: Whether to manage polling.yaml.
|
description: Whether to manage polling.yaml.
|
||||||
@ -150,8 +116,6 @@ outputs:
|
|||||||
ceilometer::keystone::authtoken::auth_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
|
ceilometer::keystone::authtoken::auth_url: { get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
|
||||||
ceilometer::agent::auth::auth_password: {get_param: CeilometerPassword}
|
ceilometer::agent::auth::auth_password: {get_param: CeilometerPassword}
|
||||||
ceilometer::agent::auth::auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
|
ceilometer::agent::auth::auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
|
||||||
ceilometer::agent::notification::manage_event_pipeline: {get_param: ManageEventPipeline}
|
|
||||||
ceilometer::agent::notification::manage_pipeline: {get_param: ManagePipeline}
|
|
||||||
ceilometer::agent::polling::manage_polling: {get_param: ManagePolling}
|
ceilometer::agent::polling::manage_polling: {get_param: ManagePolling}
|
||||||
ceilometer::agent::auth::auth_region: {get_param: KeystoneRegion}
|
ceilometer::agent::auth::auth_region: {get_param: KeystoneRegion}
|
||||||
ceilometer::agent::auth::auth_tenant_name: 'service'
|
ceilometer::agent::auth::auth_tenant_name: 'service'
|
||||||
@ -165,18 +129,6 @@ outputs:
|
|||||||
ceilometer::snmpd_readonly_username: {get_param: SnmpdReadonlyUserName}
|
ceilometer::snmpd_readonly_username: {get_param: SnmpdReadonlyUserName}
|
||||||
ceilometer::snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
|
ceilometer::snmpd_readonly_user_password: {get_param: SnmpdReadonlyUserPassword}
|
||||||
ceilometer::host: "%{hiera('fqdn_canonical')}"
|
ceilometer::host: "%{hiera('fqdn_canonical')}"
|
||||||
tripleo::profile::base::ceilometer::event_pipeline_publishers: {get_param: EventPipelinePublishers}
|
|
||||||
tripleo::profile::base::ceilometer::pipeline_publishers: {get_param: PipelinePublishers}
|
|
||||||
- if: #Ceilometer connection to qdr
|
|
||||||
- ceilometer_qdr_publish
|
|
||||||
- tripleo::profile::base::ceilometer::notifier_host_addr:
|
|
||||||
str_replace:
|
|
||||||
template:
|
|
||||||
"%{hiera('$NETWORK')}"
|
|
||||||
params:
|
|
||||||
$NETWORK: {get_param: [ServiceNetMap, MetricsQdrNetwork]}
|
|
||||||
tripleo::profile::base::ceilometer::notifier_host_port: {get_param: MetricsQdrPort}
|
|
||||||
- {}
|
|
||||||
service_config_settings:
|
service_config_settings:
|
||||||
keystone:
|
keystone:
|
||||||
ceilometer_auth_enabled: true
|
ceilometer_auth_enabled: true
|
||||||
|
Loading…
Reference in New Issue
Block a user