반응형
metricbeat container 실행 방법
worker node에서 metricbeat의 메모리 사용량이 최대 60%까지 올라가는 이슈가 있었음.
- 해당 메모리 사용량 이슈는 metricbeat의 메모리릭 이슈로 확인됨.
- metricbeat git issues를 확인해보면 각 버전별로 항상 언급됨.
- 고질병인가봄...
해당 이슈를 해결 할 수 있는 방법 중 하나로
container로 실행 시켜서 CPU, Memory 사용량을 제한 하는 방법을 알아봄.
사용하는 tool은 nerdctl임
nerdctl run 명령 시 CPU, Memory 사용량 제한 하는 옵션
--cpu-period uint Limit CPU CFS (Completely Fair Scheduler) period
--cpu-quota int Limit CPU CFS (Completely Fair Scheduler) quota (default -1)
--cpu-shares uint CPU shares (relative weight)
--cpus float Number of CPUs
--cpuset-cpus string CPUs in which to allow execution (0-3, 0,1)
--cpuset-mems string MEMs in which to allow execution (0-3, 0,1)
-m, --memory string Memory limit
--memory-reservation string Memory soft limit
--memory-swap string Swap limit equal to memory plus swap: '-1' to enable unlimited swap
--memory-swappiness int Tune container memory swappiness (0 to 100) (default -1) (default -1)
--mount stringArray Attach a filesystem mount to the container
metricbeat container 실행
nerdctl run \
--name=metricbeat \
--network host \
--privileged \
--volume="/etc/metricbeat:/etc/metricbeat:ro" \
--volume="/var/run/docker.sock:/var/run/docker.sock:ro" \
--volume="/sys/fs/cgroup:/hostfs/sys/fs/cgroup:ro" \
--volume="/proc:/hostfs/proc:ro" \
--volume="/:/hostfs:ro" \
docker.elastic.co/beats/metricbeat:8.7.0 metricbeat -e \
--path.config /etc/metricbeat/ -c /etc/metricbeat/metricbeat.yml
특이 사항
--system.hostfs 설정은 DEPRECATED 됨.
DEPRECATED: The --system.hostfs flag will be removed in the future and replaced by a config value. Will be removed in version: 8.0.0
Container로 실행 시 몇 가지 문제점이 있음
-
filesystem metricset에서 경로가 container 경로로 나옴 (host 부분 생략하면 실제 경로 이긴 함)
-
process monitoring이 불가능함
-
일부 system metric 항목이 host에서 수집할 때와 다른 결과가 나옴.
반응형
'Kubernetes > Monitoring' 카테고리의 다른 글
kubernetes 모니터링 : Node Problem Detector(NPD)란? (0) | 2024.09.22 |
---|---|
kubernetes 모니터링 : process-exporter 란? (0) | 2024.09.22 |
Kubernetes 모니터링 : metricbeat 란? (0) | 2024.09.07 |
Kubernetes 모니터링 : kube-state-metrics 란? (0) | 2024.09.05 |
cAdvisor container로 배포 해서 확인 하는 방법(storage driver = Kafka) (1) | 2024.09.05 |