모니터링에서 kubernetes Pod 다시 시작을 확인하세요.

모니터링에서 kubernetes Pod 다시 시작을 확인하세요.

최근에 충돌이 발생하는 것으로 보이는 Pod가 있고 kubectl get pods16번의 재시작이 표시되지만 모니터링을 살펴보면 이름에 "restart"가 포함된 모든 측정항목이 비어 있습니다.

이를 모니터링하려면 명시적으로 무언가를 켜야 합니까?

답변1

일부 Pod 충돌 문제를 해결하려면 먼저 해당 설명을 살펴봐야 합니다.

$ kubectl describe pod -n ci clair-kube-7c8d8cf949-nlhv8
Containers:
  clair:
    [...]
    State:          Running
      Started:      Wed, 19 Aug 2020 22:06:54 +0200
    Last State:     Terminated
      Reason:       OOMKilled
      Exit Code:    137
      Started:      Wed, 19 Aug 2020 13:07:51 +0200
      Finished:     Wed, 19 Aug 2020 22:06:53 +0200
    Ready:          True
    Restart Count:  42

여기에서는 컨테이너 메모리 제한을 높여야 한다는 것이 매우 분명합니다.

때로는 이유가 표시되지 않고 종료 코드만 표시될 수도 있습니다. 결국에는 이를 인식하는 방법을 배우게 됩니다. 처음에는 이전 컨테이너 로그를 찾아야 합니다.

$ kubectl logs -n ci cassandra-kube-2 -c exporter -p --tail=XX
[...]
Exception in thread "pool-1-thread-33" Exception in thread "pool-1-thread-34" java.lang.OutOfMemoryError: Java heap space
java.lang.OutOfMemoryError: Java heap space

관련 정보