본문 바로가기
DevOps/Terraform

[aws eks terraform] Blocks of type "elastic_gpu_specifications" are not expected here. 에러

by Rainbound-IT 2025. 7. 24.
반응형

Terraform을 활용해 AWS EKS 클러스터를 구성하던 중 다음과 같은 에러를 마주쳤습니다:

pgsql
복사편집
Error: Unsupported block type 
│ on .terraform\modules\eks\modules\eks-managed-node-group\main.tf line 136, in resource "aws_launch_template" "this": 
│ 136: dynamic "elastic_gpu_specifications" { 
│ 
│ Blocks of type "elastic_gpu_specifications" are not expected here.

같은 형식의 에러가 elastic_inference_accelerator 블록에 대해서도 반복 발생했습니다.

환경

  • Terraform 버전: 1.12.2
  • AWS Provider: registry.terraform.io/hashicorp/aws v6.4.0
  • EKS Module 버전: 20.8.6

원인 분석

처음엔 Terraform이나 AWS Provider 버전 문제로 의심했으나, 다음 사항들을 확인하고 조치해도 동일한 에러가 반복됐습니다:

  • .terraform/ 폴더 및 .terraform.lock.hcl 삭제 후 terraform init 재실행
  • Terraform 최신 버전 사용 (v1.12.2 기준)
  • Provider는 aws v6.4.0으로 최신 상태

하지만 여전히 .terraform/modules/eks/modules/eks-managed-node-group/main.tf 파일 내부에서 제거된 블록인 elastic_gpu_specifications와 elastic_inference_accelerator가 정의되어 있었습니다.

이상하게도 공식 AWS Provider 문서상에서는 해당 블록이 이미 deprecated 되었음에도 해당 코드가 자동으로 내려와 있었습니다.

해결 방법

결론적으로 문제의 원인은 EKS 모듈 버전이 최신 AWS Provider와 호환되지 않아서 발생한 것이었습니다.
제가 사용한 terraform-aws-eks 모듈 버전 20.8.6 은 aws provider v6.x와 완전히 호환되지 않았고, 아래와 같이 최신 모듈로 업그레이드하자 문제가 해결되었습니다.

✅ 해결 방법: EKS 모듈 버전 업그레이드

module "eks" { source = "terraform-aws-modules/eks/aws" version = "21.0.0" # 또는 최신 버전으로 명시 ... }

terraform-aws-eks 공식 GitHub 저장소에서도 v21.0.0 이상을 사용할 것을 권장하고 있습니다.

이후 조치

  1. terraform init -upgrade 로 모듈 및 provider 재설치
  2. terraform plan 수행 시 에러가 모두 사라진 것을 확인
반응형

댓글