[K8S] exec ./BackendServer: exec format error

Hyun-Sung Kim·2025년 1월 7일

Kubernetes

목록 보기
20/24

EKS에 pod를 배포했는데, 아래와 같은 error가 발생할 경우가 있다.

증 상

exec ./BackendServer: exec format error

원 인

위 에러는, 여러가지 원인으로 인해 발생할 수 있지만,
내가 경험한 환경 상에서 발생한 원인은, 컨테이너 이미지와 Node의 물리적인 서버의 아키텍처가 일치하지 않아서 였다.

<예시>

  • Node의 서버 타입 : arm 기반의 인스턴스 (c7g.large 등)
  • 컨테이너 이미지 : x86 OS 기반에서 빌드된 이미지

해결 방법

  • EKS에서 Node group을 배포할 때, 컨테이너 이미지와 동일한 아키텍처의 EC2 instance로 구성하거나
  • 반대로, 이미 배포된 Node group의 아키텍처와 동일한 아키텍처의 환경에서 컨테이너 이미지를 재 빌드하면 된다.

ARM 아키텍처는 x86에 비해 전력 소모가 적고, 비용 효율성이 높기 때문에, Linux OS를 배포할 경우 해당 EC2 instance 타입을 채택하는 것이 유리하다.

profile
Cloud Engineer

0개의 댓글