준비물
- AWS 계정 및 EC2 Fullaccess 권한을 가진 IAM User의 키
- Terraform이 설치된 호스트
- Powershell이나 VSCode와 같은 Terraform 실행 환경
Terraform Output이란?
•
Terraform은 입력 변수 이외에 출력 변수도 설정해서 원하는 값을 출력할 수 있다.
•
variable로 입력 변수를 컨트롤하고, output으로 출력 변수를 컨트롤 한다고 생각하면 이해에 도움이 될 것 같다.
왜 써야할까 ?
•
Output을 활용하지 않는다면 사용자는 AWS EC2, ALB와 같은 리소스를 Terraform으로 생성한 후에 IP, Endpoint 등을 확인하기 위해서 다시 AWS Console에 접속해야 할 것이다.
•
반면 Output을 사용한다면 terraform apply 적용 후에 내가 지정한 값들이 출력되고, tfstate 파일에도 output 값이 저장되기 때문에 원하는 정보를 VSC 같은 개발환경에서 바로 확인할 수 있다.
•
반대로 내가 필요한 값이 어떤것인지에 대한 충분한 이해가 필요하기 때문에 콘솔보다 비교적 높은 Provider의 숙련도를 요구한다.
Terraform Ouput 사용해보기
•
Terraform Output의 형식은 기본적으로 다음과 같다.
ouput "NAME" {
value = VALUE
}
Python
복사
적용해보기
결과화면
마무리
•
프리티어 리소스지만 혹시모를 과금을 막기 위해 terraform destroy 명령으로 리소스 삭제하기
•
Output을 적절하게 활용한다면 GUI Console 접속 없이도 여러 프로바이더의 리소스들을 효율적으로 관리할 수 있을것이다.