당사의 HAProxy 통합 은 HAProxy 인스턴스에서 New Relic 플랫폼으로 인벤토리 및 메트릭을 수집하여 전송합니다. 여기서 HAProxy 서버, 프런트엔드 및 백엔드에 대한 주요 성능 메트릭을 집계하고 시각화할 수 있습니다.
통합을 설치하고 수집하는 데이터를 보려면 계속 읽으십시오.
호환성 및 요구 사항
통합은 HAProxy 버전 1.3 - 2.x와 호환됩니다.
통합을 설치하기 전에 다음 요구 사항을 충족하는지 확인하십시오.
HAProxy 통계 페이지가 활성화되어 액세스할 수 있습니다.
HAProxy가 Kubernetes 또는 Amazon ECS에서 실행되고 있지 않으면 HAProxy를 실행하는 호스트에 인프라 에이전트를 설치 해야 합니다. 그렇지 않으면:
빠른 시작
HAProxy 인스턴스를 신속하게 계측하고 설치 안내를 통해 원격 측정 데이터를 보내십시오. 가이드 설치는 New Relic CLI 및 인프라 에이전트를 다운로드하고 설치하는 사용자 환경에 대한 맞춤형 CLI 명령을 생성합니다.
시작할 준비가 되셨습니까? 이 버튼 중 하나를 클릭하여 사용해 보십시오.
가이드 설치는 인프라 에이전트를 사용하여 HAProxy 통합을 설정합니다. 뿐만 아니라 사용자 환경에서 실행 중인 다른 애플리케이션 및 로그 소스를 검색한 다음 계측해야 할 항목을 추천합니다.
안내 설치는 대부분의 설정에서 작동합니다. 그러나 요구 사항에 적합하지 않은 경우 아래에서 다른 방법을 찾아 HAProxy 인스턴스 모니터링을 시작할 수 있습니다.
설치 및 활성화
HAProxy 통합을 설치하려면 환경에 대한 지침을 따르십시오.
' '
추가 참고 사항:
- 고급: 통합은 패키지 관리자 외부에 설치할 수 있도록 tarball 형식 으로도 제공됩니다.
- 호스트 내 통합은 자동으로 업데이트되지 않습니다. 최상의 결과를 얻으 려면 통합 패키지 및 인프라 에이전트 를 정기적으로 업데이트하십시오.
이 문서가 설치하는데 도움이 되셨나요?
통합 구성
설치 방법에 따라 통합을 구성하는 여러 가지 방법이 있습니다.
- Kubernetes를 통해 활성화된 경우 Kubernetes에서 실행 중인 서비스 모니터링 을 참조하세요.
- Amazon ECS를 통해 활성화된 경우 ECS에서 실행 중인 서비스 모니터링 을 참조하십시오.
- 호스트에 설치된 경우 통합의 YAML 구성 파일
haproxy-config.yml
에서 구성을 편집합니다.
통합의 YAML 형식 구성은 필수 로그인 자격 증명을 배치하고 데이터 수집 방법을 구성할 수 있는 곳입니다. 변경하는 옵션은 설정 및 기본 설정에 따라 다릅니다.
구성 파일에는 interval
, timeout
, inventory_source
와 같은 모든 통합에 적용할 수 있는 공통 설정이 있습니다. 이러한 공통 설정에 대한 모든 내용을 읽으려면 구성 형식 문서를 참조하십시오.
레거시 구성/정의 파일을 계속 사용하고 있다면 온호스트 통합 표준 구성 형식 을 참조하십시오.
HAProxy와 관련된 특정 설정은 구성 파일의 env
섹션을 사용하여 정의됩니다. 이러한 설정은 HAProxy 인스턴스에 대한 연결과 기타 보안 설정 및 기능을 제어합니다.
HAProxy 인스턴스 설정
HAProxy 통합은 메트릭( M ) 및 인벤토리( I ) 정보를 모두 수집합니다. 표에서 각 컬렉션에 사용할 수 있는 설정에 대해 적용 대상 열을 사용합니다.
' ' ' ' ' ' ' ' ' '
환경 | 설명 | 기본값 | 적용 대상 |
---|---|---|---|
STATS_URL | HAProxy 통계 페이지를 가리키는 URL입니다. | 해당 없음 | 미 |
사용자 이름 | HAProxy 연결을 위한 사용자 이름입니다. | 해당 없음 | 미 |
비밀번호 | 지정된 사용자의 비밀번호입니다. | 해당 없음 | 미 |
HA_PROXY_CLUSTER_NAME | 모니터링 중인 클러스터를 고유하게 식별하기 위한 사용자 정의 이름입니다. 필수 . | 해당 없음 | 미 |
측정항목 | 측정항목 전용 수집을 활성화하려면 | 잘못된 | |
목록 | 인벤토리 전용 컬렉션을 활성화하려면 | 잘못된 |
이러한 설정의 값은 다음과 같은 방식으로 정의할 수 있습니다.
- 구성 파일에 직접 값을 추가합니다.
{{}}
표기법을 사용하여 환경 변수의 값을 바꿉니다. 이를 위해서는 인프라 에이전트 버전 1.14.0 이상이 필요합니다. 자세한 내용은 여기를 참조하거나 아래 예를 참조하십시오.- 비밀 관리를 사용하여 암호와 같은 민감한 정보가 구성 파일의 일반 텍스트로 노출되지 않도록 보호하십시오. 자세한 내용은 비밀 관리 를 참조하십시오.
라벨/맞춤 속성
레이블을 사용하여 측정항목을 꾸밀 수도 있습니다. 레이블을 사용하면 메트릭에 키/값 쌍 속성을 추가할 수 있습니다. 레이블을 사용하여 메트릭을 쿼리, 필터링 또는 그룹화할 수 있습니다.
기본 샘플 구성 파일에는 레이블의 예가 포함되어 있지만 원하는 새 레이블을 제거, 수정 또는 추가할 수 있습니다.
labels: env: production role: load_balancer
구성 예
데이터 찾기 및 사용
이 통합의 데이터는 전용 New Relic 대시보드 에 보고됩니다.
메트릭은 다음 이벤트 유형 에 연결됩니다.
HAProxyBackendSample
HAProxyFrontendSample
HAProxyServerSample
문제 해결을 위해 이 데이터를 쿼리 하거나 사용자 지정 차트 및 대시보드를 만들 수 있습니다.
데이터를 찾고 사용하는 방법에 대한 자세한 내용은 통합 데이터 이해 를 참조하십시오.
측정항목 데이터
HAProxy 통합은 다음 메트릭 데이터 속성을 수집합니다. 각 측정항목 이름에는 backend.
, frontend.
또는 server.
와 같은 카테고리 표시기와 마침표가 접두사로 붙습니다.
HAProxy 백엔드 샘플 측정항목
다음 속성은 HAProxyBackendSample
이벤트 유형에 연결됩니다.
미터법 | 설명 |
---|---|
| 활성 서버의 수입니다. |
| 1024개의 마지막 요청에 대한 평균 연결 시간(밀리초)입니다. |
| 1024개의 마지막 요청에 대한 평균 대기열 시간(밀리초)입니다. |
| 1024개의 마지막 요청에 대한 평균 응답 시간(밀리초)입니다. |
| 1024개의 마지막 요청에 대한 평균 총 세션 시간(밀리초)입니다. |
| 백업 서버의 수입니다. |
| 초당 수신된 바이트입니다. |
| 초당 전송된 바이트입니다. |
| 초당 HTTP 압축기를 우회한 바이트 수입니다. |
| 초당 백엔드 서버에 연결하는 동안 오류가 발생한 요청 수입니다. |
| 초당 서버 연결을 재시도한 횟수입니다. |
| 쿠키의 이름입니다. |
| 서버가 할당되지 않은 현재 대기 중인 요청입니다. |
| 현재 세션 수입니다. |
| 초당 클라이언트가 중단한 데이터 전송 수입니다. |
| 초당 서버에서 중단된 데이터 전송 수입니다. |
| 총 다운타임(초)입니다. |
| 초당 1xx 코드의 HTTP 응답. |
| 초당 2xx 코드의 HTTP 응답. |
| 초당 3xx 코드의 HTTP 응답. |
| 초당 4xx 코드의 HTTP 응답. |
| 초당 5xx 코드의 HTTP 응답. |
| 초당 다른 코드(프로토콜 오류)가 있는 HTTP 응답. |
| 초당 HTTP 요청. |
| 압축기에서 초당 내보낸 HTTP 응답 바이트 수입니다. |
| 초당 압축기에 공급되는 HTTP 응답 바이트 수입니다. |
| 초당 압축된 HTTP 응답 수입니다. |
| 차단된 초당 요청 수입니다. |
| 서버가 할당되지 않은 최대 대기열 요청입니다. |
| 최대 세션 수입니다. |
| 초당 최대 새 세션 수입니다. |
| 프록시 모드. 옵션: tcp, http, health, unknown. |
| 프록시의 이름입니다. |
| 요청이 초당 다른 서버로 재전송된 횟수입니다. |
| 초당 요청 거부된 bytcp-request 연결 규칙입니다. |
| 초당 응답 오류입니다. |
| 거부된 요청은 초당 bytcp-request 세션 규칙입니다. |
| 새 세션을 위해 또는 다시 디스패치할 때 초당 서버가 선택된 횟수입니다. |
| 초당 생성된 세션입니다. |
| 상태. 옵션: UP, DOWN, NOLB, MAINT, MAINT(경유), MAINT(분해능). |
| 백엔드에 할당된 마지막 세션 이후 경과된 시간(초)입니다. |
| 마지막 UP<->DOWN 전환 이후 경과된 시간(초)입니다. |
| 백엔드의 총 중량입니다. |
| 백엔드 유형입니다. |
| 초당 UP->DOWN 전환 수입니다. |
HAProxy 프런트엔드 샘플 측정항목
다음 속성은 HAProxyFrontendSample
이벤트 유형에 연결됩니다.
미터법 | 설명 |
---|---|
| 초당 수신된 바이트 수입니다. |
| 초당 보낸 바이트 수입니다. |
| 초당 연결 수입니다. |
| 현재 세션 수입니다. |
| 초당 1xx 코드의 HTTP 응답. |
| 초당 2xx 코드의 HTTP 응답. |
| 초당 3xx 코드의 HTTP 응답. |
| 초당 4xx 코드의 HTTP 응답. |
| 초당 5xx 코드의 HTTP 응답. |
| 다른 코드가 포함된 HTTP 응답(프로토콜 오류). |
| 관찰된 초당 최대 HTTP 요청 수입니다. |
| 초당 HTTP 요청. |
| 차단된 초당 요청 수입니다. |
| 최대 연결 수. |
| 최대 세션 수입니다. |
| 초당 최대 새 세션 수입니다. |
| 프록시 모드. tcp, http, health, unknown 중 하나입니다. |
| 프록시의 이름입니다. |
| 초당 요청 오류입니다. |
| 초당 보안 문제로 인해 요청이 거부되었습니다. |
| 초당 요청 거부된 bytcp-request 연결 규칙입니다. |
| 거부된 요청은 초당 bytcp-request 세션 규칙입니다. |
| 초당 보안 문제로 인해 응답이 거부되었습니다. |
| 서비스의 이름입니다. |
| 초당 생성된 세션입니다. |
| 프런트엔드의 상태입니다. 옵션: UP, DOWN, NOLB, MAINT, MAINT(경유), MAINT(분해능). |
| 프론트엔드의 유형. |
HAProxy 서버 샘플 메트릭
다음 속성은 HAProxyServerSample
이벤트 유형에 연결됩니다.
미터법 | 설명 |
---|---|
| 마지막 에이전트 확인 내용 또는 텍스트 오류입니다. |
| 마지막 확인을 완료하는 데 걸린 시간(밀리초)입니다. |
| 에이전트의 상태입니다. |
| 사람이 읽을 수 있는 |
| 1024개의 마지막 요청에 대한 평균 연결 시간(밀리초)입니다. |
| 1024개의 마지막 요청에 대한 평균 대기열 시간(밀리초)입니다. |
| 1024개의 마지막 요청에 대한 평균 응답 시간(밀리초)입니다. |
| 1024개의 마지막 요청에 대한 평균 총 세션 시간(밀리초)입니다. |
| 초당 수신된 바이트입니다. |
| 초당 전송된 바이트입니다. |
| 사람이 읽을 수 있는 |
| 초당 백엔드 서버에 연결하는 동안 오류가 발생한 요청 수입니다. |
| 초당 서버 연결을 재시도한 횟수입니다. |
| 서버의 쿠키 값입니다. |
| 현재 세션 수입니다. |
| 초당 클라이언트가 중단한 데이터 전송 수입니다. |
| 초당 서버에서 중단된 데이터 전송 수입니다. |
| 총 다운타임(초)입니다. |
| 초당 실패한 검사 수입니다. |
| 상태 확인 세부정보에 실패했습니다. |
| 마지막 상태 확인 내용 또는 텍스트 오류입니다. |
| 마지막 상태 확인을 완료하는 데 걸린 시간(밀리초)입니다. |
| 상태 확인 상태입니다. |
| 초당 1xx 코드의 HTTP 응답. |
| 초당 2xx 코드의 HTTP 응답. |
| 초당 3xx 코드의 HTTP 응답. |
| 초당 4xx 코드의 HTTP 응답. |
| 초당 5xx 코드의 HTTP 응답. |
| 다른 코드가 포함된 HTTP 응답(프로토콜 오류). |
| 서버가 활성 상태인지 여부입니다. |
| 서버가 백업인지 여부. |
| 가능한 경우 레이어 5-7 코드. |
| 최대 대기 요청 수. |
| 최대 세션 수입니다. |
| 초당 최대 세션 수. |
| 프록시 모드. tcp, http, health, unknown 중 하나입니다. |
| 프록시의 이름입니다. |
| 현재 대기 중인 요청입니다. |
| 요청이 초당 다른 서버로 재전송된 횟수입니다. |
| 초당 보안 문제로 인해 요청이 거부되었습니다. |
| 초당 응답 오류입니다. |
| 초당 보안 문제로 인해 응답이 거부되었습니다. |
| 서버 ID입니다. |
| 새 세션을 위해 또는 다시 디스패치할 때 초당 서버가 선택된 횟수입니다. |
| 서버 무게. |
| 서비스의 이름입니다. |
| 초당 세션. |
| 서버의 상태입니다. 옵션: UP, DOWN, NOLB, MAINT, MAINT(경유), MAINT(분해능). |
| 느린 시작이 활성화된 경우 서버의 스로틀 백분율입니다. 또는 느린 시작이 아니면 값이 없습니다. |
| 백엔드에 할당된 마지막 세션 이후 경과된 시간(초)입니다. |
| 마지막 UP<->DOWN 전환 이후 경과된 시간(초)입니다. |
| 서버 유형입니다. |
| 초당 UP->DOWN 전환 수입니다. |
인벤토리 데이터
HAProxy 통합은 HAProxy 인스턴스의 구성 매개변수를 캡처합니다. 데이터는 config/haproxy 소스 아래의 인프라 인벤토리 페이지 에서 사용할 수 있습니다. 인벤토리 데이터에 대한 자세한 내용은 통합 데이터 이해 를 참조하십시오.
통합은 다음 구성 매개변수에 대한 데이터를 캡처합니다.
백엔드 인벤토리
이름 | 설명 |
---|---|
| 백엔드 프록시 ID입니다. |
| 백엔드 프로세스 ID입니다. |
| 백엔드 세션 제한입니다. |
프런트엔드 인벤토리
이름 | 설명 |
---|---|
| 프런트엔드 프록시 ID입니다. |
| 프론트엔드 프로세스 ID입니다. |
| 초당 새 세션 제한. |
| 프런트엔드 세션 제한입니다. |
서버 인벤토리
이름 | 설명 |
---|---|
| 백엔드 프록시 ID입니다. |
| 서버 프로세스 ID입니다. |
| 구성된 최대 대기열입니다. |
| 서버 ID입니다. |
| 서버 세션 제한. |
소스 코드 확인
이 통합은 오픈 소스 소프트웨어입니다. 즉 , 소스 코드를 탐색하고 개선 사항을 보내거나 자신만의 포크를 만들어 빌드할 수 있습니다.