Files
proxmox/scripts/npmplus/keepalived/keepalived-notify.sh.bak

34 lines
1.1 KiB
Bash
Raw Permalink Normal View History

#!/bin/bash
# Handle Keepalived state changes
# This script should be deployed to /usr/local/bin/keepalived-notify.sh on Proxmox hosts
set -euo pipefail
STATE="${1:-unknown}"
LOGFILE="/var/log/keepalived-notify.log"
TIMESTAMP=$(date '+%Y-%m-%d %H:%M:%S')
VIP="${VIP:-192.168.11.166}"
# Ensure log directory exists
mkdir -p "$(dirname "$LOGFILE")"
case "$STATE" in
"master")
echo "[$TIMESTAMP] Transitioned to MASTER - This node now owns VIP $VIP" >> "$LOGFILE"
# Optionally: Start services, send alerts, etc.
# Example: Send alert
# echo "NPMplus HA: Node $(hostname) is now MASTER" | mail -s "NPMplus HA Master" admin@example.com
;;
"backup")
echo "[$TIMESTAMP] Transitioned to BACKUP - Standby mode" >> "$LOGFILE"
;;
"fault")
echo "[$TIMESTAMP] Transitioned to FAULT - Health check failed" >> "$LOGFILE"
# Optionally: Send critical alerts
# echo "NPMplus HA: Node $(hostname) is in FAULT state!" | mail -s "NPMplus HA Fault" admin@example.com
;;
*)
echo "[$TIMESTAMP] Unknown state: $STATE" >> "$LOGFILE"
;;
esac