87 lines
2.1 KiB
Markdown
87 lines
2.1 KiB
Markdown
# Azure Networking Module
|
|
|
|
**Purpose**: Create Azure Virtual Network with subnets and network security groups
|
|
**Status**: ✅ Complete
|
|
|
|
---
|
|
|
|
## Usage
|
|
|
|
```hcl
|
|
module "networking" {
|
|
source = "../../modules/azure/networking"
|
|
|
|
resource_group_name = "rg-example"
|
|
location = "eastus"
|
|
vnet_name = "vnet-example"
|
|
address_space = ["10.0.0.0/16"]
|
|
|
|
subnets = {
|
|
frontend = {
|
|
name = "snet-frontend"
|
|
address_prefixes = ["10.0.1.0/24"]
|
|
service_endpoints = ["Microsoft.Storage"]
|
|
}
|
|
backend = {
|
|
name = "snet-backend"
|
|
address_prefixes = ["10.0.2.0/24"]
|
|
service_endpoints = []
|
|
}
|
|
}
|
|
|
|
network_security_groups = {
|
|
frontend_nsg = {
|
|
name = "nsg-frontend"
|
|
subnet_key = "frontend"
|
|
security_rules = [
|
|
{
|
|
name = "AllowHTTP"
|
|
priority = 100
|
|
direction = "Inbound"
|
|
access = "Allow"
|
|
protocol = "Tcp"
|
|
source_port_range = "*"
|
|
destination_port_range = "80"
|
|
source_address_prefix = "*"
|
|
destination_address_prefix = "*"
|
|
}
|
|
]
|
|
}
|
|
}
|
|
|
|
tags = {
|
|
Environment = "production"
|
|
}
|
|
}
|
|
```
|
|
|
|
---
|
|
|
|
## Inputs
|
|
|
|
| Name | Description | Type | Default | Required |
|
|
|------|-------------|------|---------|----------|
|
|
| resource_group_name | Name of the resource group | string | - | yes |
|
|
| location | Azure region | string | - | yes |
|
|
| vnet_name | Name of the virtual network | string | - | yes |
|
|
| address_space | Address space for the virtual network | list(string) | - | yes |
|
|
| subnets | Map of subnets to create | map(object) | {} | no |
|
|
| network_security_groups | Map of network security groups | map(object) | {} | no |
|
|
| tags | Tags to apply | map(string) | {} | no |
|
|
|
|
---
|
|
|
|
## Outputs
|
|
|
|
| Name | Description |
|
|
|------|-------------|
|
|
| vnet_id | Virtual network ID |
|
|
| vnet_name | Virtual network name |
|
|
| subnet_ids | Map of subnet names to IDs |
|
|
| subnet_names | Map of subnet names |
|
|
| nsg_ids | Map of NSG names to IDs |
|
|
|
|
---
|
|
|
|
**Status**: ✅ Complete - Ready for use
|