System log 조회

작성자 이호영 수정일 2022-09-20 12:16

목록



들어가며

  • 현재 운영 중인 pod의 log 확인하는 방법 3가지를 확인해보겠습니다.



내용

  1. kubectl
    a. 확인하려는 pod의 name 조회
    kubectl get pod --all-namespaces


    b. kubectl logs 명령어 사용하기

    kubectl logs [Pod-Name]



  2. journalctl
    a. journalctl 사용하기

    journalctl

    • 'ERROR' 항목은 빨간색, Notice / Warning 항목은 굵은 글자로 표시되어 중요도 쉽게 파악할 수 있습니다.


    b. kubelet과 다른 점

        -임의의'ERROR' 발생 시켜 해당 시점에 log가 생성되는지 확인해 봅니다.
    journalctlkubelet
    • 'journalctl' 명령어는 'ERROR' 가 발생된 시점의 log 기록하는 반면 'kubelet logs' pod가 정상 운영 상태가 아니기 때문에 확인하기 어렵습니다.

  3. /var/log

    - pod와 container의 log가 저장되어 있는 경로에서 'vi , vim'등과 같은 편집기를 통해 확인합니다.
    - /var/log 밑에는 다양한 log가 저장되는데 /var/log/containers 의 log는 /var/log/pods 내 log 파일로 symbolic link 되어 있습니다.

    a. 조회 하기

ls -al /var/log/pods/[조회할 Pod-Name]/nginx-controller

ls -al /var/log/containers

  • /containes의 log 파일이 /pods 경로의 log 파일을 바라보고 있습니다.


    c. kubernetes cluster가 systemd 사용하지 않을 때 log 경로

Master NodeWorker Node
api 응답 log/var/log/kube-apiserver.log실행 중인 container의 응답/var/log/kubelet.log
Scheduling log/var/log/kube-scheduler.logservice load balancing log/var/log/kube-proxy.log
controller log/var/log/kube-controller-manager.log


      



마무리

  • 현재 운영 중인 pod / container의 log 조회 하는 방법에 대해 알아보았습니다.

아티클이 유용했나요?

훌륭합니다!

피드백을 제공해 주셔서 감사합니다.

도움이 되지 못해 죄송합니다!

피드백을 제공해 주셔서 감사합니다.

아티클을 개선할 수 있는 방법을 알려주세요!

최소 하나의 이유를 선택하세요
CAPTCHA 확인이 필요합니다.

피드백 전송

소중한 의견을 수렴하여 아티클을 개선하도록 노력하겠습니다.

02-558-8300