security_groups = [aws_security_group.ec2_sg.id] 표현에서 security_groups는 하나 이상의 보안 그룹을 적용하기 위해 리스트(배열) 형식으로 값을 입력. 이 리스트 안에 여러 보안 그룹의 ID를 넣을 수 있고, 각 보안 그룹은 AWS에서 정의된 aws_security_group 리소스를 참조하게 됨
- security_groups = [aws_security_group.ec2_sg.id]에서 security_groups는 여러 개의 보안 그룹을 적용할 수 있도록 리스트로 값을 받는다. aws_security_group.ec2_sg.id는 하나의 보안 그룹을 참조하는 것으로, 여기서 해당 보안 그룹의 ID를 가져온다.
- 리스트에 여러 개의 보안 그룹 추가: 보안 그룹을 여러 개 사용할 경우, 이를 배열로 지정할 수 있다. 예를 들어, 두 개 이상의 보안 그룹을 지정하려면 다음과 같이 작성
resource "aws_security_group" "ec2_sg1" {
name = "ec2_security_group_1"
description = "First security group for EC2"
...
}
resource "aws_security_group" "ec2_sg2" {
name = "ec2_security_group_2"
description = "Second security group for EC2"
...
}
security_groups = [
aws_security_group.ec2_sg1.id,
aws_security_group.ec2_sg2.id
]
보안 그룹 ID: 생성된 보안 그룹은 AWS에서 각각 고유한 ID를 가진다. 이 ID는 Terraform이 AWS와 통신할 때 사용하는 값이다. 동일한 보안 그룹을 여러 개의 리소스에 적용하거나 다른 리소스에 참조할 때 이 ID 값을 사용
요약
- security_groups = []는 리스트 형식으로 여러 개의 보안 그룹을 지정
- aws_security_group.ec2_sg.id는 특정 보안 그룹의 ID를 참조하는 표현
- 같은 이름으로 여러 보안 그룹을 만들 수 없다. 하지만 다른 리소스 이름으로 여러 개의 보안 그룹을 만들 수 있으며, 각각의 보안 그룹 ID는 AWS에서 고유한 값
따라서 하나 이상의 보안 그룹을 사용하고 싶으면 security_groups에 여러 보안 그룹을 배열로 넣고, 각 보안 그룹은 고유한 리소스 이름을 가져야 한다.
'AWS' 카테고리의 다른 글
AWS IAM(Identity and Access Management) 사용법 (1) | 2024.10.23 |
---|---|
AWS Lambda IaC 적용 방법 (1) | 2024.10.23 |
AWS Aurora Serverless DB 생성, Lambda로 이벤트 전송 IaC (0) | 2024.10.23 |
AWS EC2, Lambda, EFS 생성 및 EFS 접근 IaC (0) | 2024.10.23 |
AWS DirectConnect와 Transit G/W 연결해서 내부 통신 IaC (0) | 2024.10.22 |