The Farmguardian section lists all the available health checks in the load balancer. It also includes a short description of each 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 action 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. Open the farmguardian form and fill it with the necessary information.
Delete. Removes the selected farmguardian check.
These are the descriptions of the Farmguardian table:
Name. A descriptive name of the Farmguardian check.
Description. This field contains some descriptions of certain health checks.
Command. Checks commands and parameters to be executed on every interval against each backend of the farm.
Farms. Farms and services that use a certain check.
Actions. Use these actions to manage the Farmguardian:
- Edit. It opens the configuration screen of the farmguardian. It’s only available for custom farmguardian checks.
- Delete. Deletes a selected farmguardian check. If the check is assigned on any service, then a notification will ask you if force the deletion. You’ll only use it for custom farmguardian checks.
Pre-configured health checks
Use the following built-in health checks for your farm.
check_redis: Check the master Role for redis server, if master role is not present then the backend will be marked in DOWN status
check_tcp: Send TCP connection to backend.
check_udp: Send UDP connection to backend and check if the port is opened.
check_http: Send HTTP request to backend and expect a 200 OK response with a timeout of 5 secs.
check_https: Send HTTPS request to backend and expect a 200 OK response with a timeout of 5 secs.
check_smtp: Send SMTP connection to backend and expect an SMTP response OK with a timeout of 5 secs.
check_https_response_string: Send HTTPS request to backend and expect a response of 200 OK and a given string in the HTML with a timeout of 5 secs. Change string by value to find in the response.
check_http_response_string: Send HTTP request to backend, expect a 200 OK response and a given string in the HTML with a timeout of 5 secs. Change string by value to find in the response.
check_pop: Send POP connection to backend and expect a POP response OK with a timeout of 5 secs.
check_ldap: Send LDAP query to backend and expect LDAP bind with a timeout of 5 secs. Change -b (base search), -D (user to bind), -P (user password).
check_ldaps: Send LDAPS query to backend and expect LDAP bind with a timeout of 5 secs. Change -b (base search), -D (user to bind), -P (user password).
check_imap: Send IMAP connection to backend and expect an IMAP response OK with a timeout of 5 secs.
check_top: Send TCP connection to backend
check_sip: This check will test a SIP server/device for availability and response time.
check_ping: Send 2 ICMP packets and check that the 100% reaches the host.
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.