Kubernetes 포드에 배포된 애플리케이션이 Jenkins-X 2에서는 포드를 성공적으로 생성했지만 Jenkins-X 3에서는 실패했습니다.

Kubernetes 포드에 배포된 애플리케이션이 Jenkins-X 2에서는 포드를 성공적으로 생성했지만 Jenkins-X 3에서는 실패했습니다.

kubectl exec다른 리소스에 액세스하기 위해 클러스터 내부에 영구 포드로 배포해야 하지만 사용자가 포드에 들어갈 때만 요청 시 실행되는 애플리케이션을 상속했습니다 . 초기화 시 exec나중에 사용자가 포드를 사용할 수 있도록 만드는 것 외에는 아무것도 수행할 필요가 없습니다 .

이는 이전 Jenkins-X 2 클러스터에서는 잘 작동하지만 새로운 Jenkinx-X 3 버전은 아무데도 작동하지 않습니다.

배포되면 상태는 다음과 같은 수명 주기를 거치는 것으로 나타납니다.

Running
Completed
CrashLoopBackOff

그러나 kubectl logs -n <<namespace>> <<podname>> -p오류는 표시되지 않으며 섹션에는 다음이 kubectl describe pod -n <<namespace>> <<podname>>포함 Containers/<<appname>>됩니다.

    State:          Waiting
      Reason:       CrashLoopBackOff
    Last State:     Terminated
      Reason:       Completed
      Exit Code:    0

CrashLoopBackoff일관성이 없어 보입니다. 마지막 상태인 Terminated이유 Completed와 0이 어떻게 되었는지 알 수 없습니다 Exit Code. 제가 볼 수 있는 한 애플리케이션은 실패하지 않고 Kubernetes가 Pod를 완료된 것으로 종료하는 것뿐입니다. 실행 상태로 두는 것보다 CrashLoopBackoff에 걸리게 됩니다.

이것이 요청을 처리하기 위해 지속적으로 실행되는 프로세스를 찾지 못해 이를 죽이는 준비 상태 또는 활성 상태 프로브와 관련이 있는지 궁금했지만, 이를 제거하거나 이전 버전으로 되돌려도 아무런 차이가 없는 것 같습니다.

아마도 이전 버전과 새 버전 사이의 차트에 뭔가 문제가 있는 것 같지만 어디를 봐야 할지 아이디어가 부족합니다. 사람들이 이 문제의 원인이 될 수 있다고 제안할 수 있는 것이 있나요?

관련 정보