본문 바로가기

Data/Data Engineering

[Terraform] terraform 이전버전 설치 (+맥북 M1 이슈해결 Tarball download failed)

반응형

M1 노트북에 terraform 특정버전을 설치해야하는데, 인터넷에 올려져있는 방법으로는 설치가 안되는 이슈가있어서 다음과 같이 해결했다.

 

인터넷에 올려져있는 방법을 간단하게 정리하자면

  1. brew로 설치하기 (이때 설치할수있는 버전은 0.11, 0.12, 0.13버전 또는 최신버전만 다운로드 가능)
  2. tfenv를 설치하고, 버전 스위칭하기

M1 맥북에서는 위와같은 방법으로는 다른버전은 설치가 안되는걸 확인했지만(Tarball download failed 에러), M1 맥북이 아닌경우에는 설치가 되는지는 확인을 못했다.

일단 업무상 특정 버전(v0.15.4)을 설치해야하는 필요가있어서, 아래와같이 설치를 진행했다.

 

  • 먼저 Go설치가 필요하다

https://go.dev/doc/install

 

Download and install - The Go Programming Language

Download and install Download and install Go quickly with the steps described here. For other content on installing, you might be interested in: 1. Go download. Click the button below to download the Go installer. Download Go Don't see your operating syste

go.dev

  • 그다음 terraform github을 clone을 해온다
git clone https://github.com/hashicorp/terraform.git
  • 해당 git 레포로 들어가서, branch를 내가 원하는 버전(+tag)으로 맞춰준다
cd terraform
git checkout tags/v0.15.4
  • Go로 설치를 진행 및 환경변수 설정
go install .

# go가 실행되는 path얻어오기
go env GOPATH
 
# go의 bin폴더를 환경변수에 추가
# 위의 출력경로가 YOUR_GO_PATH임
export PATH=$PATH:YOUR_GO_PATH/bin

이렇게 하면 아래와같이 terraform version 명령어 실행시 출력이 된다

아래 샘플코드로 terraform init명령어 실행했을때 정상적으로 출력된다

terraform {
  required_providers {
    aws = {
      source  = "hashicorp/aws"
      version = "~> 3.27"
    }
  }

  required_version = ">= 0.14.9"
}

provider "aws" {
  profile = "default"
  region  = "us-west-2"
}

resource "aws_instance" "app_server" {
  ami           = "ami-830c94e3"
  instance_type = "t2.micro"

  tags = {
    Name = "ExampleAppServerInstance"
  }
}

출력결과

반응형