나는 설치했다나기오스 4.0.1내 CentOS 6.5 서버에서. 포트 80을 사용하도록 Node.js를 설정했으므로 httpd
포트 3000에서 수신 대기하도록 Apache() 서비스를 구성했습니다.
Nagios 콘솔을 열고 포트 3000에서 HTTP를 사용하면 모든 것이 괜찮아 보입니다. 문제는 Nagios 서비스 상태에 있습니다. 이는 내 HTTP를 설명과 함께 "Critical"로 표시합니다.
연결이 거부되었습니다. HTTP 중요 - TCP 소켓을 열 수 없습니다.
이 문제를 해결하는 방법에 대한 아이디어가 있습니까?
답변1
Nagios의 플러그인은 실제로 Nagios가 그토록 강력한 이유에 대한 비밀입니다. HTTP 검사를 수행하는 검사는 다음과 같습니다.
$ /usr/lib64/nagios/plugins/check_http
check_http: Could not parse arguments
Usage:
check_http -H <vhost> | -I <IP-address> [-u <uri>] [-p <port>]
[-w <warn time>] [-c <critical time>] [-t <timeout>] [-L] [-a auth]
[-b proxy_auth] [-f <ok|warning|critcal|follow|sticky|stickyport>]
[-e <expect>] [-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] [--sni] [-C <age>] [-T <content-type>]
[-j method]
-p <port>
지정되지 않은 경우 기본 포트 80을 재정의할 수 있는 스위치가 있습니다 .
예
$ /usr/lib64/nagios/plugins/check_http -H fan
HTTP OK: HTTP/1.1 200 OK - 5233 bytes in 0.025 second response time |time=0.024596s;;;0.000000 size=5233B;;;0
포트를 변경하거나 명시적으로 변경하려면 다음을 수행하세요.
$ /usr/lib64/nagios/plugins/check_http -H fan -p 80
HTTP OK: HTTP/1.1 200 OK - 5233 bytes in 0.003 second response time |time=0.002890s;;;0.000000 size=5233B;;;0
Nagios에서 기본 검사를 사용하는 경우 기본 포트 80 대신 포트 3000을 호출하려면 고유한 사용자 정의 서비스 검사를 만들어야 할 수도 있습니다.
맞춤 서비스 검사
추가 매개변수(이 경우 사용할 TCP 포트)가 필요하도록 HTTP 서비스 검사를 생성 및/또는 수정할 수 있습니다.
자세한 내용은 다음 기사에서 자세히 설명합니다.check_http 및 check_bigip_pool을 사용하여 웹사이트를 모니터링하세요..
예
발췌
아래는 명령을 정의하는 방법입니다. 차별화하기 위해 저는 이러한 명령을 서로 다른 구성 파일에 정의하고 각 명령 이름에 서로 다른 정의를 부여하는 것을 선호합니다. 이렇게 하면 포트에 액세스할 수 없는 경우 전체 웹 애플리케이션이 다운되었다고 가정하지 않고도 해당 포트의 문제를 해결할 수 있습니다.
명령 정의 > (nagios_host:/path_to_nagios/etc/objects/commands/cmd_http.cfg):
define command{ command_name check_webstore command_line $USER1$/check_http -H $ARG1$ -u $ARG2$ -p $ARG3$ }