Skip to content
Snippets Groups Projects
Commit 3e9ad631 authored by LinPeiWen's avatar LinPeiWen
Browse files

Use Docker healthchecks for gnocchi services

This change enables the use of Docker healthchecks for gnocchi services.
Implements: blueprint container-health-check

Change-Id: Ib1eb766d061c376c0bdd693dd6ea1e5b3e3fc02a
parent 1b1d06a9
No related branches found
No related tags found
No related merge requests found
......@@ -9,6 +9,7 @@ gnocchi_services:
image: "{{ gnocchi_api_image_full }}"
volumes: "{{ gnocchi_api_default_volumes + gnocchi_api_extra_volumes }}"
dimensions: "{{ gnocchi_api_dimensions }}"
healthcheck: "{{ gnocchi_api_healthcheck }}"
haproxy:
gnocchi_api:
enabled: "{{ enable_gnocchi }}"
......@@ -27,6 +28,7 @@ gnocchi_services:
image: "{{ gnocchi_metricd_image_full }}"
volumes: "{{ gnocchi_metricd_default_volumes + gnocchi_metricd_extra_volumes }}"
dimensions: "{{ gnocchi_metricd_dimensions }}"
healthcheck: "{{ gnocchi_metricd_healthcheck }}"
gnocchi-statsd:
container_name: gnocchi_statsd
group: gnocchi-statsd
......@@ -34,6 +36,7 @@ gnocchi_services:
image: "{{ gnocchi_statsd_image_full }}"
volumes: "{{ gnocchi_statsd_default_volumes + gnocchi_statsd_extra_volumes }}"
dimensions: "{{ gnocchi_statsd_dimensions }}"
healthcheck: "{{ gnocchi_statsd_healthcheck }}"
####################
......@@ -73,6 +76,45 @@ gnocchi_api_dimensions: "{{ default_container_dimensions }}"
gnocchi_metricd_dimensions: "{{ default_container_dimensions }}"
gnocchi_statsd_dimensions: "{{ default_container_dimensions }}"
gnocchi_api_enable_healthchecks: "{{ enable_container_healthchecks }}"
gnocchi_api_healthcheck_interval: "{{ default_container_healthcheck_interval }}"
gnocchi_api_healthcheck_retries: "{{ default_container_healthcheck_retries }}"
gnocchi_api_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}"
gnocchi_api_healthcheck_test: ["CMD-SHELL", "healthcheck_curl http://{{ api_interface_address | put_address_in_context('url') }}:{{ gnocchi_api_listen_port }}"]
gnocchi_api_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}"
gnocchi_api_healthcheck:
interval: "{{ gnocchi_api_healthcheck_interval }}"
retries: "{{ gnocchi_api_healthcheck_retries }}"
start_period: "{{ gnocchi_api_healthcheck_start_period }}"
test: "{% if gnocchi_api_enable_healthchecks | bool %}{{ gnocchi_api_healthcheck_test }}{% else %}NONE{% endif %}"
timeout: "{{ gnocchi_api_healthcheck_timeout }}"
gnocchi_metricd_enable_healthchecks: "{{ enable_container_healthchecks }}"
gnocchi_metricd_healthcheck_interval: "{{ default_container_healthcheck_interval }}"
gnocchi_metricd_healthcheck_retries: "{{ default_container_healthcheck_retries }}"
gnocchi_metricd_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}"
gnocchi_metricd_healthcheck_test: ["CMD-SHELL", "healthcheck_port gnocchi-metricd {{ database_port }}"]
gnocchi_metricd_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}"
gnocchi_metricd_healthcheck:
interval: "{{ gnocchi_metricd_healthcheck_interval }}"
retries: "{{ gnocchi_metricd_healthcheck_retries }}"
start_period: "{{ gnocchi_metricd_healthcheck_start_period }}"
test: "{% if gnocchi_metricd_enable_healthchecks | bool %}{{ gnocchi_metricd_healthcheck_test }}{% else %}NONE{% endif %}"
timeout: "{{ gnocchi_metricd_healthcheck_timeout }}"
gnocchi_statsd_enable_healthchecks: "{{ enable_container_healthchecks }}"
gnocchi_statsd_healthcheck_interval: "{{ default_container_healthcheck_interval }}"
gnocchi_statsd_healthcheck_retries: "{{ default_container_healthcheck_retries }}"
gnocchi_statsd_healthcheck_start_period: "{{ default_container_healthcheck_start_period }}"
gnocchi_statsd_healthcheck_test: ["CMD-SHELL", "healthcheck_port gnocchi-statsd {{ database_port }}"]
gnocchi_statsd_healthcheck_timeout: "{{ default_container_healthcheck_timeout }}"
gnocchi_statsd_healthcheck:
interval: "{{ gnocchi_statsd_healthcheck_interval }}"
retries: "{{ gnocchi_statsd_healthcheck_retries }}"
start_period: "{{ gnocchi_statsd_healthcheck_start_period }}"
test: "{% if gnocchi_statsd_enable_healthchecks | bool %}{{ gnocchi_statsd_healthcheck_test }}{% else %}NONE{% endif %}"
timeout: "{{ gnocchi_statsd_healthcheck_timeout }}"
gnocchi_api_default_volumes:
- "{{ node_config_directory }}/gnocchi-api/:{{ container_config_directory }}/:ro"
- "/etc/localtime:/etc/localtime:ro"
......
......@@ -11,6 +11,7 @@
image: "{{ service.image }}"
volumes: "{{ service.volumes }}"
dimensions: "{{ service.dimensions }}"
healthcheck: "{{ service.healthcheck | default(omit) }}"
when:
- kolla_action != "config"
......@@ -26,6 +27,7 @@
image: "{{ service.image }}"
volumes: "{{ service.volumes }}"
dimensions: "{{ service.dimensions }}"
healthcheck: "{{ service.healthcheck | default(omit) }}"
when:
- kolla_action != "config"
......@@ -41,5 +43,6 @@
image: "{{ service.image }}"
volumes: "{{ service.volumes }}"
dimensions: "{{ service.dimensions }}"
healthcheck: "{{ service.healthcheck | default(omit) }}"
when:
- kolla_action != "config"
......@@ -8,6 +8,7 @@
image: "{{ item.value.image }}"
volumes: "{{ item.value.volumes }}"
dimensions: "{{ item.value.dimensions }}"
healthcheck: "{{ item.value.healthcheck | default(omit) }}"
when:
- inventory_hostname in groups[item.value.group]
- item.value.enabled | bool
......
---
features:
- |
Implements container healthchecks for gnocchi services.
See `blueprint
<https://blueprints.launchpad.net/kolla-ansible/+spec/container-health-check>`__
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment