Monitoring Cluster Components


K8s ๋ฅผ ์šด์˜ํ•  ๋•Œ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•  ์ˆ˜ ์žˆ๋Š” ์ง€ํ‘œ๋Š” Node ๊ฐœ์ˆ˜, CPU, Memory, Network, Disk ๋“ฑ์ด ์žˆ๋‹ค. ์ด๋Ÿฐ ์ง€ํ‘œ๋“ค์€ kubelet ์˜ ๋‚ด์žฅ ์ปดํฌ๋„ŒํŠธ ์ค‘ ํ•˜๋‚˜์ธ cAdvisor ๋ฅผ ํ†ตํ•ด ์ œ๊ณต๋œ๋‹ค. K8s ๋Š” ๊ธฐ๋ณธ์ ์œผ๋กœ ์ œ๊ณตํ•˜๋Š” ๋ชจ๋‹ˆํ„ฐ๋ง ํˆด์ด ์—†๊ธฐ ๋•Œ๋ฌธ์— Prometheus, ELK, Datadog, Dynatrace ๋“ฑ 3rd Party ์†”๋ฃจ์…˜์„ ํ†ตํ•ด K8s Cluster ๋ฅผ ๋ชจ๋‹ˆํ„ฐ๋ง ํ•  ์ˆ˜ ์žˆ๋‹ค.

kubectl apply -f https://github.com/kubernetes-sigs/metrics-server/releases/latest/download/components.yaml
kubectl top node
kubectl top pod

Metric Server Pod ๋ฅผ Cluster ์— ๋ฐฐํฌํ•œ ๋’ค ์œ„ ๋ช…๋ น์–ด๋“ค์„ ํ†ตํ•ด ์ง€ํ‘œ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

Managing Application Logs


docker logs -f {container-name}

Docker Container ๋กœ Application ์„ ์‹คํ–‰ํ–ˆ์„ ๋•Œ ์œ„ ๋ช…๋ น์–ด๋กœ Application Log ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋Š” ๊ฒƒ ์ฒ˜๋Ÿผ,

kubectl logs -f {pod-name} {container-name}

์œ„ ๋ช…๋ น์–ด๋กœ Pod ๋‚ด ํŠน์ • Container ์˜ Log ๋ฅผ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค.

References