일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | |||
5 | 6 | 7 | 8 | 9 | 10 | 11 |
12 | 13 | 14 | 15 | 16 | 17 | 18 |
19 | 20 | 21 | 22 | 23 | 24 | 25 |
26 | 27 | 28 | 29 | 30 | 31 |
Tags
- pythonpptpdf
- t101
- azureresource
- pptpdf
- cidrhost로EC2의ENI에10개의ip를 장착
- data개념
- 테라폼함수
- mac user
- awsworkshop
- (user)없애기
- azureterraform
- 깃허브기초
- mac(user)
- aws
- terraform_data
- t103
- macterminal(user)
- Azure
- terraform
- pptpdf로변환
- 테라폼조건문
- githubbasic
- 테라폼상태
- pptxpdf
- 가시다스터디
- (user)terminal
- 테라폼스터디
- awsglue
- terraformazure
- 테라폼조건식
Archives
- Today
- Total
fullmoon's bright IT blog
[T101] Terraform study - Azure로 알아보는 간단한 테라폼 배포하기 (3) - Network 2편 본문
Cloud/Azure
[T101] Terraform study - Azure로 알아보는 간단한 테라폼 배포하기 (3) - Network 2편
휘영청 2022. 12. 12. 02:09728x90
[ 목 차 ]
- 퍼블릭 IP
- 네트워크 보안그룹
1. Public IP
https://learn.microsoft.com/ko-kr/azure/virtual-network/ip-services/public-ip-addresses
Public IP 주소는 네트워크인터페이스에 접속할 수 있는 별개의 자원입니다. 네트워크 인터페이스를 가상 머신에 연결합니다.
이 Public IP 주소는, 네트워크 인터페이스와 인터넷간의 통신을 가능하게 합니다!
https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/public_ip
resource "azurerm_public_ip" "appip" {
name = "app-ip"
resource_group_name = local.resource_group_name
location = local.location
allocation_method = "Static"
depends_on = [
azurerm_resource_group.appgrp
]
}
기존에 있는 것과 동일하게 퍼블릭 아이피만 만들어주면 됩니다 :)
optional 로 SKU를 넣을 수도 있습니다 .필요할 때 추가로 넣어주시면 됩니다.
기본적으로는 basic이며 Standard로 변경이 가능합니다.
추가적으로 기존 1편에서 ip_configuration시 Public IP 주소를 network interface에 함께 언급해줘야겠죠?
그래야 배포시 이 아이피로 VM을 만들 때 Public IP가 필요 하기때문입니다.
ip_configuration {
name = "internal"
subnet_id = azurerm_subnet.subnetA.id
private_ip_address_allocation = "Dynamic"
#Public IP 넣어주기
public_ip_address_id = azurerm_public_ip.appip.id
}
depends_on = [
azurerm_subnet.subnetA
]
}
2. 보안그룹
네트워크 보안 그룹의 정의 + 보안 규칙도 정의할 수 있습니다.
https://learn.microsoft.com/ko-kr/azure/virtual-network/network-security-groups-overview
resource "azurerm_public_ip" "appip" {
name = "app-ip"
resource_group_name = local.resource_group_name
location = local.location
allocation_method = "Static"
depends_on = [
azurerm_resource_group.appgrp
]
}
resource "azurerm_network_security_group" "appnsg" {
name = "app-nsg"
location = local.location
resource_group_name = local.resource_group_name
#보안규칙룰
security_rule {
name = "Allow"
priority = 100
direction = "Inbound"
access = "Allow"
protocol = "Tcp"
source_port_range = "*"
destination_port_range = "80"
source_address_prefix = "*"
destination_address_prefix = "*"
}
depends_on = [
azurerm_resource_group.appgrp
]
}
#네트워크 보안 그룹을 서브넷에 같이 붙이기 위한 별도의 리소스 블록
resource "azurerm_subnet_network_security_group_association" "appnsglink" {
subnet_id = azurerm_subnet.subnetA.id
network_security_group_id = azurerm_network_security_group.appnsg.id
}
생성된 보안그룹
728x90
'Cloud > Azure' 카테고리의 다른 글
[T101] Terraform study - Azure로 알아보는 간단한 테라폼 배포하기 (2) - Network 1편 (0) | 2022.12.12 |
---|---|
[T101] Terraform study - Azure로 알아보는 간단한 테라폼 배포하기 (1) - 기본 개념, 리소스그룹, 스토리지계정 만들기 (2) | 2022.11.13 |