컬쥐네 다락방
Terraform | 출력값, 로컬값 , 사용자 데이터 본문
출력 값
terraform output 명령어를 입력하거나, 테라폼의 Apply가 끝나면 output.tf에 있는 값들이 화면에 출력된다.
## 테라폼 적용이 종료되고 유동 IP와 퍼블릭 IP가 출력되는 output.tf
output "app_server_elastic_ip" {
value = aws_eip.app_server_eip.*.public_ip
}
output "app_server_public_ip" {
value = aws_instance.app_server.*.public_ip
}
terraform output
로컬 값
로컬 변수를 입력해놓고 어디서든 변수를 사용할 수 있다.
locals {
common_tags = {
Name = "My Terraform"
project_name = var.project_name
project_env = var.project_environment
}
}
resource "aws_instance" "example" {
# ...
tags = local.service_name
}
사용자 데이터
코드를 입력하고 싶을 때 그 내용이 길어지면 main.tf 파일의 가독성이 떨어지고 관리가 힘들어진다.
이럴땐 따로 파일을 만들어서 관리하고 파일을 읽는 형태로 테라폼 코드를 짜놓으면 편리하다.
- 기존 코드 형식
resource "aws_instance" "app_web" {
...
user_data = <<-EOF
#!/bin/sh
echo "hello wolrd"
EOF
...
}
- 코드 파일을 작성
https://www.terraform.io/language/functions/file
userdata.sh
#!/bin/sh
yum install -y httpd
...
- 코드 파일을 읽도록 설정
resource "aws_instance" "app_web" {
...
user_data = file("userdata.sh")
...
}
'클라우드 > Terraform' 카테고리의 다른 글
Terraform | 프로비저너(Provisioner) (0) | 2022.04.26 |
---|---|
Terraform | 테라폼 기초 지식 (구성 파일, 변수) (0) | 2022.04.21 |
Comments