The Farmguardian section lists all the health-checks available in the load balancer. It also includes a short description of each field and the farms where they are applied.
Farmguardian is used for advanced monitoring of the backends. When a problem is detected by the Farmguardian, it automatically disables the real server and its IP will be marked as blacklisted.
Health checks can either be pre-configured or custom. The two check types can be identified through the actions column. Each check mark whose configuration setting is grayed-out is pre-configured and those that are easily editable after clicking the pencil icon are custom.
Use the following actions under the Action menu:
Create Farmguardian. Opens the farmguardian form. Fill out this form with the necessary information.
Delete. Removes a selected farmguardian check.
These are the descriptions of the Farmguardian table:
Name. A descriptive name of each Farmguardian check.
Description. This field describes each farmguardian check.
Command. Checks commands and parameters to be executed on each interval against all backends on the farm.
Farms. Farms and services using that specified check.
Actions. Use these actions to manage the Farmguardian:
- Edit. Opens the configuration screen of the farmguardian. This is only available for custom farmguardian checks.
- Delete. Removes a selected farmguardian check. If the check is assigned to any service, then a notification will ask you if force the deletion. You will only use it for custom farmguardian checks.
Pre-configured health checks
Use the following built-in health checks for your farm.
check_redis: Checks the master Role for a Redis server. If the master role is not present, then the backend will be marked in DOWN status
check_tcp: Sends TCP connections to backend.
check_udp: Sends UDP connections to backend and checks if the port is opened.
check_http: Sends HTTP requests to backend and expects a 200 OK response with a timeout of 5 secs.
check_https: Sends HTTPS requests to backend and expects a 200 OK response with a timeout of 5 secs.
check_smtp: Sends SMTP connections to backend and expects an SMTP response OK with a timeout of 5 secs.
check_https_response_string: Sends HTTPS requests to backend and expects a response of 200 OK and a given string in HTML with a timeout of 5 secs. Also changes the string by value to find the response.
check_http_response_string: Sends HTTP requests to backend, expects a 200 OK response and a given string in the HTML with a timeout of 5 secs. Also changes the string by value to find the response.
check_pop: Sends POP connections to backend and expects a POP response OK with a timeout of 5 secs.
check_ldap: Sends LDAP queries to backend and expects LDAP binds with a timeout of 5 secs. Change -b (base search), -D (user to bind), -P (user password).
check_ldaps: Sends LDAPS queries to backends and expects LDAP bind with a timeout of 5 secs. Change -b (base search), -D (user to bind), -P (user password).
check_imap: Sends IMAP connections to backend and expects an IMAP response OK with a timeout of 5 secs.
check_sip: This check will test a SIP server/device for availability and response time.
check_ping: Sends 2 ICMP packets and checks to confirm the percentage of packets reaching to client.
check_common: Check the folder usr/lib/nagios/plugins, which includes more checks, get more info about the health check with –help.
Next step, Create a custom Farmguardian check.