OpenTelemetry 사용하여 쿠버네티스 클러스터를 모니터링할 수 있습니다. OpenTelemetry는 텔레메트리 데이터를 수집하여 뉴렐릭으로 보내는 표준화된 방법을 제공합니다. 이 통합을 통해 지표, 이벤트 및 로그를 포함하여 인사이트를 Kubernetes 환경에 추가할 수 있습니다.
뉴렐릭은 Kubernetes용 OpenTelemetry (NRDOT)의 뉴렐릭 배포판 사용을 권장합니다. 이 배포판은 뉴렐릭과 원활하게 작동하도록 사전 구성되어 있으며 쿠버네티스 클러스터를 효과적으로 모니터링하는 데 필요한 모든 구성 요소와 설정이 포함되어 있습니다. 하지만 자체 OpenTelemetry Collector를 사용하려면 Kubernetes 모니터링에 필요한 구성 요소가 포함되어 있는지 확인해야 합니다.
요구 사항
Kubernetes 텔리메트리 데이터를 뉴렐릭으로 보내려면 OpenTelemetry Collector 가 필요합니다. 저희 NRDOT는 귀하의 쿠버네티스 클러스터를 자동으로 모니터링하도록 구성되어 있습니다. 이는 nr-k8s-otel-collector Helm 차트를 통해 필요한 모든 구성 요소를 구현하고 배포합니다.
다른 OpenTelemetry Collector를 선택하는 경우, 포괄적인 Kubernetes 모니터링에 필요한 모든 핵심 구성 요소가 포함되어 있는지 확인하십시오.
Helm 설치 방법은 Kubernetes 에서 구현하다, 배포하다 OpenTelemetry 에 권장되는 접근 방식입니다. 이 방법은 구현, 배포 프로세스를 단순화하고 쉬운 설정 관리를 허용합니다. NRDOT 또는 자체 OpenTelemetry Collector를 사용할 수 있습니다.
뉴렐릭은 뉴렐릭과 원활하게 연동되도록 사전 구성된 NRDOT for Kubernetes 사용을 권장합니다. 이 배포판에는 쿠버네티스 클러스터를 효과적으로 모니터링하는 데 필요한 모든 구성 요소와 설정이 포함되어 있습니다. 하지만 자체 OpenTelemetry Collector를 사용하려면 Kubernetes 모니터링에 필요한 구성 요소가 포함되어 있는지 확인해야 합니다.
이러한 필수 필드를 업데이트한 후 kubectl 을 사용하여 newrelic 지우스페이스 및 구현하다, 클러스터에 매니페스트를 배포합니다.
bash
$
kubectl create namespace newrelic
$
kubectl apply -n newrelic -R-f rendered
팁
구현하다, Helm 없이 배포하는 경우 렌더링된 매니페스트를 통해 구성 요소를 구현하고 배포하는 경우 접두사(예: example- 가 포함될 수 있습니다. 이 접두사는 일반적으로 Helm 릴리스 이름을 기반으로 동적 명명을 위해 Helm 차트 템플릿에서 사용됩니다. 보다 깔끔한 명명 규칙을 선호하는 경우, 적용하기 전에 매니페스트 파일에서 이러한 접두사를 직접 조정할 수 있습니다.
설정에 대해 values.yaml
nr-k8s-otel-collector Helm 차트의 values.yaml 파일에는 모든 설정 초기화가 포함되어 있으며 OpenTelemetry Collector 구현, 배포를 사용자 정의하는 데 사용할 수 있습니다. 이 파일을 사용하면 클러스터 이름, 라이선스 키 및 기타 수집기 설정과 같은 다양한 옵션을 설정할 수 있습니다.
수집기에게 모든 데이터를 뉴렐릭 스테이징 백앤드로 보내도록 지시합니다. 이 옵션을 사용하려면 유효한 스테이징 라이선스 키가 필요합니다. 이 매개변수는
global.nrStaging
사용하여 구성할 수도 있습니다.
true
또는
false
receivers.prometheus.enabled
부울
prometheus
수신기의 데이터 수집 활성화 여부를 지정합니다.
true
또는
false
receivers.prometheus.scrapeInterval
문자열
prometheus
수신기에 대한 스크래핑 간격을 설정하여 메트릭이 수집되는 빈도를 결정합니다.
1m
receivers.k8sEvents.enabled
부울
k8sEvents
수신기가 Kubernetes 이벤트를 수집하도록 활성화할지 여부를 지정합니다.
true
또는
false
receivers.hostmetrics.enabled
부울
hostmetrics
수신기가 호스트 수준 메트릭 수집을 위해 활성화되어 있는지 여부를 지정합니다.
true
또는
false
receivers.hostmetrics.scrapeInterval
문자열
hostmetrics
수신기에 대한 스크래핑 간격을 설정합니다.
1m
receivers.kubeletstats.enabled
부울
Kubelet에서 메트릭을 수집하기 위해
kubeletstats
수신기가 활성화되었는지 여부를 지정합니다.
true
또는
false
receivers.kubeletstats.scrapeInterval
문자열
kubeletstats
수신기에 대한 스크래핑 간격을 설정합니다.
1m
receivers.filelog.enabled
부울
파일(일반적으로 컨테이너 로그)에서 로그를 수집하기 위해
filelog
수신기가 활성화되었는지 여부를 지정합니다.
true
또는
false
lowDataMode
부울
뉴렐릭 Kubernetes 사용자 인터페이스를 밝히는 데 필요한 필수 지표만 전송하는 모드를 활성화합니다. 이는 데이터 수집량을 줄이는 데 도움이 됩니다.
true
또는
false
경고
Integrations & Agents 의 안내 설치 흐름을 따라 필수 공지 사항을 설치할 수 있습니다. 그러면Kubernetes 용으로 설계된 여러 공지 조건을 사용하여 뉴렐릭 계정에 Kubernetes (OpenTelemetry) 공지 라는 이름의 공지가 자동으로 설정됩니다. 특정 모니터링 요구 사항에 맞게 이러한 조건을 사용자 지정하십시오.