본문 바로가기

Infra/kubernetes

Kubernetes - pod error 정리 - 추가중

pod Back off

  

 pod 생성이 성공적으로 되었다가 계속해서 다시 죽는 경우가 있다

다음의 명령어로 pod의 상태를 확인한다 # kubectl describe pod "pod Id" 

다음과 같이 Back off 라는 메시지가 보인다


Replica Set은  Pod들을 특정 방법으로 확인하여 응답이 없을 시 pod를 서비스 불가능 상태로 인지 하고 자동으로 pod를 죽이고 다시

 지정된 개수로 pod를 맞추기위해 생성을 한다.


pod의 log를 확인하여 pod가 죽는 이유를 알아야 한다 아래 명령어로 확인을 하자

  # kubectl logs "pod ID" 


ERROR

  1. no route (unreachable) 

- 정확한 원인 아직 파악하지 못함.    

 - master와 worker의 방화벽 해제시 해결

  

  2. Connection timed out

컨테이너 내부의 서비스가 데이터베이스와 연결이 되지 못하여 발생하는 오류이다.     

- 필장의 경우 컨테이너 내부의 서비스에서 외부의 데이터베이스와 연결시 Connection timed out이 나타나는 경우

        컨테이너에서 노출시킨 Port와 Kubernetes Pod의 Target Port가 일치하지 않는 경우 발생했다


  3. curl : Connection refused

- 여러가지 원인이 있겠지만 필자의 경우 svc, pod 및 container에 부여한 포트들이 서로 달라 발생하는 에러였다.


- cluster init 후 권한을 주지 않아 발생하기도 하는 오류이다 


  4.  이유도 없이 계속해서 pod 들이 back off 되는 경우

- 정확한 원인 아직 파악하지 못함