Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/questopshub/terraform-azurerm-virtual-network
Terraform module to create a Virtual Network and Subnets.
https://github.com/questopshub/terraform-azurerm-virtual-network
azure azure-infrastructure iac infrastructure-as-code terraform terraform-module
Last synced: 9 days ago
JSON representation
Terraform module to create a Virtual Network and Subnets.
- Host: GitHub
- URL: https://github.com/questopshub/terraform-azurerm-virtual-network
- Owner: QuestOpsHub
- License: mit
- Created: 2025-01-24T21:53:13.000Z (10 days ago)
- Default Branch: main
- Last Pushed: 2025-01-24T22:10:38.000Z (10 days ago)
- Last Synced: 2025-01-24T22:28:19.462Z (10 days ago)
- Topics: azure, azure-infrastructure, iac, infrastructure-as-code, terraform, terraform-module
- Language: HCL
- Homepage:
- Size: 0 Bytes
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: Readme.md
- License: LICENSE
Awesome Lists containing this project
README
# Azure Virtual Network Terraform Module
Terraform module to create a Virtual Network and Subnets.
# Table of Contents
- [Azure Resource Naming Convention](#azure-resource-naming-convention)
- [Format](#Format)
- [Components](#Components)
- [Requirements](#requirements)
- [Providers](#providers)
- [Modules](#modules)
- [Resources](#resources)
- [Inputs](#inputs)
- [Outputs](#outputs)## Azure Resource Naming Convention
Resource names should clearly indicate their type, workload, environment, and region. Using a consistent naming convention ensures clarity, uniformity, and easy identification across all repositories.
#### Format
```
----
```#### Components
| **Component** | **Description** | **Example** |
|--------------------------|--------------------------------------------------------------------------------------|-------------------------|
| `resource_prefix` | Short abbreviation for the resource type. | `rg` (Resource Group) |
| `app_or_project` | Identifier for the application or project. | `qoh` |
| `environment` | Environment where the resource is deployed (`prod`, `dev`, `test`, etc.). | `prod` |
| `region` | Azure region where the resource resides (e.g., `cus` for `centralus`). | `cus` |
| `optional_unique_suffix` | Optional unique string for ensuring name uniqueness, often random or incremental. | `abcd`, `a42n` |**Note**:
- If the dns_servers argument was previously configured in the Azure Firewall, ensure that the dns_servers argument is unset when configuring the Virtual Network.## Requirements
| Name | Version |
|------|---------|
| [terraform](#requirement\_terraform) | >=0.13 |
| [azurerm](#requirement\_azurerm) | >=4.0.0 |## Providers
| Name | Version |
|------|---------|
| [azurerm](#provider\_azurerm) | >=4.0.0 |## Modules
No modules.
## Resources
| Name | Type |
|------|------|
| [azurerm_subnet.subnet](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/subnet) | resource |
| [azurerm_virtual_network.virtual_network](https://registry.terraform.io/providers/hashicorp/azurerm/latest/docs/resources/virtual_network) | resource |## Inputs
| Name | Description | Type | Default | Required |
|------|-------------|------|---------|:--------:|
| [address\_space](#input\_address\_space) | (Required) The address space that is used the virtual network. You can supply more than one address space. | `list(string)` | n/a | yes |
| [bgp\_community](#input\_bgp\_community) | (Optional) The BGP community attribute in format :. | `string` | `null` | no |
| [ddos\_protection\_plan](#input\_ddos\_protection\_plan) | (Optional) A ddos\_protection\_plan block | `any` | `{}` | no |
| [dns\_servers](#input\_dns\_servers) | (Optional) List of IP addresses of DNS servers | `list(string)` | `[]` | no |
| [edge\_zone](#input\_edge\_zone) | (Optional) Specifies the Edge Zone within the Azure Region where this Virtual Network should exist. Changing this forces a new Virtual Network to be created. | `string` | `null` | no |
| [encryption](#input\_encryption) | (Optional) A encryption block | `any` | `{}` | no |
| [flow\_timeout\_in\_minutes](#input\_flow\_timeout\_in\_minutes) | (Optional) The flow timeout in minutes for the Virtual Network, which is used to enable connection tracking for intra-VM flows. Possible values are between 4 and 30 minutes. | `number` | `null` | no |
| [location](#input\_location) | (Required) The location/region where the virtual network is created. Changing this forces a new resource to be created. | `string` | n/a | yes |
| [name](#input\_name) | (Required) The name of the virtual network. Changing this forces a new resource to be created. | `string` | n/a | yes |
| [resource\_group\_name](#input\_resource\_group\_name) | (Required) The name of the resource group in which to create the virtual network. Changing this forces a new resource to be created. | `string` | n/a | yes |
| [subnet](#input\_subnet) | (Optional) Can be specified multiple times to define multiple subnets. Each subnet block supports fields documented below. | `any` | `{}` | no |
| [subnets](#input\_subnets) | One or more subnet blocks | `map` | `{}` | no |
| [tags](#input\_tags) | (Optional) A mapping of tags to assign to the resource. | `map(any)` | `{}` | no |## Outputs
| Name | Description |
|------|-------------|
| [address\_space](#output\_address\_space) | (Required) The list of address spaces used by the virtual network. |
| [guid](#output\_guid) | The GUID of the virtual network. |
| [id](#output\_id) | The virtual NetworkConfiguration ID. |
| [location](#output\_location) | (Required) The location/region where the virtual network is created. Changing this forces a new resource to be created. |
| [name](#output\_name) | (Required) The name of the virtual network. Changing this forces a new resource to be created. |
| [resource\_group\_name](#output\_resource\_group\_name) | (Required) The name of the resource group in which to create the virtual network. |
| [subnet](#output\_subnet) | One or more subnet blocks |
| [subnets](#output\_subnets) | One or more subnet blocks |