블로그 | NGINX

NGINX 모니터링

NGINX-F5-수평-검정-유형-RGB의 일부
F5 NGINX 썸네일
F5 NGINX
2018년 1월 8일 게시

NGINX를 위한 모니터링 도구를 설정하는 것은 웹사이트 운영을 유지하는 데 중요한 부분입니다. 적절한 NGINX 모니터링을 통해 기본 애플리케이션 성능에 대한 많은 유용한 정보를 얻을 수 있습니다. 이 작업에 적합한 모니터링 시스템은 꽤 많습니다. 그러나 첫 번째 단계는 NGINX에서 메트릭 수집을 활성화하는 것입니다.

stub_status 모듈 사용

NGINX 오픈 소스 모듈에는 ngx_http_stub_status_module (또는 간단히 stub_status )이라는 모듈이 있는데, 이 모듈은 NGINX 활동에 대한 몇 가지 중요한 지표를 제공합니다.

NGINX 빌드에 stub_status 모듈이 있는지 확인하려면 nginx -V 를 실행하세요.

$ nginx -V 2>&1 | grep --color -- --with-http_stub_status_module

우리의 모든 NGINX 빌드 에는 지원되는 모든 플랫폼stub_status 모듈이 포함되어 있습니다.

NGINX 빌드에 stub_status 모듈이 포함되지 않은 경우 소스에서 다시 빌드하고 구성 스크립트에 --with-http_stub_status_module 매개변수를 포함해야 합니다.

다음 단계로, location 블록에 stub_status 지시문을 포함하여 NGINX 구성에서 모듈을 활성화합니다. 기존 서버 구성에 언제든지 블록을 추가할 수 있습니다. 또는 다음과 같이 stub_status 지시문에 대한 단일 특수 위치가 있는 별도의 서버 블록을 추가합니다.

서버 {
청취 127.0.0.1:80;
서버 이름 127.0.0.1;

위치 /nginx_상태 {
스텁_상태;
}
}

stub_status 지시어에 적합한 서버 블록은 때때로 기본 구성 파일( nginx.conf ) 외부에서 발견됩니다. 해당 파일에서 적합한 블록을 찾을 수 없다면 일반적으로 nginx.conf포함되어 있는 추가 구성 파일을 검색하세요.

또한 위치 또는 서버 블록에 허용거부 지침을 포함하는 등 권한이 있는 사용자만 메트릭에 액세스하도록 허용하는 것이 좋습니다.

stub_status 모듈을 구성한 후에는 NGINX 구성을 다시 로드하는 것을 잊지 마세요(예: service nginx reload 명령 사용). NGINX 제어 신호에 대한 자세한 내용은 여기에서 확인할 수 있습니다.

stub_status 메트릭을 표시하려면 curl 쿼리를 만듭니다. 위에 표시된 구성에는 다음이 적합합니다.

$ curl http://127.0.0.1/nginx_status 활성 연결: 2 서버는 처리된 요청을 수락합니다 841845 841845 1631067 읽기: 0 쓰기: 1 대기 중: 1

이 방법이 효과가 없다면 /nginx_status 에 대한 요청이 어디로 라우팅 되는지 확인하세요. 많은 경우, 또 다른 서버 블록으로 인해 stub_status 메트릭에 액세스할 수 없습니다. 이러한 인스턴스 전체 NGINX 메트릭에 대해 자세히 알아보려면 참조 문서를 확인하세요.

NGINX에서 stub_status 모듈을 활성화하고 작동시키면 원하는 모니터링 시스템의 설치 및 구성을 진행할 수 있습니다.

로그 파일 및 syslog

NGINX 액세스 로그오류 로그 에는 메트릭 수집에 적합한 유용한 정보가 많이 포함되어 있습니다. NGINX 변수를 사용하면 액세스 로그 형식을 완전히 사용자 정의할 수 있습니다. 특정 모니터링 도구는 메트릭 수집을 위해 NGINX 로그 파일을 활용할 수 있습니다.

다양한 성능 및 보안 요구 사항을 충족하려면 NGINX syslog 기능을 사용하는 것을 고려하세요. 로그 파일은 디스크에 기록되는 반면, syslog는 NGINX가 네트워크 프로토콜을 통해 로그 데이터를 전송할 수 있도록 해줍니다. 예를 들어, 다양한 NGINX 인스턴스에서 모든 로그 데이터를 수집하는 전용 Linux 시스템을 설정할 수 있습니다.

로깅에 대한 자세한 내용은 NGINX Plus 관리자 가이드 를 참조하세요.

Amplify로 NGINX 모니터링

NGINX 모니터링을 위한 기본 도구가 있습니다. NGINX Amplify 라고 하며, 최대 5개의 서버를 무료로 모니터링하는 데 사용할 수 있는 SaaS 도구입니다(대규모 서버의 경우 구독 가능).

NGINX Amplify를 시작하는 것은 쉽습니다. 10분 이내에 모든 주요 NGINX 지표에 대한 즉시 사용 가능한 그래프를 얻을 수 있습니다. NGINX Amplify는 stub_status 와 액세스 로그의 메트릭을 자동으로 활용하며, 다양한 OS 정보도 수집할 수 있습니다.

NGINX Amplify를 사용하면 NGINX 성능을 시각화하고 OS, PHP‑FPM, Docker 컨테이너 등을 모니터링할 수 있습니다. Amplify의 고유한 기능 중 하나는 NGINX 구성을 위한 정적 분석기로, 구성을 보다 안전하고 효율적으로 만들기 위한 권장 사항을 제공합니다.

NGINX Amplify에 대해 자세히 알아보고, 무료 로 사용해보세요.

NGINX 모니터링을 위한 Amplify 화면
NGINX Amplify는 핵심 모니터링 도구입니다.

NGINX Plus의 추가 API 모듈

NGINX Plus는 전문 API 모듈을 통해 성능 측정 항목을 얻는 더 나은 방법을 제공합니다.

API 모듈은 부하 분산 및 가상 서버 통계에 중점을 두고 세부적인 측정 항목을 제공합니다. 예를 들어, 모든 HTTP 상태 코드의 분석( 1xx , 2xx , 3xx , 4xx , 5xx )는 서버 블록을 위해 제시됩니다. HTTPTCP/UDP 업스트림 서버에 대한 상태 정보를 사용할 수 있습니다. 캐시 메트릭에는 각 캐시 영역에 대한 적중 및 미스가 포함됩니다.

API를 사용하면 확장된 메트릭 세트를 수집하는 것 외에도 HTTPTCP/UDP 업스트림 서버 그룹을 재구성하고 구성을 다시 로드하거나 NGINX Plus를 다시 시작하지 않고도 키-값 변수를 관리할 수 있습니다.

NGINX Plus에는 추가적인 측정 항목을 활용하는 통합 대시보드 도 함께 제공됩니다. 추가 메트릭은 NGINX Amplify에서도 사용할 수 있습니다.

기타 모니터링 솔루션

다른 모니터링 제품도 NGINX 메트릭을 수집하고 제시할 수 있습니다. 아래 링크에서는 가장 일반적인 통합 시나리오를 설명합니다.


"이 블로그 게시물에는 더 이상 사용할 수 없거나 더 이상 지원되지 않는 제품이 참조될 수 있습니다. 사용 가능한 F5 NGINX 제품과 솔루션에 대한 최신 정보를 보려면 NGINX 제품군을 살펴보세요. NGINX는 이제 F5의 일부가 되었습니다. 이전의 모든 NGINX.com 링크는 F5.com의 유사한 NGINX 콘텐츠로 리디렉션됩니다."