83 lines
2.0 KiB
YAML
83 lines
2.0 KiB
YAML
heat_template_version: newton
|
|
|
|
description: A pool for a Load Balancer
|
|
|
|
parameters:
|
|
lb_algorithm:
|
|
type: string
|
|
default: ROUND_ROBIN
|
|
description: Load balancing algorithm
|
|
|
|
pool_protocol:
|
|
type: string
|
|
default: HTTP
|
|
description: Protocol used by the pool members
|
|
|
|
listener_id:
|
|
type: string
|
|
description: ID of the listener
|
|
|
|
# Health monitor parameters
|
|
has_monitor:
|
|
type: boolean
|
|
description: whenever to create the health monitor
|
|
|
|
hm_delay:
|
|
type: number
|
|
default: 10
|
|
description: >
|
|
The minimum time in seconds between regular connections of the
|
|
member.
|
|
hm_max_retries:
|
|
type: number
|
|
default: 4
|
|
description: >
|
|
Number of permissible connection failures before changing the member
|
|
status to INACTIVE.
|
|
|
|
hm_timeout:
|
|
type: number
|
|
default: 3
|
|
description: >
|
|
Maximum number of seconds for a monitor to wait for a connection
|
|
to be established before it times out.
|
|
|
|
hm_type:
|
|
type: string
|
|
default: HTTP
|
|
description: Type of health-monitor
|
|
|
|
|
|
conditions:
|
|
has_monitor:
|
|
get_param: has_monitor
|
|
|
|
|
|
resources:
|
|
pool:
|
|
type: OS::Octavia::Pool
|
|
properties:
|
|
lb_algorithm: { get_param: lb_algorithm }
|
|
protocol: { get_param: pool_protocol }
|
|
listener: { get_param: listener_id }
|
|
|
|
monitor:
|
|
type: OS::Octavia::HealthMonitor
|
|
condition: has_monitor
|
|
properties:
|
|
delay: { get_param: hm_delay }
|
|
type: { get_param: hm_type }
|
|
timeout: { get_param: hm_timeout }
|
|
max_retries: { get_param: hm_max_retries }
|
|
pool: { get_resource: pool }
|
|
|
|
outputs:
|
|
pool_id:
|
|
description: Pool ID
|
|
value: { get_resource: pool }
|
|
|
|
monitor_id:
|
|
description: Healthmonitor ID
|
|
value: { get_resource: monitor }
|
|
condition: has_monitor
|