tripleo-common/healthcheck/mariadb
Michele Baldessari 08d6641218 Add clustercheck healthcheck
Let's add a healthcheck for the clustercheck container.
We look for host and port in the /etc/xinetd.d/galera-monitor file
and if they should not be set or present we use port 9200 and the
hostname itself as default.

Since the clustercheck container uses the very same mariadb container
image, we test for xinetd's process and configuration file to decide
if we are using the container image for clustercheck or for mariadb.

Change-Id: I46be211323442d309d7bb000bede02b0e8ccb512
2017-08-29 12:39:59 +02:00

17 lines
641 B
Bash
Executable File

#!/bin/sh
. ${HEALTHCHECK_SCRIPTS:-/usr/share/openstack-tripleo-common/healthcheck}/common.sh
GALERA_XINETD_CONF='/etc/xinetd.d/galera-monitor'
# If the mariadb container is running xinetd with galera-monitor then it is a
# clustercheck container, otherwise a mysql/mariadb one
if pgrep xinetd &> /dev/null && grep -qe 'disable.*no' $GALERA_XINETD_CONF; then
PORT=$(awk '/port.*=/{ print $3 }' $GALERA_XINETD_CONF)
ADDR=$(awk '/bind.*=/{ print $3 }' $GALERA_XINETD_CONF)
bind_host=${ADDR:-$(hostname)}
bind_port=${PORT:-9200}
healthcheck_curl http://${bind_host}:${bind_port}/
else
mysql -e 'select 1' || exit 1
fi