Backend/Docker, Kubernetes

kubectl panic: runtime error: index out of range .. with length .. [recovered]

findmypiece 2022. 1. 12. 16:04
728x90

Jenkins Job 에서 kubectl 을 사용하는데 위와 같은 에러가 났다. 신기한 것은 동일한 명령을 로컬에서 하면 잘 된다. 거의 반나절 삽질하다 찾은 원인을 공유한다.

 

결국  yaml 파일에 문제가 있었던 것인데 나는 ingress 부분이었다. ingress 정의시 spec.rules.host 항목 마지막에 공백이 포함되었던 게 문제였다. 예를 들어 에러가 났던 ingress yaml 파일은 아래와 같다.

그런데 로컬에서는 왜 잘 됐나? kubectl 버전에 따라 이를 trim 처리해서 잘 처리하는 버전이 있고 에러를 리턴하는 버전이 있는 것 같다. 문제 없이 처리되었던 로컬환경의 kubectl 버전을 보니 1.20.4 였고 Jenkins에서 사용하던 kubectl 버전은 1.21.1 이었다. 상위버전으로 올라가면서 체크조건이 더 엄격해진거 같다.

 

할 것도 많은데 오늘은 이걸로 반나절을 날렸다...

728x90