202 lines
5.9 KiB
YAML
202 lines
5.9 KiB
YAML
apiVersion: v1
|
|
kind: ConfigMap
|
|
metadata:
|
|
name: {{ template "redis.fullname" . }}-health
|
|
namespace: {{ .Release.Namespace }}
|
|
labels:
|
|
app: {{ template "redis.name" . }}
|
|
chart: {{ template "redis.chart" . }}
|
|
heritage: {{ .Release.Service }}
|
|
release: {{ .Release.Name }}
|
|
data:
|
|
ping_readiness_local.sh: |-
|
|
#!/bin/bash
|
|
{{- if .Values.usePasswordFile }}
|
|
password_aux=`cat ${REDIS_PASSWORD_FILE}`
|
|
export REDIS_PASSWORD=$password_aux
|
|
{{- end }}
|
|
{{- if .Values.usePassword }}
|
|
no_auth_warning=$([[ "$(redis-cli --version)" =~ (redis-cli 5.*) ]] && echo --no-auth-warning)
|
|
{{- end }}
|
|
response=$(
|
|
timeout -s 3 $1 \
|
|
redis-cli \
|
|
{{- if .Values.usePassword }}
|
|
-a $REDIS_PASSWORD $no_auth_warning \
|
|
{{- end }}
|
|
-h localhost \
|
|
{{- if .Values.tls.enabled }}
|
|
-p $REDIS_TLS_PORT \
|
|
--tls \
|
|
--cacert {{ template "redis.tlsCACert" . }} \
|
|
{{- if .Values.tls.authClients }}
|
|
--cert {{ template "redis.tlsCert" . }} \
|
|
--key {{ template "redis.tlsCertKey" . }} \
|
|
{{- end }}
|
|
{{- else }}
|
|
-p $REDIS_PORT \
|
|
{{- end }}
|
|
ping
|
|
)
|
|
if [ "$response" != "PONG" ]; then
|
|
echo "$response"
|
|
exit 1
|
|
fi
|
|
ping_liveness_local.sh: |-
|
|
#!/bin/bash
|
|
{{- if .Values.usePasswordFile }}
|
|
password_aux=`cat ${REDIS_PASSWORD_FILE}`
|
|
export REDIS_PASSWORD=$password_aux
|
|
{{- end }}
|
|
{{- if .Values.usePassword }}
|
|
no_auth_warning=$([[ "$(redis-cli --version)" =~ (redis-cli 5.*) ]] && echo --no-auth-warning)
|
|
{{- end }}
|
|
response=$(
|
|
timeout -s 3 $1 \
|
|
redis-cli \
|
|
{{- if .Values.usePassword }}
|
|
-a $REDIS_PASSWORD $no_auth_warning \
|
|
{{- end }}
|
|
-h localhost \
|
|
{{- if .Values.tls.enabled }}
|
|
-p $REDIS_TLS_PORT \
|
|
--tls \
|
|
--cacert {{ template "redis.tlsCACert" . }} \
|
|
{{- if .Values.tls.authClients }}
|
|
--cert {{ template "redis.tlsCert" . }} \
|
|
--key {{ template "redis.tlsCertKey" . }} \
|
|
{{- end }}
|
|
{{- else }}
|
|
-p $REDIS_PORT \
|
|
{{- end }}
|
|
ping
|
|
)
|
|
if [ "$response" != "PONG" ] && [ "$response" != "LOADING Redis is loading the dataset in memory" ]; then
|
|
echo "$response"
|
|
exit 1
|
|
fi
|
|
{{- if .Values.sentinel.enabled }}
|
|
ping_sentinel.sh: |-
|
|
#!/bin/bash
|
|
{{- if .Values.usePasswordFile }}
|
|
password_aux=`cat ${REDIS_PASSWORD_FILE}`
|
|
export REDIS_PASSWORD=$password_aux
|
|
{{- end }}
|
|
{{- if .Values.usePassword }}
|
|
no_auth_warning=$([[ "$(redis-cli --version)" =~ (redis-cli 5.*) ]] && echo --no-auth-warning)
|
|
{{- end }}
|
|
response=$(
|
|
timeout -s 3 $1 \
|
|
redis-cli \
|
|
{{- if .Values.usePassword }}
|
|
-a $REDIS_PASSWORD $no_auth_warning \
|
|
{{- end }}
|
|
-h localhost \
|
|
{{- if .Values.tls.enabled }}
|
|
-p $REDIS_SENTINEL_TLS_PORT_NUMBER \
|
|
--tls \
|
|
--cacert {{ template "redis.tlsCACert" . }} \
|
|
{{- if .Values.tls.authClients }}
|
|
--cert {{ template "redis.tlsCert" . }} \
|
|
--key {{ template "redis.tlsCertKey" . }} \
|
|
{{- end }}
|
|
{{- else }}
|
|
-p $REDIS_SENTINEL_PORT \
|
|
{{- end }}
|
|
ping
|
|
)
|
|
if [ "$response" != "PONG" ]; then
|
|
echo "$response"
|
|
exit 1
|
|
fi
|
|
parse_sentinels.awk: |-
|
|
/ip/ {FOUND_IP=1}
|
|
/port/ {FOUND_PORT=1}
|
|
/runid/ {FOUND_RUNID=1}
|
|
!/ip|port|runid/ {
|
|
if (FOUND_IP==1) {
|
|
IP=$1; FOUND_IP=0;
|
|
}
|
|
else if (FOUND_PORT==1) {
|
|
PORT=$1;
|
|
FOUND_PORT=0;
|
|
} else if (FOUND_RUNID==1) {
|
|
printf "\nsentinel known-sentinel {{ .Values.sentinel.masterSet }} %s %s %s", IP, PORT, $0; FOUND_RUNID=0;
|
|
}
|
|
}
|
|
{{- end }}
|
|
ping_readiness_master.sh: |-
|
|
#!/bin/bash
|
|
{{- if .Values.usePasswordFile }}
|
|
password_aux=`cat ${REDIS_MASTER_PASSWORD_FILE}`
|
|
export REDIS_MASTER_PASSWORD=$password_aux
|
|
{{- end }}
|
|
{{- if .Values.usePassword }}
|
|
no_auth_warning=$([[ "$(redis-cli --version)" =~ (redis-cli 5.*) ]] && echo --no-auth-warning)
|
|
{{- end }}
|
|
response=$(
|
|
timeout -s 3 $1 \
|
|
redis-cli \
|
|
{{- if .Values.usePassword }}
|
|
-a $REDIS_MASTER_PASSWORD $no_auth_warning \
|
|
{{- end }}
|
|
-h $REDIS_MASTER_HOST \
|
|
-p $REDIS_MASTER_PORT_NUMBER \
|
|
{{- if .Values.tls.enabled }}
|
|
--tls \
|
|
--cacert {{ template "redis.tlsCACert" . }} \
|
|
{{- if .Values.tls.authClients }}
|
|
--cert {{ template "redis.tlsCert" . }} \
|
|
--key {{ template "redis.tlsCertKey" . }} \
|
|
{{- end }}
|
|
{{- end }}
|
|
ping
|
|
)
|
|
if [ "$response" != "PONG" ]; then
|
|
echo "$response"
|
|
exit 1
|
|
fi
|
|
ping_liveness_master.sh: |-
|
|
#!/bin/bash
|
|
{{- if .Values.usePasswordFile }}
|
|
password_aux=`cat ${REDIS_MASTER_PASSWORD_FILE}`
|
|
export REDIS_MASTER_PASSWORD=$password_aux
|
|
{{- end }}
|
|
{{- if .Values.usePassword }}
|
|
no_auth_warning=$([[ "$(redis-cli --version)" =~ (redis-cli 5.*) ]] && echo --no-auth-warning)
|
|
{{- end }}
|
|
response=$(
|
|
timeout -s 3 $1 \
|
|
redis-cli \
|
|
{{- if .Values.usePassword }}
|
|
-a $REDIS_MASTER_PASSWORD $no_auth_warning \
|
|
{{- end }}
|
|
-h $REDIS_MASTER_HOST \
|
|
-p $REDIS_MASTER_PORT_NUMBER \
|
|
{{- if .Values.tls.enabled }}
|
|
--tls \
|
|
--cacert {{ template "redis.tlsCACert" . }} \
|
|
{{- if .Values.tls.authClients }}
|
|
--cert {{ template "redis.tlsCert" . }} \
|
|
--key {{ template "redis.tlsCertKey" . }} \
|
|
{{- end }}
|
|
{{- end }}
|
|
ping
|
|
)
|
|
if [ "$response" != "PONG" ] && [ "$response" != "LOADING Redis is loading the dataset in memory" ]; then
|
|
echo "$response"
|
|
exit 1
|
|
fi
|
|
ping_readiness_local_and_master.sh: |-
|
|
script_dir="$(dirname "$0")"
|
|
exit_status=0
|
|
"$script_dir/ping_readiness_local.sh" $1 || exit_status=$?
|
|
"$script_dir/ping_readiness_master.sh" $1 || exit_status=$?
|
|
exit $exit_status
|
|
ping_liveness_local_and_master.sh: |-
|
|
script_dir="$(dirname "$0")"
|
|
exit_status=0
|
|
"$script_dir/ping_liveness_local.sh" $1 || exit_status=$?
|
|
"$script_dir/ping_liveness_master.sh" $1 || exit_status=$?
|
|
exit $exit_status
|