기본적으로, 제 베네트 백엔드 또는 실제 서버에 대한 간단한 상태 확인을 실행하지만 때때로 이러한 확인만으로는 백엔드가 제대로 작동하는지 여부를 판별하기에 충분하지 않습니다. 이러한 이유로 ZEVENET은 농장 가디언.
의 주요 업무 농장 가디언 응용 프로그램의 백엔드에 대한 고급 모니터링 도구로 작동하는 것입니다. 그래서, 농장 가디언 팜 구성을 읽고 백엔드 목록을 가져오며 백엔드 상태를 확인하는 플러그인의 도움을 받습니다. 또한 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. 농장 가디언 실제 서버 포트에서 이 상수를 수정하는 작업을 처리합니다.
이 상수는 모든 플러그인에 사용할 수 있습니다. 농장 가디언 실제 매개변수가 있는 상태에서 상태 확인을 실행하는 데 사용합니다.
농장
이 탭에는 이를 사용하는 농장 및 서비스 목록이 있습니다. 농장 가디언 건강 체크.
농장 및 서비스는 여기에서 할당하거나 제거할 수 있습니다. 농장 가디언 단일 화살표 아이콘 또는 이중 화살표가 있는 다중 선택을 사용하여 상태 확인을 통해 모든 팜을 활성화하거나 비활성화합니다.