Community

안녕하세요! 공유주신 코드로 DockerFile 을 어떻게 작성하셨고, 이를 쿠버네티스에 어떤 형태로 배포하셨는지 알 수 없어 정확한 답변은 아닐 수 있습니다만 추측되는 부분을 말씀드려보겠습니다.

안녕하세요! 공유주신 코드로 DockerFile 을 어떻게 작성하셨고, 이를 쿠버네티스에 어떤 형태로 배포하셨는지 알 수 없어 정확한 답변은 아닐 수 있습니다만 추측되는 부분을 말씀드려보겠습니다. 쿠버네티스는 pod 에서 실행되는 컨테이너화된 어플리케이션의 stdout(표준출력), stderr(표준 에러) 를 컨테이너 엔진이 처리 및 리디렉션하여 설정된 로그 디렉토리에 관리 및 로테이션이 수행되며, kubectl logs 명령어는 이렇게 관리된 파일을 보여주도록 하는 명령어 입니다. 따라서 보통 가장 크게 실수하는 케이스가 일반 물리장비 혹은 가상 장비에서 운영하듯이 어플리케이션의 stdout, stderr 출력을 자체적으로 리디렉션 하여 파일로 남기거나 다른 처리를 하도록 구성하여 컨테이너 엔진이 처리할 로그를 리디렉션 하지 못해 kubectl logs 명령어로 로그를 볼 수 없는 케이스 입니다. 그 다음으로는 pod 이 어떠한 이슈로 running 상태가 아니거나 이미 종료되었을 경우 혹은 다른 pod 이나 container 를 조회하게 될때 정도일거 같습니다. 저의 짧은 지식이 부디 도움이 되시길 바라겠습니다. + 추가: 강병진님의 답변을 통해 알게된 내용으로 namespace 문제일 수도 있습니다. logs 커맨드의 옵션으로 namespace 를 주지 않을 경우 default namespace 를 보도록 되어 있어 pod 를 띄운 namespace 가 default 가 아닐 경우 로그가 나오지 않을 수 있습니다.

알림

알림이 없습니다