Merge "Combine BootstrapNodeDeployment with AllNodesDeployment"
[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   KeystoneRegion:
39     type: string
40     default: 'regionOne'
41     description: Keystone region for endpoint
42   RabbitPassword:
43     description: The password for RabbitMQ
44     type: string
45     hidden: true
46   RabbitUserName:
47     default: guest
48     description: The username for RabbitMQ
49     type: string
50   RabbitClientUseSSL:
51     default: false
52     description: >
53         Rabbit client subscriber parameter to specify
54         an SSL connection to the RabbitMQ host.
55     type: string
56   RabbitClientPort:
57     default: 5672
58     description: Set rabbit subscriber port, change this if using SSL
59     type: number
60
61 outputs:
62   role_data:
63     description: Role data for the Ceilometer role.
64     value:
65       config_settings:
66         ceilometer::db::database_connection:
67           list_join:
68             - ''
69             - - {get_param: [EndpointMap, MysqlInternal, protocol]}
70             - - '://ceilometer:'
71               - {get_param: CeilometerPassword}
72               - '@'
73               - {get_param: [EndpointMap, MysqlInternal, host]}
74               - '/ceilometer'
75         ceilometer_backend: {get_param: CeilometerBackend}
76         ceilometer::metering_secret: {get_param: CeilometerMeteringSecret}
77         # we include db_sync class in puppet-tripleo
78         ceilometer::db::sync_db: false
79         ceilometer::api::keystone_password: {get_param: CeilometerPassword}
80         ceilometer::api::keystone_auth_uri: {get_param: [EndpointMap, KeystoneInternal, uri] }
81         ceilometer::api::keystone_identity_uri: { get_param: [EndpointMap, KeystoneAdmin, uri_no_suffix] }
82         ceilometer::agent::auth::auth_password: {get_param: CeilometerPassword}
83         ceilometer::agent::auth::auth_url: {get_param: [EndpointMap, KeystoneInternal, uri_no_suffix] }
84         ceilometer::agent::notification::store_events: {get_param: CeilometerStoreEvents}
85         ceilometer::db::mysql::password: {get_param: CeilometerPassword}
86         ceilometer::collector::meter_dispatcher: {get_param: CeilometerMeterDispatcher}
87         ceilometer::dispatcher::gnocchi::url: {get_param: [EndpointMap, GnocchiInternal, uri]}
88         ceilometer::dispatcher::gnocchi::filter_project: 'service'
89         ceilometer::dispatcher::gnocchi::archive_policy: 'low'
90         ceilometer::dispatcher::gnocchi::resources_definition_file: 'gnocchi_resources.yaml'
91         ceilometer::keystone::auth::public_url: {get_param: [EndpointMap, CeilometerPublic, uri]}
92         ceilometer::keystone::auth::internal_url: {get_param: [EndpointMap, CeilometerInternal, uri]}
93         ceilometer::keystone::auth::admin_url: {get_param: [EndpointMap, CeilometerAdmin, uri]}
94         ceilometer::keystone::auth::password: {get_param: CeilometerPassword}
95         ceilometer::keystone::auth::region: {get_param: KeystoneRegion}
96         ceilometer::rabbit_userid: {get_param: RabbitUserName}
97         ceilometer::rabbit_password: {get_param: RabbitPassword}
98         ceilometer::rabbit_use_ssl: {get_param: RabbitClientUseSSL}
99         ceilometer::rabbit_port: {get_param: RabbitClientPort}
100         ceilometer::db::mysql::user: ceilometer
101         ceilometer::db::mysql::host: {get_param: [EndpointMap, MysqlInternal, host]}
102         ceilometer::db::mysql::dbname: ceilometer
103         ceilometer::db::mysql::allowed_hosts:
104           - '%'
105           - "%{hiera('mysql_bind_host')}"