1 heat_template_version: pike
4 OpenStack containerized HAproxy service
9 default: 'tripleoupstream'
13 default: 'centos-binary-haproxy:latest'
15 DockerHAProxyConfigImage:
16 description: The container image to use for the haproxy config_volume
17 default: 'centos-binary-haproxy:latest'
21 description: Dictionary packing service data
25 description: Mapping of service_name -> network name. Typically set
26 via parameter_defaults in the resource registry. This
27 mapping overrides those in ServiceNetMapDefaults.
34 description: Mapping of service endpoint -> protocol. Typically set
35 via parameter_defaults in the resource registry.
38 description: Password for HAProxy stats endpoint
42 description: User for HAProxy stats endpoint
47 description: Syslog address where HAproxy will send its log
49 DeployedSSLCertificatePath:
50 default: '/etc/pki/tls/private/overcloud_endpoint.pem'
52 The filepath of the certificate as it will be stored in the controller.
55 description: The password for Redis
58 MonitoringSubscriptionHaproxy:
59 default: 'overcloud-haproxy'
63 description: Role name on which the service is applied
67 description: Parameters specific to the role
73 type: ./containers-common.yaml
76 type: ../../puppet/services/haproxy.yaml
78 EndpointMap: {get_param: EndpointMap}
79 ServiceData: {get_param: ServiceData}
80 ServiceNetMap: {get_param: ServiceNetMap}
81 DefaultPasswords: {get_param: DefaultPasswords}
82 RoleName: {get_param: RoleName}
83 RoleParameters: {get_param: RoleParameters}
87 description: Role data for the HAproxy role.
89 service_name: {get_attr: [HAProxyBase, role_data, service_name]}
92 - get_attr: [HAProxyBase, role_data, config_settings]
93 - tripleo::haproxy::haproxy_daemon: false
94 step_config: &step_config
95 get_attr: [HAProxyBase, role_data, step_config]
96 service_config_settings: {get_attr: [HAProxyBase, role_data, service_config_settings]}
97 # BEGIN DOCKER SETTINGS
99 config_volume: haproxy
100 puppet_tags: haproxy_config
101 step_config: *step_config
105 - [ {get_param: DockerNamespace}, {get_param: DockerHAProxyConfigImage} ]
106 volumes: &deployed_cert_mount
109 - - {get_param: DeployedSSLCertificatePath}
110 - {get_param: DeployedSSLCertificatePath}
113 /var/lib/kolla/config_files/haproxy.json:
114 command: haproxy -f /etc/haproxy/haproxy.cfg
116 - source: "/var/lib/kolla/config_files/src/*"
119 preserve_properties: true
126 - [ {get_param: DockerNamespace}, {get_param: DockerHAProxyImage} ]
132 - {get_attr: [ContainersCommon, volumes]}
133 - *deployed_cert_mount
135 - /var/lib/kolla/config_files/haproxy.json:/var/lib/kolla/config_files/config.json:ro
136 - /var/lib/config-data/puppet-generated/haproxy/:/var/lib/kolla/config_files/src:ro
138 - KOLLA_CONFIG_STRATEGY=COPY_ALWAYS
140 get_attr: [HAProxyBase, role_data, metadata_settings]