2022. 5. 31. 01:25ㆍkubernetes
Pod 상태
- Pending : 스케쥴링 되기 전, 이미지를 받기 전, 컨테이너가 준비 되기 전 상태
- Running : 컨테이너가 실행 중, 실행 전이나 재시작 중인 상태
- Succed : 정상종료된 상태 (0)
- Failed : 비정상으로 종료된 상태(!0)
- Unknown : 노드의 통신 문제로 상태를 알 수 없는 상태
Container 상태
- Waiting : 이미지를 받기 전, 볼륨이 연결 되기 전 상태
- Running : 실행 중인 상태
- Terminated : 종료된 상태
재시작 정책
- 파드를 생성했을 때 제거하기 전까지 종료된 어플리케이션 및 파드에 재시작에대한 정책 정하는 부분
▶ Always(기본값) : 파드를 제거하기전까지 어플리케이션이 종료되면 항상 재시작 한다.
▶ OnFailure : 어플리케이션이 실패할 때까지 재시작한다. 실패하고 나면 종료
▶ Never : 재시작 하지 않는다.
지수 백오프
- 파드에 생성 실패시 재시작 정책에 의해 재시작을 하게되는 간격에 대한 패턴
▶ 재시작 패턴 : 10, 20, 40, 80 ... 300초 까지 재시작 유예기간을 가진다.
ex) 핸드폰 잠금화면, 컴퓨터 잠금화면
컨테이너 프로브
- 프로브 : 컨테이너(파드)의 상태를 체크하는 것
프로브의 종류
- liveness : 애플리케이션 실행/작동 여부를 확인, 활성 프로브
- readiness : 컨테이너가 요청을 처리할 준비가 되었는지 확인, 준비성 프로브
- startup : 컨테이너 내의 애플리케이션이 시작되었는지 확인, 스타트업 프로브가 있는 경우
성공할 때까지 다른 나머지 프로브는 활성화 되지 않는다.
프로브의 결과
- success : 진단을 통과한 이상이 없다.
- Failuer : 진단에 실패 했다. (응답이 원하는 결과가 아니다.)
- Unknown : 진단 시도 자체를 실패했다. (응답자체가 돌아오지 않는다. )
프로브 체크 메커니즘
- httpGet : 컨테이너의 지정한 포트 및 경로에서 IP주소에 대한 HTTP GET요청을 보낸다.
이에대한 응답한 상태코드에 따라 상태를 체크한다.
▶ 100번대 : 정보 응답코드
▶ 200번대 : 성공 응답코드
▶ 300번대 : 리디렉션(방향 재지정)
▶ 400번대 : 클라이언트 오류
▶ 500번대 : 서버 오류
- tcpSocket
▶ 해당 포트의 웹이 아닌 네트워크를 사용하거나 UDP 아용하는 서비스를
TCP 연결해서 3-hand-shaking 상태 체크
- grpc
▶ grpc로 만들어진 어플리케이션에 grpc 프로토콜로 상태를 체크
- exec
▶ 컨테이너가 지정한 명령을 실행 시켜서 상태를 체크
▶ 명령어가 상태 코드 가 0우로 종료되면 진단에 성공
'kubernetes' 카테고리의 다른 글
Label과 LabelSelector, Annotations (0) | 2022.05.29 |
---|---|
Namespace (0) | 2022.05.29 |
Workload - Pod (0) | 2022.05.29 |
Kubernetes Objects (0) | 2022.05.19 |
Kubespray로 Kubernetes 설치 (0) | 2022.05.17 |