728x90
애플리케이션 로그 관리
Kubernetes 애플리케이션 로그 확인
- 로그는 컨테이너 단위로 로그 확인 가능
- 싱글 컨테이너 포드의 경우 포드까지만 지정하여 로그 확인
- 멀티 컨테이너의 경우 포드 뒤에 컨테이너 이름까지 전달하려 로그 확인
$ kubectl logs <pod name> <옵션: container name>
kubeapi가 정상 동작하지 않는 경우
- 쿠버네티스에서 돌아가는 리소스들은 모두 docker를 사용
- 따라서 docker의 로깅 기능을 사용
docker ps -a
를 사용하여 조회 가능docker logs <container id>
를 사용하여 로그 확인 가능
Kubernetes 애플리케이션 로그 확인
$ kubectl logs kube-dns-6987857fdb-4zbsg -n kube-system dnsmasq
I0102 05:53:18.559043 1 main.go:78] opts: {{/usr/sbin/dnsmasq [-k --cache-size=1000 --no-negcache --dns-forward-max=1500 --log-facility=- --server=/cluster.local/127.0.0.1#10053 --server=/in-addr.arpa/127.0.0.1#10053 --server=/ip6.arpa/127.0.0.1#10053]
true} /etc/k8s/dns/dnsmasq-nanny 10000000000 127.0.0.1:10053}
I0102 05:53:18.559443 1 nanny.go:124] Starting dnsmasq [-k --cache-size=1000 --no-negcache --dns-forward-max=1500 --log-facility=- --server=/cluster.local/127.0.0.1#10053 --server=/in-addr.arpa/127.0.0.1#10053 --server=/ip6.arpa/127.0.0.1#10053]
I0102 05:53:19.250774 1 nanny.go:149]
W0102 05:53:19.250948 1 nanny.go:150] Got EOF from stdout
I0102 05:53:19.251127 1 nanny.go:146] dnsmasq[9]: started, version 2.78 cachesize 1000
I0102 05:53:19.251250 1 nanny.go:146] dnsmasq[9]: compile time options: IPv6 GNU-getopt no-DBus no-i18n no-IDN DHCP DHCPv6 no-Lua TFTP no-conntrack ipset auth no-DNSSEC loop-detect inotify
I0102 05:53:19.251357 1 nanny.go:146] dnsmasq[9]: using nameserver 127.0.0.1#10053 for domain ip6.arpa
I0102 05:53:19.251434 1 nanny.go:146] dnsmasq[9]: using nameserver 127.0.0.1#10053 for domain in-addr.arpa
I0102 05:53:19.251531 1 nanny.go:146] dnsmasq[9]: using nameserver 127.0.0.1#10053 for domain cluster.local
I0102 05:53:19.251690 1 nanny.go:146] dnsmasq[9]: reading /etc/resolv.conf
I0102 05:53:19.251772 1 nanny.go:146] dnsmasq[9]: using nameserver 127.0.0.1#10053 for domain ip6.arpa
I0102 05:53:19.251857 1 nanny.go:146] dnsmasq[9]: using nameserver 127.0.0.1#10053 for domain in-addr.arpa
I0102 05:53:19.251932 1 nanny.go:146] dnsmasq[9]: using nameserver 127.0.0.1#10053 for domain cluster.local
I0102 05:53:19.252040 1 nanny.go:146] dnsmasq[9]: using nameserver 169.254.169.254#53
I0102 05:53:19.252248 1 nanny.go:146] dnsmasq[9]: read /etc/hosts - 7 addresses
docker를 사용하여 로깅
$ docker logs 16af439e8015
연습문제
- Kube-apiserver의 로그를 수집하여 /tmp/apiserver.log로 저장하라
kubelet 이 실행되면서 로그 수집현황을 볼 수 있음
$ journalctl -u kubelet -f
프로세스 트리 보기
Docker 경로 /var/log/containers 에 로그가 쌓이는 것을 확인
$ pstree
728x90
'개발강의정리 > DevOps' 카테고리의 다른 글
[데브옵스를 위한 쿠버네티스 마스터] 리소스 로깅과 모니터링 - GKE에서 프로메테우스 설치와 모니터링 (0) | 2021.01.19 |
---|---|
[데브옵스를 위한 쿠버네티스 마스터] 리소스 로깅과 모니터링 - 큐브 대시보드 설치와 사용 (0) | 2021.01.19 |
[데브옵스를 위한 쿠버네티스 마스터] 리소스 로깅과 모니터링 - 쿠버네티스 모니터링 시스템과 아키텍처 (0) | 2021.01.19 |
[데브옵스를 위한 쿠버네티스 마스터] 애플리케이션 스케줄링과 라이프사이클 관리 - 오토 스케일링 HPA (0) | 2021.01.19 |
[데브옵스를 위한 쿠버네티스 마스터] 애플리케이션 스케줄링과 라이프사이클 관리 - 멀티플 스케줄러 (0) | 2021.01.19 |
댓글