mirror of
https://github.com/m8tin/cis.git
synced 2025-12-06 07:48:26 +01:00
31 lines
1.1 KiB
Bash
31 lines
1.1 KiB
Bash
#!/bin/bash
|
|
TMP="$(mktemp)"
|
|
(
|
|
HOSTNAME="$(hostname)"
|
|
HOSTOWNER="$(cat /invra/hostowner)"
|
|
MAX_BEHIND=0
|
|
CURRENT_UNIXTIME=$(date -u +%s)
|
|
echo "OK#Checks running"
|
|
for CONTAINER_PATH in /invra/state/${HOSTOWNER}/containers/*; do
|
|
grep -E "^${HOSTNAME}$" "${CONTAINER_PATH}/standby-hosts" &> /dev/null || continue;
|
|
CONTAINER_NAME="$(basename "$CONTAINER_PATH")";
|
|
TS=$(zfs list -o name -r -t snapshot "zpool1/persistent/${CONTAINER_NAME}-BACKUP" | grep "@SYNC_${HOSTNAME}" | head -n1 | grep -oP "\\d{4}-\\d{2}-\\d{2}_\\d{2}:\\d{2}:\\d{2}")
|
|
LAST_SNAPSHOT_TIME="$(echo "${TS}" | sed "s/_/ /g")"
|
|
LAST_SNAPSHOT_UNIXTIME=$(date -u --date="TZ=\"UTC\" ${LAST_SNAPSHOT_TIME}" +%s)
|
|
SECONDS_BEHIND=$[ $CURRENT_UNIXTIME - $LAST_SNAPSHOT_UNIXTIME ]
|
|
if [ "$SECONDS_BEHIND" -gt "$MAX_BEHIND" ]; then
|
|
MAX_BEHIND="$SECONDS_BEHIND"
|
|
fi
|
|
if [ "$SECONDS_BEHIND" -gt 30 ]; then
|
|
echo "LAGGING_SYNC_${CONTAINER_NAME}_${HOSTNAME}?FAIL#${SECONDS_BEHIND} behind"
|
|
|
|
fi
|
|
done
|
|
echo $CURRENT_UNIXTIME
|
|
) > "$TMP"
|
|
chmod 655 "$TMP"
|
|
mkdir -p /var/www/html/monitoring &>/dev/null
|
|
mv "$TMP" /var/www/html/monitoring/synccontainer.check.txt
|
|
|
|
|