IaC 도구는 지금까지 CloudFormation만 좀 써보고 테라폼이나 앤서블같은 오픈소스 도구는 그렇게 많이 사용해보지 못했는데, 이직하는 곳에서 인프라를 테라폼으로 운영중이어서 입사 전에 연습 해보려고 한다.
1. 테라폼(Terraform)이란?
테라폼은 하시코프(HashiCorp)사에서 코드형 인프라(Infrastructure as Code: IaC) 도구 중 하나로 HCL이라는 자체 언어(json과 유사)를 활용하여 클라우드 및 데이터센터 리소스 프로비저닝을 자동화 및 관리할 수 있는 도구이다. 원래 MPL V2.0 라이선스에서 BSL v1.1로 라이선스를 전환해 Opentofu같은 신규 프로젝트도 생기고 논란이 많았던 것으로 기억하는데, BSL 라이선스가 해당 플랫폼을 활용해 제 3자에 호스팅 혹은 플랫폼 형태로 판매하는 것을 금지하는 라이선스라 일반 사용자들에게는 크게 영향이 없었던 듯 하고 현재도 널리 쓰이는 도구 중 하나이다.
2. 테라폼(Terraform) 설치 방법
테라폼 설치 방법은 공식 웹사이트(https://developer.hashicorp.com/terraform/install?product_intent=terraform)에 잘 나와있지만, MacOS에 설치하기 위해서는 brew라는 패키지 매니저를 사용하면 된다(Homebrew가 아직 설치되어있지 않다면 이 링크를 참조해서 설치하도록 한다).
Homebrew의 자체 리포지토리에는 Terraform이 없기 때문에 brew tap 명령어를 활용해 하시코프의 리포지토리를 추가해주어야한다 (참고로 tap 명령어 뒤에 붙는 값의 규칙은 <user>/<repo>이다. 자세한 내용은 링크 참조).
brew tap hashicorp/tap
그 다음 brew install 명령어를 통해 테라폼을 설치해주면 된다.
brew install hashicorp/tap/terraform
terraform version 명령어를 실행했을 때 아래와 같이 테라폼 버전이 출력되면 잘 설치된 것이다.
$ terraform version
Terraform v1.10.1
on darwin_amd64
'DevOps' 카테고리의 다른 글
[IntelliJ].idea폴더란? (1) | 2024.12.09 |
---|---|
[VSCode]터미널에서 VSCode 바로 열기(code 명령어) (0) | 2024.12.08 |
[Kubernetes]쿠버네티스 Pod to Local 파일 복사하는 방법 (0) | 2024.12.06 |
[MacOS]패키지 관리 툴 Homebrew 다운로드하기 (1) | 2024.12.05 |
[Git/Github] 변경사항 없이 커밋 다시 푸시하기(git commit --amend --no-edit) (2) | 2024.12.02 |