diff --git a/ansible/roles/etcd/defaults/main.yml b/ansible/roles/etcd/defaults/main.yml index 10510fc4fc..6a39d765e9 100644 --- a/ansible/roles/etcd/defaults/main.yml +++ b/ansible/roles/etcd/defaults/main.yml @@ -23,7 +23,13 @@ etcd_services: image: "{{ etcd_image_full }}" volumes: "{{ etcd_default_volumes + etcd_extra_volumes }}" dimensions: "{{ etcd_dimensions }}" - + haproxy: + etcd: + enabled: true + mode: "http" + external: false + port: "{{ etcd_client_port }}" + tls_backend: "{{ etcd_enable_tls | bool }}" #################### # Docker diff --git a/ansible/roles/etcd/tasks/loadbalancer.yml b/ansible/roles/etcd/tasks/loadbalancer.yml new file mode 100644 index 0000000000..07e1a3be44 --- /dev/null +++ b/ansible/roles/etcd/tasks/loadbalancer.yml @@ -0,0 +1,7 @@ +--- +- name: "Configure loadbalancer for {{ project_name }}" + import_role: + name: loadbalancer-config + vars: + project_services: "{{ etcd_services }}" + tags: always diff --git a/ansible/site.yml b/ansible/site.yml index 4df835f84c..37fee5926b 100644 --- a/ansible/site.yml +++ b/ansible/site.yml @@ -150,6 +150,11 @@ tasks_from: loadbalancer tags: designate when: enable_designate | bool + - include_role: + name: etcd + tasks_from: loadbalancer + tags: etcd + when: enable_etcd | bool - include_role: name: freezer tasks_from: loadbalancer diff --git a/releasenotes/notes/etcd-tcp-loadbalancer-08d9332ee3be9a8b.yaml b/releasenotes/notes/etcd-tcp-loadbalancer-08d9332ee3be9a8b.yaml new file mode 100644 index 0000000000..f35c4ea09d --- /dev/null +++ b/releasenotes/notes/etcd-tcp-loadbalancer-08d9332ee3be9a8b.yaml @@ -0,0 +1,4 @@ +--- +features: + - | + etcd is now exposed internally via HAProxy on ``etcd_client_port``.