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