Terraform 을 설치 하는 방법에 대해 오늘도 끄적 거린다..........(제발 기억좀 하자!!)
설치는 Mac, Window, linux 모두 가능하지만 필자는 Linux에서 설치하여 사용하였다.
설치 환경
- OS : Centos 7.6 (x86_64)
설치 방법은 크게 2 가지이다.
특정 버전을 다운로드하여 사용하는 방법과 tfenv라는 환경으로 설치 하는 방법이 있다.
- 특정 버전으로 설치
특정 버전으로 설치 하는 방법은 아주 간단하다.
www.terraform.io/downloads.html 에 가서 설치하고자 하는 OS버전 및 terraform버전을 다운로드 한다.
특정 PC에서 다운로드 해도 되고 linux나 Mac os의 경우 wget으로 다운로드가 가능하다.
최신 버전이 아닌 다른 버전으로 설치를 하고자 할 경우 https://releases.hashicorp.com/terraform/ 로 가서 사용하고자 하는 버전으로 다운로드 하면 된다.
필자는 최신버전으로 하였다. (2021.03.17 기준)
# wget https://releases.hashicorp.com/terraform/0.14.8/terraform_0.14.8_linux_amd64.zip
--2021-03-17 23:59:46-- https://releases.hashicorp.com/terraform/0.14.8/terraform_0.14.8_linux_amd64.zip
Resolving releases.hashicorp.com (releases.hashicorp.com)... 151.101.1.183, 151.101.65.183, 151.101.129.183, ...
Connecting to releases.hashicorp.com (releases.hashicorp.com)|151.101.1.183|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 33785240 (32M) [application/zip]
Saving to: ‘terraform_0.14.8_linux_amd64.zip’
100%[=====================================================================================================================================================================================>] 33,785,240 8.28MB/s in 4.1s
2021-03-17 23:59:51 (7.93 MB/s) - ‘terraform_0.14.8_linux_amd64.zip’ saved [33785240/33785240]
# ls -al
합계 32996
drwxr-xr-x 2 root root 46 3월 17 23:59 .
dr-xr-xr-x. 19 root root 272 3월 17 23:59 ..
-rw-r--r-- 1 root root 33785240 3월 11 02:32 terraform_0.14.8_linux_amd64.zip
Terraform설치 파일을 zip으로 묶여 있기에 압축을 해제 할 수 있는 unzip패키지가 설치 되어야 한다.
# yum install -y unzip
다운로드 된 terraform 설치 파일을 아래와 같이 압축을 해제하고 설치 한다.
[root@localtest:/terraform ] # unzip terraform_0.14.8_linux_amd64.zip
Archive: terraform_0.14.8_linux_amd64.zip
inflating: terraform
[root@localtest:/terraform ] # ls -al
합계 113800
drwxr-xr-x 2 root root 63 3월 18 00:00 .
dr-xr-xr-x. 19 root root 272 3월 17 23:59 ..
-rwxr-xr-x 1 root root 82741780 3월 11 02:09 terraform
-rw-r--r-- 1 root root 33785240 3월 11 02:32 terraform_0.14.8_linux_amd64.zip
압축을 해제하고나면 바이너리 파일 하나만 보이게 된다.
다른 설치 패키지 처럼 별도의 make 등은 하지 않아도 된다.
압축이 해제된 바이너리 파일을 /usr/local/bin 또는 /usr/bin 하위로 복사 한다.
꼭 복사를 할 필요는 없고 필요에 따라서만 복사하면 된다.
복사할 경우
# cp terraform /usr/bin/
설치 된 terraform version을 확인한다
# ./terraform -version
Terraform v0.14.8
- tfenv로 설치
: tfenv는 pyenv 또는 venv 같이 terraform을 가상 환경으로 구성하는 방법이다. 여러 버전으로 설치하고 관리할때 유용하다.
이 또한 설치는 어렵지 않다.
tfenv github 사이트 (자세한 설치 방법 및 linux 외 설치 방법을 참고 한다.)
https://github.com/tfutils/tfenv
### git로 clone한다. ~/.tfenv 가 생성되고 해당 경로에 tfenv를 설치 한다.
# git clone https://github.com/tfutils/tfenv.git ~/.tfenv
Cloning into '/root/.tfenv'...
remote: Enumerating objects: 87, done.
remote: Counting objects: 100% (87/87), done.
remote: Compressing objects: 100% (59/59), done.
remote: Total 1240 (delta 41), reused 34 (delta 18), pack-reused 1153
Receiving objects: 100% (1240/1240), 257.94 KiB | 0 bytes/s, done.
Resolving deltas: 100% (780/780), done.
### 환경변수를 등록 한다.
# echo 'export PATH="$HOME/.tfenv/bin:$PATH"' >> ~/.bash_profile
### 등록한 환경 변수를 읽어 들인다.
# source ~/.bash_profile
위와 같이 사용자 HOME의 profile등에 설정해서 사용하는 방법이 있고 그렇지 않을 경우 아래와 같이 /usr/bin 또는 /usr/local/bin 하위에 복사 또는 링크를 설정하여 사용한다.
tfenv github에서는 링크로 설정하여 사용하도록 가이드 하고 있다.
# ln -s ~/.tfenv/bin/* /usr/local/bin/
필자는 링크를 설정하지 않고 .bash_profile에 등록하여 사용하였다.
tfenv사용 법은 아래와 같다.
설치 가능한 version확인 - 설치가 가능한 버전을 보여준다.
usage) tfenv list-remote
# tfenv list-remote
0.15.0-beta1
0.15.0-alpha20210210
0.15.0-alpha20210127
0.15.0-alpha20210107
0.14.8
0.14.7
0.14.6
0.14.5
0.14.4
0.14.3
0.14.2
0.14.1
0.14.0
0.14.0-rc1
0.14.0-beta2
0.14.0-beta1
0.14.0-alpha20201007
0.14.0-alpha20200923
0.14.0-alpha20200910
0.13.6
0.13.5
0.13.4
0.13.3
0.13.2
0.13.1
0.13.0
0.13.0-rc1
0.13.0-beta3
0.13.0-beta2
0.13.0-beta1
0.12.30
0.12.29
0.12.28
0.12.27
0.12.26
0.12.25
0.12.24
0.12.23
0.12.22
0.12.21
0.12.20
0.12.19
0.12.18
0.12.17
0.12.16
~ (생략)
terraform 설치
usage) tfenv install [version]
# tfenv install 0.14.2
Installing Terraform v0.14.2
Downloading release tarball from https://releases.hashicorp.com/terraform/0.14.2/terraform_0.14.2_linux_amd64.zip
######################################################################## 100.0%
Downloading SHA hash file from https://releases.hashicorp.com/terraform/0.14.2/terraform_0.14.2_SHA256SUMS
No keybase install found, skipping OpenPGP signature verification
terraform_0.14.2_linux_amd64.zip: 성공
Archive: tfenv_download.8nTUQ6/terraform_0.14.2_linux_amd64.zip
inflating: /root/.tfenv/versions/0.14.2/terraform
Installation of terraform v0.14.2 successful. To make this your default version, run 'tfenv use 0.14.2'
tfenv로 설치 할때도 unzip Pkg가 없을 경우 Install중 에러가 발생할 수 있다.
최신 버전으로 바로 설치 하고자 할 경우 버전 대신 latest를 입력하면 된다.
# tfenv install latest
Installing Terraform v0.14.8
Downloading release tarball from https://releases.hashicorp.com/terraform/0.14.8/terraform_0.14.8_linux_amd64.zip
######################################################################## 100.0%
Downloading SHA hash file from https://releases.hashicorp.com/terraform/0.14.8/terraform_0.14.8_SHA256SUMS
No keybase install found, skipping OpenPGP signature verification
terraform_0.14.8_linux_amd64.zip: 성공
Archive: tfenv_download.Smph93/terraform_0.14.8_linux_amd64.zip
inflating: /root/.tfenv/versions/0.14.8/terraform
Installation of terraform v0.14.8 successful. To make this your default version, run 'tfenv use 0.14.8'
설치가 되었으면 설치된 버전을 확인한다.
local에 설치된 버전 확인
usage) tfenv list
# tfenv list
0.14.8
0.14.7
0.14.2
No default set. Set with 'tfenv use <version>'
사용하고자 하는 버전으로 설정
usage) tfenv use [version]
# tfenv use 0.14.8
Switching default version to v0.14.8
Switching completed
##### 설정된 버전 확인
# tfenv list
* 0.14.8 (set by /root/.tfenv/version) ### 맨 앞에 '*'표시 된것이 사용중인 버전
0.14.7
0.14.2
버전 삭제
# tfenv uninstall 0.14.8
Uninstall Terraform v0.14.8
Terraform v0.14.8 is successfully uninstalled
[root@localtest:/terraform ] # tfenv list
0.14.7
0.14.2
No default set. Set with 'tfenv use <version>'
만약 위와 같이 삭제 하고 다시 설치하는데 설치가 정상적이지 않다면 tfenv가 설치된 ~/.tfenv/versions/ 하위에 해당 버전의 디렉토리를 삭제 하면 정상적으로 다시 설치가 된다.
*** tfenv말고 tfswitch라는 것도 있다. 사용 목적은 동일하고 다만 사용법이 조금 사이할 뿐 ..... 편한 tool을 사용하면 된다.
2021.04.01 - [IT/Terraform] - [Terraform] install Tool - tfswitch
'IT > Terraform' 카테고리의 다른 글
[Terraform] Terraform tf파일내에서 줄바꿈 방법 (0) | 2022.05.17 |
---|---|
[Terraform] install Tool - tfswitch (0) | 2021.04.01 |
[Terraform] command (0) | 2021.03.31 |