Mam kilka serwerów internetowych pod dwoma serwerami utrzymywanymi i aby sprawdzić stan prawdziwego serwera WWW, używam tego fragmentu konfiguracji keepalived
TCP_CHECK # healthchecker : HTTP_GET|SSL_GET|TCP_CHECK|SMTP_CHECK|MISC_CHECK { connect_timeout 3 # Timeout connection, sec nb_get_retry 3 # number of get retry delay_before_retry 3 connect_port 80 }
Ale oprócz apache muszę również sprawdzić, czy na tym serwerze działa mongos, a jeśli jedno z tych aplikacji nie jest w porządku, muszę wyciągnąć serwer z listy prawdziwych serwerów? Jak więc mogę dodać wyrażenia logiczne w konfiguracji keepalived.
Odpowiedzi:
Użyj MISC_CHECK:
Gdzie /etc/keepalived/servicecheck.sh to skrypt powłoki, który sprawdza wszystkie przydatne funkcje:
To tylko przykład. Możesz zbudować dowolną ilość logiki w swoim skrypcie. Dowolny status powrotu 1 spowoduje, że serwer pozostanie bezczynny.
źródło