3e75a33ad4
Change-Id: Ib4b15ed4feac82d8492b1c0f0238a752eac668e6
97 lines
3.7 KiB
YAML
97 lines
3.7 KiB
YAML
---
|
|
loadbalancer_services:
|
|
haproxy:
|
|
container_name: haproxy
|
|
group: loadbalancer
|
|
enabled: true
|
|
image: "{{ haproxy_image_full }}"
|
|
privileged: True
|
|
volumes: "{{ haproxy_default_volumes + haproxy_extra_volumes }}"
|
|
dimensions: "{{ haproxy_dimensions }}"
|
|
healthcheck: "{{ haproxy_healthcheck }}"
|
|
keepalived:
|
|
container_name: keepalived
|
|
group: loadbalancer
|
|
enabled: "{{ enable_keepalived | bool }}"
|
|
image: "{{ keepalived_image_full }}"
|
|
privileged: True
|
|
volumes: "{{ keepalived_default_volumes + keepalived_extra_volumes }}"
|
|
dimensions: "{{ keepalived_dimensions }}"
|
|
|
|
|
|
####################
|
|
# Docker
|
|
####################
|
|
keepalived_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/keepalived"
|
|
keepalived_tag: "{{ openstack_tag }}"
|
|
keepalived_image_full: "{{ keepalived_image }}:{{ keepalived_tag }}"
|
|
|
|
haproxy_image: "{{ docker_registry ~ '/' if docker_registry else '' }}{{ docker_namespace }}/haproxy"
|
|
haproxy_tag: "{{ openstack_tag }}"
|
|
haproxy_image_full: "{{ haproxy_image }}:{{ haproxy_tag }}"
|
|
|
|
syslog_server: "{{ api_interface_address }}"
|
|
syslog_haproxy_facility: "local1"
|
|
|
|
# Traffic mode. Valid options are [ multicast, unicast ]
|
|
keepalived_traffic_mode: "multicast"
|
|
|
|
# Extended global configuration, optimization options.
|
|
haproxy_max_connections: 40000
|
|
haproxy_processes: 1
|
|
haproxy_process_cpu_map: "no"
|
|
# Matches the mariadb 10000 max connections limit
|
|
haproxy_defaults_max_connections: 10000
|
|
|
|
haproxy_dimensions: "{{ default_container_dimensions }}"
|
|
keepalived_dimensions: "{{ default_container_dimensions }}"
|
|
|
|
haproxy_enable_healthchecks: "{{ enable_container_healthchecks }}"
|
|
haproxy_healthcheck_interval: "{{ default_container_healthcheck_interval }}"
|
|
haproxy_healthcheck_retries: "{{ default_container_healthcheck_retries }}"
|
|
haproxy_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}"
|
|
haproxy_healthcheck_test: ["CMD-SHELL", "healthcheck_curl http://{{ api_interface_address | put_address_in_context('url') }}:{{ haproxy_monitor_port }}"]
|
|
haproxy_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}"
|
|
haproxy_healthcheck:
|
|
interval: "{{ haproxy_healthcheck_interval }}"
|
|
retries: "{{ haproxy_healthcheck_retries }}"
|
|
start_period: "{{ haproxy_healthcheck_start_period }}"
|
|
test: "{% if haproxy_enable_healthchecks | bool %}{{ haproxy_healthcheck_test }}{% else %}NONE{% endif %}"
|
|
timeout: "{{ haproxy_healthcheck_timeout }}"
|
|
|
|
haproxy_default_volumes:
|
|
- "{{ node_config_directory }}/haproxy/:{{ container_config_directory }}/:ro"
|
|
- "/etc/localtime:/etc/localtime:ro"
|
|
- "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}"
|
|
- "haproxy_socket:/var/lib/kolla/haproxy/"
|
|
keepalived_default_volumes:
|
|
- "{{ node_config_directory }}/keepalived/:{{ container_config_directory }}/:ro"
|
|
- "/etc/localtime:/etc/localtime:ro"
|
|
- "{{ '/etc/timezone:/etc/timezone:ro' if ansible_facts.os_family == 'Debian' else '' }}"
|
|
- "/lib/modules:/lib/modules:ro"
|
|
- "haproxy_socket:/var/lib/kolla/haproxy/"
|
|
|
|
haproxy_extra_volumes: "{{ default_extra_volumes }}"
|
|
keepalived_extra_volumes: "{{ default_extra_volumes }}"
|
|
|
|
# Default timeout values
|
|
haproxy_http_request_timeout: "10s"
|
|
haproxy_http_keep_alive_timeout: "10s"
|
|
haproxy_queue_timeout: "1m"
|
|
haproxy_connect_timeout: "10s"
|
|
haproxy_client_timeout: "1m"
|
|
haproxy_server_timeout: "1m"
|
|
haproxy_check_timeout: "10s"
|
|
|
|
# Check http://www.haproxy.org/download/1.5/doc/configuration.txt for available options
|
|
haproxy_defaults_balance: "roundrobin"
|
|
|
|
# Avoid TCP connections refusing to die after VIP switch
|
|
# https://bugs.launchpad.net/kolla-ansible/+bug/1917068
|
|
haproxy_host_ipv4_tcp_retries2: "KOLLA_UNSET"
|
|
|
|
# HAProxy socket admin permissions enable
|
|
haproxy_socket_level_admin: "no"
|
|
|
|
kolla_externally_managed_cert: False
|