Kubernetes/문제 해결

[Helm] superset - Error: failed to create containerd task: failed to create shim task: OCI runtime create failed: runc create failed: unable to start container process: exec: "/bin/sh": stat /bin/sh: no such file or directory: unknown

비번변경 2025. 4. 22. 23:11

현상

AWS EKS로 구성된 쿠버네티스 클러스터를 운영하고 있는데, 인프라 운영팀으로부터 NodeGroup과 연결된 Launch Templete의 리소스 태그 변경이 필요하다는 연락을 받았다. LT를 업데이트하면 기존에 동작하고 있던 Node가 종료되면서 새로운 버전의 LT로 만들어진 Node가 생성되기 때문에 서비스 확인 등의 작업이 필요한 상황이었다.

 

1년 정도 유지보수를 하지 않다가 작업한 상황이라 걱정이 되었는데, 아니나 다를까 작업 후 Helm으로 설치한 Superset에서 아래와 같은 오류가 발생했다.

원인을 파악하고 문제를 해결해보자.

 

참고로 현재 환경은 다음과 같다.

  • 쿠버네티스 클러스터 / 버전 : AWS EKS / kubernetes 1.27.6
  • Helm Chart

 

오류가 발생하는 부분은 superset, superset-worker 포드의 InitContainer이다.

 

 

원인

오류가 발생하는 이미지는 jwilder/dockerize:latest이다. 아무래도 기존에 사용했던 이미지는 당시 latest인 0.6.1인 것 같다.

레포지터리를 확인해보니, https://github.com/jwilder/dockerize가 비교적 최근부터 다시 유지보수를 재개한 것 같은데, 버전을 업그레이드하면서 base image에 변경이 있었던 모양이다.

 

0.6.0

FROM golang:1.8.3-alpine3.6 AS binary
RUN apk -U add openssl git

 

0.9.3

FROM golang:1.23 AS binary

아무래도 /bin/sh가 존재하던 이미지에서 존재하지 않는 이미지로 변경되어서 문제가 발생한 것 같다.

 

근데 Chart의 기본 이미지는 InitContainer의 기본 이미지는 apache/superset:dockerize인데…… 어떤 이유로 다른 이미지를 사용하고 있는지는 모르겟다.

 

 

해결

InitContainer의 이미지 버전이 업그레이드되면서 base 이미지에 변경이 발생한 게 원인이므로, 이미지 버전을 기존에 사용했던 걸로 추정되는 0.6.0으로 지정하여 배포한다.

 

기존

https://github.com/apache/superset/blob/superset-helm-chart-0.12.8/helm/superset/values.yaml#L187

initImage:
  repository: jwilder/dockerize
  tag: latest
  pullPolicy: IfNotPresent

 

수정

initImage:
  repository: jwilder/dockerize
  tag: 0.6.1
  pullPolicy: IfNotPresent

 

 

배포

helm upgrade 명령으로 재배포를 하려고 했는데, 잘 되지 않아서 삭제 후 재설치 했다.

업그레이드를 하면 InitContainer 이미지를 기존 걸 사용하거나 최신 이미지를 사용하게끔 되어 있는 것 같다…….

# 삭제
helm uninstall superset

# 설치
helm install superset superset/superset --version 0.11.2 -f superset.values.yaml

이제 잘 동작하는 모습을 확인할 수 있다.

 

 

참고 문서

https://github.com/apache/superset/releases

https://hub.docker.com/r/jwilder/dockerize/tags

https://artifacthub.io/packages/helm/superset/superset

728x90