Merge "Mv Ceilometer settings out of puppet/compute.yaml"
[apex-tripleo-heat-templates.git] / puppet / services / ceilometer-base.yaml
1 heat_template_version: 2016-04-08
2
3 description: >
4   OpenStack Ceilometer service configured with Puppet
5
6 parameters:
7   EndpointMap:
8     default: {}
9     description: Mapping of service endpoint -> protocol. Typically set
10                  via parameter_defaults in the resource registry.
11     type: json
12   CeilometerBackend:
13     default: 'mongodb'
14     description: The ceilometer backend type.
15     type: string
16   CeilometerMeteringSecret:
17     description: Secret shared by the ceilometer services.
18     type: string
19     hidden: true
20   CeilometerPassword:
21     description: The password for the ceilometer service account.
22     type: string
23     hidden: true
24   CeilometerMeterDispatcher:
25     default: 'gnocchi'
26     description: Dispatcher to process meter data
27     type: string
28     constraints:
29     - allowed_values: ['gnocchi', 'database']
30   CeilometerWorkers:
31     default: 0
32     description: Number of workers for Ceilometer service.
33     type: number
34   CeilometerStoreEvents:
35     default: false
36     description: Whether to store events in ceilometer.
37     type: boolean
38   Debug:
39     default: ''
40     description: Set to True to enable debugging on all services.
41     type: string
42   KeystoneRegion:
43     type: string
44     default: 'regionOne'
45     description: Keystone region for endpoint
46   RabbitPassword:
47     description: The password for RabbitMQ
48     type: string
49     hidden: true
50   RabbitUserName:
51     default: guest
52     description: The username for RabbitMQ
53     type: string
54   RabbitClientUseSSL:
55     default: false
56     description: >
57         Rabbit client subscriber parameter to specify
58         an SSL connection to the RabbitMQ host.
59     type: string
60   RabbitClientPort:
61     default: 5672
62     description: Set rabbit subscriber port, change this if using SSL
63     type: number
64
65 outputs:
66   role_data:
67     description: Role data for the Ceilometer role.
68     value:
69       service_name: ceilometer_base
70       config_settings:
71         ceilometer::debug: {get_param: Debug}
72         ceilometer::db::database_connection:
73           list_join:
74             - ''
75             - - {get_param: [EndpointMap, MysqlInternal, protocol]}
76             - - '://ceilometer:'
77               - {get_param: CeilometerPassword}
78               - '@'
79               - {get_param: [EndpointMap, MysqlInternal, host]}
80               - '/ceilometer'
81         ceilometer_backend: {get_param: CeilometerBackend}
82         ceilometer::metering_secret: {get_param: CeilometerMeteringSecret}
83         # we include db_sync class in puppet-tripleo
84         ceilometer::db::sync_db: false
85         ceilometer::api::keystone_password: {get_param: CeilometerPassword}
86         ceilometer::api::keystone_auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri] }
87         ceilometer::api::keystone_identity_uri: { get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix] }
88         ceilometer::agent::auth::auth_password: {get_param: CeilometerPassword}
89         ceilometer::agent::auth::auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
90         ceilometer::agent::notification::store_events: {get_param: CeilometerStoreEvents}
91         ceilometer::agent::auth::auth_region: {get_param: KeystoneRegion}
92         ceilometer::agent::auth::auth_tenant_name: 'service'
93         ceilometer::agent::auth::auth_endpoint_type: 'internalURL'
94         ceilometer::db::mysql::password: {get_param: CeilometerPassword}
95         ceilometer::collector::meter_dispatcher: {get_param: CeilometerMeterDispatcher}
96         ceilometer::dispatcher::gnocchi::url: {get_param: [EndpointMap, GnocchiInternal, uri]}
97         ceilometer::dispatcher::gnocchi::filter_project: 'service'
98         ceilometer::dispatcher::gnocchi::archive_policy: 'low'
99         ceilometer::dispatcher::gnocchi::resources_definition_file: 'gnocchi_resources.yaml'
100         ceilometer::keystone::auth::public_url: {get_param: [EndpointMap, CeilometerPublic, uri]}
101         ceilometer::keystone::auth::internal_url: {get_param: [EndpointMap, CeilometerInternal, uri]}
102         ceilometer::keystone::auth::admin_url: {get_param: [EndpointMap, CeilometerAdmin, uri]}
103         ceilometer::keystone::auth::password: {get_param: CeilometerPassword}
104         ceilometer::keystone::auth::region: {get_param: KeystoneRegion}
105         ceilometer::keystone::auth::tenant: 'service'
106         ceilometer::rabbit_userid: {get_param: RabbitUserName}
107         ceilometer::rabbit_password: {get_param: RabbitPassword}
108         ceilometer::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
109         ceilometer::rabbit_port: {get_param: RabbitClientPort}
110         ceilometer::db::mysql::user: ceilometer
111         ceilometer::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host_nobrackets]}
112         ceilometer::db::mysql::dbname: ceilometer
113         ceilometer::db::mysql::allowed_hosts:
114           - '%'
115           - "%{hiera('mysql_bind_host')}"
116         ceilometer::rabbit_heartbeat_timeout_threshold: 60
117         ceilometer::db::database_db_max_retries: -1
118         ceilometer::db::database_max_retries: -1
119         ceilometer::telemetry_secret: {get_param: CeilometerMeteringSecret}