당사의 HAProxy 통합 은 HAProxy 인스턴스에서 New Relic 플랫폼으로 인벤토리 및 메트릭을 수집하여 전송합니다. 여기서 HAProxy 서버, 프런트엔드 및 백엔드에 대한 주요 성능 메트릭을 집계하고 시각화할 수 있습니다.
통합을 설치하고 수집하는 데이터를 보려면 계속 읽으십시오.
호환성 및 요구 사항
설치하기 전에 다음 요구 사항을 충족하는지 확인하십시오.
- New Relic 계정. 하나가 없습니까? 무료 가입! 신용 카드가 필요하지 않습니다.
- HAProxy 버전 1.3 - 2.x.
- HAProxy 통계 페이지가 활성화되어 액세스할 수 있습니다.
빠른 시작
Kubernetes 또는 ECS 환경에서 HAProxy를 실행하지 않는 경우 안내 설치를 권장합니다. 안내식 설치에서는 인프라 에이전트와 CLI를 사용하여 HAProxy 통합을 설정하고, 사용자 환경에서 실행 중인 다른 애플리케이션과 로그 소스를 검색한 다음 어떤 항목을 계측해야 하는지 추천합니다.
가이드 설치는 대부분의 설정에서 작동합니다. 그러나 필요에 맞지 않으면 아래에 다른 설치 옵션이 있습니다.
시작할 준비가 되셨습니까? 사용하는 데이터 센터 지역 에 따라 관련 버튼을 클릭합니다. 설치가 완료되면 이 설명서로 돌아와서 구성 옵션을 검토하십시오.
설치 및 활성화
가이드 설치를 사용하지 않는 경우 환경에 대한 지침을 따르십시오.
' '
통합 업데이트
이 통합은 자동으로 업데이트되지 않습니다. 최상의 결과를 얻으려면 통합 패키지 와 인프라 에이전트를 정기적으로 업데이트하십시오.
설치 후 작업
설치가 완료되면 구성 옵션을 설정할 수 있습니다. 통합이 작동하려면 일부 구성이 필요하고 일부는 선택 사항입니다.
통합 구성
ECS 또는 Kubernetes 통합을 통해 이 통합을 활성화한 경우 해당 문서를 참조하십시오.
통합의 YAML 형식 구성에서는 필수 로그인 자격 증명을 배치하고 데이터 수집 방법을 구성할 수 있습니다. 변경하는 옵션은 설정 및 기본 설정에 따라 다릅니다.
구성 파일에는 interval
, timeout
, inventory_source
와 같은 모든 통합에 적용할 수 있는 공통 설정이 있습니다. 이러한 공통 설정에 대한 모든 내용을 읽으려면 구성 형식 문서를 참조하십시오.
여전히 레거시 구성/정의 파일을 사용하고 있다면 온호스트 통합 표준 구성 형식을 참조하여 도움을 받으세요.
HAProxy와 관련된 특정 설정은 구성 파일의 env
섹션을 사용하여 정의됩니다. 이러한 설정은 HAProxy 인스턴스에 대한 연결과 기타 보안 설정 및 기능을 제어합니다.
HAProxy 구성 옵션
Apache 통합은 메트릭과 인벤토리 정보를 모두 수집합니다. 이 표는 각 구성 옵션이 적용되는 항목을 보여줍니다.
' ' ' ' ' ' ' ' ' '
환경 | 설명 | 기본값 | 적용 대상 |
---|---|---|---|
STATS_URL | HAProxy 통계 페이지를 가리키는 URL입니다. | 해당 없음 | 미 |
사용자 이름 | HAProxy 연결을 위한 사용자 이름입니다. | 해당 없음 | 미 |
비밀번호 | 지정된 사용자의 비밀번호입니다. | 해당 없음 | 미 |
HA_PROXY_CLUSTER_NAME | 모니터링 중인 클러스터를 고유하게 식별하기 위한 사용자 정의 이름입니다. 필수 . | 해당 없음 | 미 |
측정항목 | 측정항목 전용 수집을 활성화하려면 | 잘못된 | |
목록 | 인벤토리 전용 컬렉션을 활성화하려면 | 잘못된 |
이러한 설정의 값은 여러 가지 방법으로 정의할 수 있습니다.
- 구성 파일에 직접 값을 추가합니다(가장 일반적인 방법).
{{}}
표기법을 사용하여 환경 변수의 값을 바꿉니다. 이를 위해서는 인프라 에이전트 버전 1.14.0 이상이 필요합니다. 자세한 정보는 인프라 구성을 참조하거나 환경 변수 예제를 참조하십시오.- 비밀 관리 사용. 이를 사용하여 구성 파일에서 일반 텍스트로 노출되는 암호와 같은 민감한 정보를 보호하십시오. 자세한 내용은 암호 관리를 참조하세요.
라벨
레이블을 사용하여 메트릭을 추가로 꾸밀 수 있습니다. 라벨을 사용하면 측정항목에 속성(키/값 쌍)을 추가할 수 있으며 이를 사용하여 측정항목을 쿼리, 필터링 또는 그룹화할 수 있습니다.
기본 샘플 구성 파일에는 레이블의 예가 포함되어 있지만 필수가 아니므로 선택한 레이블을 제거, 수정 또는 추가할 수 있습니다.
labels: env: production role: load_balancer
구성 예
다음은 몇 가지 YAML 구성의 예입니다.
데이터 찾기 및 사용
이 통합의 데이터는 one.newrelic.com > Infrastructure > Third-party services > HAProxy 로 이동하여 찾을 수 있습니다.
메트릭은 다음 이벤트 유형 에 연결됩니다.
HAProxyBackendSample
HAProxyFrontendSample
HAProxyServerSample
문제 해결을 위해 이 데이터를 쿼리 하거나 사용자 지정 차트 및 대시보드를 만들 수 있습니다.
데이터를 찾고 사용하는 방법에 대한 자세한 내용은 통합 데이터 이해를 참조하십시오. 이 통합의 데이터는 전용 New Relic 대시보드 에 보고됩니다.
측정항목 데이터
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입니다. |
| 서버 세션 제한. |
소스 코드 확인
이 통합은 오픈 소스 소프트웨어입니다. 즉 , 소스 코드를 탐색하고 개선 사항을 보내거나 자신만의 포크를 만들어 빌드할 수 있습니다.