Skip to content

Instantly share code, notes, and snippets.

@ioggstream
Created May 4, 2017 17:29
Show Gist options
  • Save ioggstream/4e85cb9e45d7f884f332d8ed51a2add6 to your computer and use it in GitHub Desktop.
Save ioggstream/4e85cb9e45d7f884f332d8ed51a2add6 to your computer and use it in GitHub Desktop.
Stub for LBaaSv2 for openshift-on-openstack
heat_template_version: 2016-04-08
description: |
Auto-Scaling Group for Apache servers.
Uses the apache-poolmember and apache templates.
parameters:
external:
type: string
internal:
type: string
resources:
floatingip:
type: OS::Neutron::FloatingIP
properties:
floating_network: { get_param: external }
floatingip_association:
type: OS::Neutron::FloatingIPAssociation
properties:
floatingip_id: { get_resource: floatingip }
port_id: { get_attr: [ loadbalancer, vip_port_id ] }
loadbalancer:
type: OS::Neutron::LBaaS::LoadBalancer
properties:
name: test-2-balancer
provider: haproxy
vip_subnet: {get_param: internal}
listener:
type: OS::Neutron::LBaaS::Listener
properties:
name: test-2-listener
loadbalancer: { get_resource: loadbalancer }
protocol: HTTPS
protocol_port: 8443
pool:
type: OS::Neutron::LBaaS::Pool
description: The pool should be forwarded to the ASG.
properties:
name: test-2-pool
lb_algorithm: ROUND_ROBIN
listener: { get_resource: listener }
protocol: HTTPS
healthmonitor:
type: OS::Neutron::LBaaS::HealthMonitor
description: The monitors. The port is specified in the poolmember.
properties:
delay: 15
max_retries: 3
pool: { get_resource: pool }
timeout: 5
type: HTTPS
url_path: /
poolmember:
type: OS::Neutron::LBaaS::PoolMember
description: TODO: connect the address with an OS::Nova::ServerGroup.
properties:
pool: { get_param: pool }
address: { get_attr: [ old_server, resource.port, fixed_ips, 0, ip_address ] }
protocol_port: 8443
subnet: {get_param: internal}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment