Splunk와 같은 모니터링 툴은, 'EKS 통합(integration)' 기능을 제공하는데, 해당 기능을 이용하면 EKS Cluster 단위로 Kubernetes 리소스를 모니터링 할 수 있습니다.
Splunk Observability Cloud가 Kubernetes 환경을 모니터링할 수 있도록 Kubernetes용 Splunk OpenTelemetry Collector를 설정하는 과정을 안내합니다. 이 프로세스는 메트릭, 추적 및 로그 수집을 지원하기 위해 Helm 차트를 통해 Fluentd와 함께 OpenTelemetry Collector의 Splunk 배포를 배포합니다.
OpenTelemetry Collector는 컨테이너에 패키징되어 있으며 Kubernetes 클러스터의 각 노드에 데몬셋으로 배포됩니다. 배포된 클러스터의 모든 노드에 있는 소프트웨어 및 서비스로부터 메트릭을 수집하고 수신합니다. 또한 스팬의 대상 역할도 합니다.
Daemonset은 또한 Fluentd를 실행하여 로그를 수집합니다. 기본적으로 Kubernetes 클러스터에서 실행 중인 애플리케이션에 대한 로그와 Kubernetes 자체에 대한 로그(예: kubelet, apiserver 등의 로그)를 수집합니다. fluentd tail 플러그인이 있는 파일 시스템과 fluent-plugin-systemd가 있는 systemd 저널 모두에서 로그를 읽습니다.
OpenTelemetry Collector Daemonset 및 Kubernetes API의 데이터를 처리하기 위해 25개 이상의 호스트가 있는 클러스터는 Kubernetes 서비스를 통해 OpenTelemetry Collector 배포를 지원할 수 있고 지원해야 합니다.
1) Splunk 콘솔 -> Data Management

2) Configure Integration
여러 Kubernetes 플랫폼의 통합을 지원하고 있는데, 여기서 'EKS'를 선택한다.

3) 가이드 명령어 확보

1) Kubernetes의 Helm 차트 저장소용 Splunk OpenTelemetry Collector 추가
helm repo add splunk-otel-collector-char https://signalfx.github.io/splunk-otel-collecotr-char
2) helm 저장소 업데이트
helm repo update
3) Splunk OpenTelemetry Collector for Kubernetes 설치
helm install --set-"cloudProvider=aws,distribution=eks/fargate,splunkObservability.accessToken=DAwaGG-NQaaaaa-bbbbb-ccccc
4) 배포된 리소스 확인




아래와 같이 OTel Collector를 통해 수집된 EKS Cluster 리소스 정보가 Splunk 콘솔에서 표시되고 있다.

위와 같은 절차를 통해 배포된, 'EKS 통합' 관련 리소스를 삭제하려면 Helm 차트를 삭제하는 방식으로 간단히 진행할 수 있습니다.
helm list -n splunk
helm delete -n splunk splunk-otel-collector-1688104800
