기본적으로 제 베네트 어플라이언스는 백엔드 또는 실제 서버에 대한 간단한 상태 확인을 실행하지만 때때로 이러한 확인만으로는 백엔드가 제대로 작동하는지 여부를 판단하기에 충분하지 않습니다. 따라서 어플라이언스는 농장 가디언.
의 주요 업무 농장 가디언 응용 프로그램의 백엔드에 대한 고급 모니터링 도구로 작동하는 것입니다. 그래서, 농장 가디언 팜 구성을 읽고 백엔드 목록을 가져오며 백엔드 상태를 확인하는 플러그인의 도움을 받습니다. 또한 Farm Guardian은 지정된 팜의 백엔드 상태를 업데이트하여 로드 밸런서가 해당 백엔드로 트래픽을 보내야 하는지 여부를 결정합니다.
이 섹션에서는 구성하는 방법을 배웁니다. 농장 가디언 체크 무늬. 두 탭을 모두 살펴보겠습니다. 글로벌 및 농장 탭.
전역 설정
에 글로벌 섹션에 특정 설정이 있습니다. 농장 가디언 아래 이미지와 같이 상태를 확인합니다.
수표가 시스템에 미리 로드되어 있으면 이 탭의 필드를 편집할 수 없습니다. 상태 확인을 수정하려면 새 농장 가디언, 활성화 농장 가디언 복사 옵션을 선택하고 새 옵션을 수정합니다.
이름. 현재 Farm Guardian 수표의 이 식별 이름은 편집할 수 없습니다.
명령. 백엔드 상태를 확인하기 위해 실행되는 명령을 설정합니다.
시간 초과. 백엔드가 응답을 다시 보내는 데 걸리는 최대 시간입니다. 단위(초).
간격. 모든 백엔드에 대한 상태 확인 일괄 처리 사이의 시간입니다. 각 간격마다 Farmguardian 검사가 중지되고 다시 시작됩니다. 따라서 모든 백엔드를 확인할 수 있을 만큼 충분히 높아야 합니다( timeout * nº backends +1 ).
설명:. 이 필드에는 Farmguardian 검사에 대한 간략한 설명이 들어 있습니다.
연결 끊기. 이 옵션이 활성화되면 다운된 감지된 백엔드의 현재 연결이 플러시되어 사용 가능한 백엔드에 즉시 다시 연결됩니다. 비활성화하면 클라이언트의 연결을 끊지 않고 현재 연결이 소모됩니다.
로그 사용. 각 Farmguardian 검사의 로그를 활성화하거나 비활성화합니다. 로그를 비활성화하면 백엔드 상태 변경 사항만 로그 파일에 표시됩니다.
상태 확인 구성
사용 가능한 모든 농장 가디언 플러그인은 디렉토리 아래에서 찾을 수 있습니다 / usr / local / zevenet / app / libexec / 로드 밸런서 내부
농장 가디언 플러그인을 사용하여 사용자 지정 옵션을 사용하여 특정 실제 서버가 예상대로 작동하는지 감지하도록 고급 상태 검사를 구성합니다. 각 프로토콜, 서비스 또는 응용 프로그램에 대한 많은 상태 확인이 있습니다. 가장 중요한 플러그인은 아래에 설명되어 있습니다.
check_ftp. 이 플러그인은 지정된 호스트와의 FTP 연결을 테스트합니다.
Usage: check_ftp -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_fping:이 플러그인은 fping 명령을 사용하여 지정된 호스트에 대해 빠르게 검사를 수행합니다.
Usage: check_fping <host_address> -w limit -c limit [-b size] [-n number] [-T number] [-i number]
check_http: 이 플러그인은 지정된 호스트에서 HTTP 서비스를 테스트합니다. 일반(HTTP) 및 보안(HTTPS) 프로토콜을 테스트하고, 리디렉션을 따르고, 문자열 및 정규식을 검색하고, 연결 시간을 확인하고, 인증서 만료 시간, HTTP 반환 코드 등에 대해 보고할 수 있습니다.
Usage: check_http -H <vhost> | -I <IP-address> [-u <uri>] [-p <port>] [-J <client certificate file>] [-K <private key>] [-w <warn time>] [-c <critical time>] [-t <timeout>] [-L] [-E] [-a auth] [-b proxy_auth] [-f <ok|warning|critcal|follow|sticky|stickyport>] [-e <expect>] [-d string] [-s string] [-l] [-r <regex> | -R <case-insensitive regex>] [-P string] [-m <min_pg_size>:<max_pg_size>] [-4|-6] [-N] [-M <age>] [-A string] [-k string] [-S <version>] [--sni] [-C <warn_age>[,<crit_age>]] [-T <content-type>] [-j method]
check_imap:이 플러그인은 지정된 호스트와의 IMAP 연결을 테스트합니다.
Usage: check_imap -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_ldap:이 플러그인은 LDAP 서비스를 테스트합니다. 주어진 검색으로 테스트 할 수 있습니다.
Usage: check_ldap -H <host> -b <base_dn> [-p <port>] [-a <attr>] [-D <binddn>] [-P <password>] [-w <warn_time>] [-c <crit_time>] [-t timeout] [-2|-3] [-4|-6]
check_ldaps:이 플러그인은 LDAPS 서비스를 테스트합니다. 주어진 검색으로 테스트 할 수 있습니다.
Usage: check_ldaps -H <host> -b <base_dn> [-p <port>] [-a <attr>] [-D <binddn>] [-P <password>] [-w <warn_time>] [-c <crit_time>] [-t timeout] [-2|-3] [-4|-6]
check_mysql:이 플러그인은 MySQL 서버에 대한 연결을 테스트합니다.
Usage: check_mysql [-d database] [-H host] [-P port] [-s socket] [-u user] [-p password] [-S] [-l] [-a cert] [-k key] [-C ca-cert] [-D ca-dir] [-L ciphers] [-f optfile] [-g group]
check_mysql_query:이 플러그인은 임계 값 수준에 대해 쿼리 결과를 확인합니다.
Usage: check_mysql_query -q SQL_query [-w warn] [-c crit] [-H host] [-P port] [-s socket] [-d database] [-u user] [-p password] [-f optfile] [-g group]
check_pgsql: PostgreSQL 데이터베이스가 연결을 수락하는지 여부를 테스트합니다.
Usage: check_pgsql [-H <host>] [-P <port>] [-c <critical time>] [-w <warning time>] [-t <timeout>] [-d <database>] [-l <logname>] [-p <password>] [-q <query>] [-C <critical query range>] [-W <warning query range>]
check_pop:이 플러그인은 지정된 호스트와의 POP 연결을 테스트합니다.
Usage: check_pop -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_radius: RADIUS 서버가 연결을 수락하는지 확인합니다.
Usage: check_radius -H host -F config_file -u username -p password [-P port] [-t timeout] [-r retries] [-e expect] [-n nas-id] [-N nas-ip-addr]
check_simap:이 플러그인은 지정된 호스트와의 보안 IMAP 연결을 테스트합니다.
Usage: check_simap -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_smtp:이 플러그인은 호스트와의 SMTP 연결을 시도합니다.
Usage: check_smtp -H host [-p port] [-4|-6] [-e expect] [-C command] [-R response] [-f from addr] [-A authtype -U authuser -P authpass] [-w warn] [-c crit] [-t timeout] [-q] [-F fqdn] [-S] [-D warn days cert expire[,crit days cert expire]] [-v]
check_snmp: 원격 시스템의 상태를 확인하고 SNMP를 통해 시스템 정보를 얻습니다.
Usage: check_snmp -H <ip_address> -o <OID> [-w warn_range] [-c crit_range] [-C community] [-s string] [-r regex] [-R regexi] [-t timeout] [-e retries] [-l label] [-u units] [-p port-number] [-d delimiter] [-D output-delimiter] [-m miblist] [-P snmp version] [-N context] [-L seclevel] [-U secname] [-a authproto] [-A authpasswd] [-x privproto] [-X privpasswd] [-4|6]
check_spop:이 플러그인은 지정된 호스트와의 보안 POP 연결을 테스트합니다.
Usage: check_spop -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_ssh: 지정된 서버 및 포트에서 SSH 서버에 연결을 시도하십시오.
Usage: check_ssh [-4|-6] [-t <timeout>] [-r <remote version>] [-p <port>] <host>
check_ssmtp:이 플러그인은 지정된 호스트와 SSMTP 연결을 테스트합니다.
Usage: check_ssmtp -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
check_tcp:이 플러그인은 지정된 호스트와의 TCP 연결을 테스트합니다.
Usage: check_tcp -H host -p port [-w <warning time>] [-c <critical time>] [-s <send string>] [-e <expect string>] [-q <quit string>][-m <maximum bytes>] [-d <delay>] [-t <timeout seconds>] [-r <refuse state>] [-M <mismatch state>] [-v] [-4|-6] [-j] [-D <warn days cert expire>[,<crit days cert expire>]] [-S <use SSL>] [-E]
자세한 내용은 plugins 경로에서 다음 명령을 실행하십시오.
plugin_name --help
또한 농장 가디언 이 플러그인을 사용하여 백엔드의 상태를 확인하고 실행된 플러그인의 실행 오류 출력을 관리하여 다음과 같이 백엔드 상태를 결정합니다.
오류 출력 == 0 백엔드는 정상입니다> $? = 0
오류 출력 <> 0 백엔드가 정상이 아닙니다> $? <> 0
맞춤 플러그인
시스템 관리자는 이러한 플러그인을 완전히 프로그래밍할 수 있고 모든 프로토콜 또는 애플리케이션에 적용할 수 있으므로 구성할 수 있습니다.
이 예는 맞춤 플러그인을 보여줍니다. check_load.sh.
#!/bin/bash ### ###comments: ###snmp utils should be installed ###snmpd should be installed and configured in the backends ### MAXVALUE=4 COMMUNITY="public" EXECUTE=`snmpget -v 2c -c $COMMUNITY $1 .1.3.6.1.4.1.2021.10.1.3.1 |cut -d ':' -f2 | cut -d '.' -f1 | sed s/\ // | sed s/\"//` echo "SNMP CPU load check for $1 is $EXECUTE" # If the result is true, exit with 1; error; else exit = 0; OK if (( $EXECUTE >= $MAXVALUE )); then #error output; the server is overloaded and the load balancer isn’t going to send more connections exit 1 else #, not error; the server can accept more connections exit 0 fi
상수
인셀덤 공식 판매점인 농장 가디언 플러그인을 실행하면 다음과 같은 일부 상수 또는 토큰을 인수로 사용할 수 있습니다.
HOST. 농장 가디언 실제 서버 IP 주소로 이 상수를 수정합니다.
PORT. 농장 가디언 실제 서버 포트에서 이 상수를 수정하는 작업을 처리합니다.
이 상수는 각 플러그인에 사용됩니다. 농장 가디언 실제 매개변수를 사용하여 상태 확인을 실행하는 데 사용합니다.
농장
이 탭에는 이를 사용하는 농장 및 서비스 목록이 있습니다. 농장 가디언 건강 체크.
농장 및 서비스는 여기에서 할당하거나 제거할 수 있습니다. 농장 가디언 단일 화살표 아이콘 또는 이중 화살표가 있는 다중 선택을 사용하여 상태 확인을 통해 모든 팜을 활성화하거나 비활성화합니다.