38 lines
1.0 KiB
Bash
38 lines
1.0 KiB
Bash
#!/bin/sh
|
|
|
|
# Generate sentinel.conf file for Valkey Sentinel
|
|
source /opt/scripts/common.sh
|
|
|
|
PATH=${PATH}:/
|
|
SENTINEL_MASTER=""
|
|
|
|
updateSentinelMaster(){
|
|
cp /etc/valkey/sentinel.conf.orig /etc/valkey/sentinel.conf
|
|
hostname=$(hostname -f)
|
|
|
|
pingSentinel 1
|
|
if [ $? -ne 0 ]; then
|
|
SENTINEL_MASTER=$(hostname -f)
|
|
else
|
|
SENTINEL_MASTER=$(getSentinelMasterName)
|
|
fi
|
|
|
|
sed -i "s/SENTINEL_MASTER/${SENTINEL_MASTER}/g" /etc/valkey/sentinel.conf
|
|
|
|
}
|
|
|
|
|
|
if [ -f /etc/valkey/sentinel.conf ]; then
|
|
echo "Sentinel configuration file already exists, starting with this."
|
|
reps=$(awk -F ':' '/REPLICAS/ {print $2}' /etc/valkey/sentinel.conf)
|
|
if [ "${reps}" = "${VALKEY_REPLICAS}" ]; then
|
|
echo "Sentinel configuration file already has the correct number of replicas (${VALKEY_REPLICAS})."
|
|
else
|
|
echo "Updating Sentinel configuration file with the correct number of replicas (${VALKEY_REPLICAS})."
|
|
updateSentinelMaster
|
|
fi
|
|
else
|
|
updateSentinelMaster
|
|
fi
|
|
|
|
valkey-sentinel /etc/valkey/sentinel.conf |