Skip to content

Terrazure/terraform-azure-eventhub

Repository files navigation

Terraform Unit Tests Terraform Plan/Apply

Requirements

No requirements.

Providers

Name Version
azurerm n/a

Sample

Click to expand
module "primary_namespace" {
  source = "../"

  location            = local.primary_location
  resource_group_name = azurerm_resource_group.group.name
  workload_name       = "primary-ns"
  sku                 = "Standard"
  capacity            = 15

  authorized_ips_or_cidr_blocks = ["103.59.73.254"]
  //authorized_vnet_subnet_ids    = [azurerm_subnet.snet.id]

  hubs = [
    {
      partitions        = 5
      message_retention = 2
    },
    {
      partitions        = 8
      message_retention = 1
    },
  ]

  private_endpoint = [azurerm_subnet.snet.id, ]

}

module "secondary_namespace" {
  source = "../"

  location            = local.secondary_location
  resource_group_name = azurerm_resource_group.group.name
  workload_name       = "secondary-ns"
  sku                 = "Standard"
  capacity            = 15

  authorized_ips_or_cidr_blocks = ["103.59.73.254"]
  authorized_vnet_subnet_ids    = [azurerm_subnet.snet.id]
}

Inputs

Name Description Type Default Required
authorized_ips_or_cidr_blocks One or more IP Addresses, or CIDR Blocks which should be able to access the Eventhub Namespace. list(string) [] no
authorized_vnet_subnet_ids IDs of the virtual network subnets authorized to connect to the Eventhub Namespace. list(string) [] no
capacity Specifies the Capacity / Throughput Units. Maximum value could be 20. number n/a yes
disaster_recovery_config Specifies disaster recovery configuration. This block requires the following inputs:
- dr_enabled: If Geo-Recovery needs to be enabled?
- partner_namespace_id The ID of the EventHub Namespace to replicate to.
object({
dr_enabled = bool
partner_namespace_id = string
})
{
"dr_enabled": false,
"partner_namespace_id": ""
}
no
hubs A list of event hubs to add to the namespace.
list(object({
partitions = number
message_retention = number
}))
[] no
location Specifies the supported Azure location where the resource exists. string n/a yes
maximum_throughput_units Specifies the maximum number of throughput units when Auto Inflate is Enabled. Valid values range from 1 - 20. This option will enable 'Auto Inflate' capability of Eventhub namespace' number null no
private_endpoint Specifies the private endpoint details for EventHub Namespace. List of subnet IDs to use for the private endpoint of the EventHub Namespace. list(string) [] no
resource_group_name The resource group where to deploy the EventHub Namespace. string n/a yes
sku Defines which tier to use. Valid options are Basic or Standard. string n/a yes
tags Tags for the Azure EventHub Namespace. map(string) {} no
workload_name Specifies the workload name that will use this resource. This will be used in the resource name. string n/a yes
zone_redundant Is zone_redundancy enabled for the EventHub Namespace? bool false no

Outputs

Name Description
default_primary_connection_string The primary connection string for the authorization rule
default_primary_key The primary access key for the authorization rule
id The EventHub Namespace ID.
identity The EventHub Namespace SystemAssigned managed identity principal id.
name The EventHub Namespace name.

Resources

Name Type
azurerm_eventhub.this resource
azurerm_eventhub_namespace.ehn resource
azurerm_eventhub_namespace_disaster_recovery_config.this resource

Modules

Name Source Version
naming Azure/naming/azurerm n/a