๋ฐ์ํ
dependency(์์กด์ฑ)
- ๋ฆฌ์์ค๋ ๋ชจ๋๋ก ์์ฑํ ์์ ๊ฐ์๋ ์์กด์ฑ ์์ ์ ์์ผ๋ฉฐ ํ ๋ผํผ์ ์ด๋ฅผ ํ์ธํ์ฌ ์์์ ์์ฑํ๊ฑฐ๋ ์ญ์ ํ ์์๋ฅผ ์ ํฉ๋๋ค.
- ์ข
์์ฑ์
implicit dependency(์์์ ์์กด์ฑ)
๊ณผexplicit dependency(๋ช ์์ ์์กด์ฑ)
์ด ์์ต๋๋ค.
implicit dependency(์์์ ์์กด์ฑ)
์์์ ์ข ์์ฑ์ ํ ๋ผํผ์ด ๋ฆฌ์์ค๊ฐ์ ๊ด๊ณ๋ฅผ ์ดํดํ๋ ์ผ๋ฐ์ ์ธ ๋ฐฉ๋ฒ์ ๋๋ค.
์๋ฅผ ๋ค์ด aws_eip.ip์์ aws_instance.example_a.id๋ฅผ ์ฐธ์กฐํ๋ ๊ฒ์ด ์์์ ์ข ์์ฑ์ ๋๋ค.
resource "aws_instance" "example_a" { ami = "ami-05fa00d4c63e32376" instance_type = "t2.micro" } resource "aws_eip" "ip" { vpc = true instance = aws_instance.example_a.id }
explicit dependency(๋ช ์์ ์์กด์ฑ)
๋ช ์์ ์์กด์ฑ์
depends_on
์ผ๋ก ๋ฆฌ์์ค ๊ฐ์ ์์กด์ฑ์ ๋ช ์ํ๋ ๊ฒฝ์ฐ๋ฅผ ๋งํฉ๋๋ค.์๋ฅผ ๋ค์ด EC2๊ฐ ํน์ S3 ๋ฒํท์ ์ฌ์ฉํ์ฌ S3๊ฐ EC2๋ณด๋ค ๋จผ์ ์์ฑ๋์ด์ผ ํ๋ค๋ฉด ์๋ ์ฝ๋์ ๊ฐ์ด depends_on์ ์ ์ฉํ ์ ์๋ค.
resource "aws_s3_bucket" "example" { } resource "aws_instance" "example_c" { ami = data.aws_ami.amazon_linux.id instance_type = "t2.micro" depends_on = [aws_s3_bucket.example] }
๋ฐ์ํ
'๐ IaC > Terraform' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
Terraform 101 Study - 1์ฃผ์ฐจ(1) ๋ด์ฉ์ ๋ฆฌ (0) | 2023.07.09 |
---|---|
[Terraform] Provider (0) | 2022.09.09 |
[Terraform] data source (0) | 2022.09.04 |
[Terraform] Output ์ถ๋ ฅ ๋ณ์ (0) | 2022.09.03 |
[Terraform] Variable ์ ๋ ฅ ๋ณ์ (0) | 2022.09.03 |