mirror of
git://f0xx.org/ac/ac-deploy
synced 2026-07-29 05:59:05 +03:00
35 lines
1.6 KiB
Bash
35 lines
1.6 KiB
Bash
#!/bin/sh
|
|
# Quick health check for cast cluster.
|
|
set -eu
|
|
HOST="$(hostname -s)"
|
|
FAIL=0
|
|
echo "=== $HOST ==="
|
|
mount | grep ' /shared ' || { echo "WARN: /shared not mounted"; FAIL=1; }
|
|
curl -sS -o /dev/null -w "nginx=%{http_code}\n" http://127.0.0.1/ || true
|
|
php83 -v | head -1
|
|
|
|
case "$HOST" in
|
|
cast01)
|
|
mariadb -u root -e "SELECT @@server_id AS server_id, @@read_only AS read_only, @@gtid_current_pos AS gtid;"
|
|
mariadb -u androidcast -pcast-cluster-dev -h127.0.0.1 -e \
|
|
"SELECT table_schema, COUNT(*) AS tables FROM information_schema.tables WHERE table_schema IN ('androidcast_crashes','url_shortener') GROUP BY table_schema;"
|
|
;;
|
|
cast02|cast03)
|
|
mariadb -u root -e "SELECT @@server_id AS server_id, @@read_only AS read_only;" 2>/dev/null || { echo "mariadb not running"; FAIL=1; }
|
|
RS="$(mariadb -u root -e 'SHOW REPLICA STATUS\G' 2>/dev/null || true)"
|
|
echo "$RS" | grep -E 'Master_Host|Slave_IO_Running|Slave_SQL_Running|Seconds_Behind_Master|Last_SQL_Error' || true
|
|
echo "$RS" | grep -E 'Slave_IO_Running: Yes' >/dev/null || { echo "FAIL: IO thread not running"; FAIL=1; }
|
|
echo "$RS" | grep -E 'Slave_SQL_Running: Yes' >/dev/null || { echo "FAIL: SQL thread not running"; FAIL=1; }
|
|
mariadb -u root -e \
|
|
"SELECT table_schema, COUNT(*) AS tables FROM information_schema.tables WHERE table_schema IN ('androidcast_crashes','url_shortener') GROUP BY table_schema;"
|
|
mariadb -u androidcast -pcast-cluster-dev -h127.0.0.1 -e "SELECT 1 AS local_read_ok;" 2>/dev/null || echo "WARN: local app user read failed"
|
|
;;
|
|
esac
|
|
|
|
if [ "$FAIL" -eq 0 ]; then
|
|
echo OK
|
|
else
|
|
echo FAIL
|
|
exit 1
|
|
fi
|