Composable Nuage Compute Plugin
[apex-tripleo-heat-templates.git] / puppet / vip-config.yaml
1 heat_template_version: 2015-04-30
2
3 description: >
4   Configure hieradata for service -> virtual IP mappings.
5
6 resources:
7   VipConfigImpl:
8     type: OS::Heat::StructuredConfig
9     properties:
10       group: os-apply-config
11       config:
12         hiera:
13           datafiles:
14             vip_data:
15               mapped_data:
16                 keystone_admin_api_vip: {get_input: keystone_admin_api_vip}
17                 keystone_public_api_vip: {get_input: keystone_public_api_vip}
18                 neutron_api_vip: {get_input: neutron_api_vip}
19                 # TODO: pass a `midonet_api_vip` var
20                 midonet_api_vip: {get_input: neutron_api_vip}
21                 cinder_api_vip: {get_input: cinder_api_vip}
22                 glance_api_vip: {get_input: glance_api_vip}
23                 glance_registry_vip: {get_input: glance_registry_vip}
24                 sahara_api_vip: {get_input: sahara_api_vip}
25                 swift_proxy_vip: {get_input: swift_proxy_vip}
26                 nova_api_vip: {get_input: nova_api_vip}
27                 nova_metadata_vip: {get_input: nova_metadata_vip}
28                 ceilometer_api_vip: {get_input: ceilometer_api_vip}
29                 aodh_api_vip: {get_input: aodh_api_vip}
30                 gnocchi_api_vip: {get_input: gnocchi_api_vip}
31                 heat_api_vip: {get_input: heat_api_vip}
32                 horizon_vip: {get_input: horizon_vip}
33                 redis_vip: {get_input: redis_vip}
34                 mysql_vip: {get_input: mysql_vip}
35                 public_virtual_ip: {get_input: public_virtual_ip}
36                 controller_virtual_ip: {get_input: control_virtual_ip}
37                 internal_api_virtual_ip: {get_input: internal_api_virtual_ip}
38                 storage_virtual_ip: {get_input: storage_virtual_ip}
39                 storage_mgmt_virtual_ip: {get_input: storage_mgmt_virtual_ip}
40                 ironic_api_vip: {get_input: ironic_api_vip}
41                 # public_virtual_ip and controller_virtual_ip are needed in
42                 # both HAproxy & keepalived.
43                 tripleo::haproxy::public_virtual_ip: {get_input: public_virtual_ip}
44                 tripleo::haproxy::controller_virtual_ip: {get_input: control_virtual_ip}
45                 tripleo::keepalived::public_virtual_ip: {get_input: public_virtual_ip}
46                 tripleo::keepalived::controller_virtual_ip: {get_input: control_virtual_ip}
47                 tripleo::keepalived::internal_api_virtual_ip: {get_input: internal_api_virtual_ip}
48                 tripleo::keepalived::storage_virtual_ip: {get_input: storage_virtual_ip}
49                 tripleo::keepalived::storage_mgmt_virtual_ip: {get_input: storage_mgmt_virtual_ip}
50                 tripleo::redis_notification::haproxy_monitor_ip: {get_input: control_virtual_ip}
51
52
53 outputs:
54   OS::stack_id:
55     description: The VipConfigImpl resource.
56     value: {get_resource: VipConfigImpl}